From d4c6841b8fe2bdb36beaf51181cf1cfeb66b1548 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Sat, 11 Mar 2017 14:43:17 -0800 Subject: [PATCH 001/625] Package symbols with microsoft.netcore.app --- .../Utils/Crossgen.cs | 7 ++-- .../Utils/SharedFrameworkPublisher.cs | 41 ++++++++++++++++++- pkg/BuildToolsVersion.txt | 2 +- pkg/dir.props | 8 +++- pkg/pack.cmd | 2 +- pkg/packageIndex.json | 2 + .../Microsoft.NETCore.App.pkgproj | 18 ++++++++ .../project.json.template | 2 +- pkg/tasks/core-setup.tasks.csproj | 2 +- 9 files changed, 74 insertions(+), 10 deletions(-) create mode 100644 pkg/packageIndex.json diff --git a/build_projects/shared-build-targets-utils/Utils/Crossgen.cs b/build_projects/shared-build-targets-utils/Utils/Crossgen.cs index 013f3cd0..a63d37fa 100644 --- a/build_projects/shared-build-targets-utils/Utils/Crossgen.cs +++ b/build_projects/shared-build-targets-utils/Utils/Crossgen.cs @@ -14,6 +14,7 @@ namespace Microsoft.DotNet.Cli.Build private string _jitVersion; private string _crossGenPath; private string _targetRID; + private static readonly string s_transportPackagePrefix = "transport"; private static readonly string[] s_excludedLibraries = { "mscorlib.dll", @@ -104,7 +105,7 @@ namespace Microsoft.DotNet.Cli.Build return null; } - string packageId = $"runtime.{jitRid}.Microsoft.NETCore.Jit"; + string packageId = $"{s_transportPackagePrefix}.runtime.{jitRid}.Microsoft.NETCore.Jit"; return Path.Combine( Dirs.PkgNuGetPackages, @@ -121,7 +122,7 @@ namespace Microsoft.DotNet.Cli.Build return null; } - string packageId = $"runtime.{coreclrRid}.Microsoft.NETCore.Runtime.CoreCLR"; + string packageId = $"{s_transportPackagePrefix}.runtime.{coreclrRid}.Microsoft.NETCore.Runtime.CoreCLR"; return Path.Combine( Dirs.PkgNuGetPackages, @@ -142,7 +143,7 @@ namespace Microsoft.DotNet.Cli.Build return null; } - string packageId = $"runtime.{coreclrRid}.Microsoft.NETCore.Runtime.CoreCLR"; + string packageId = $"{s_transportPackagePrefix}.runtime.{coreclrRid}.Microsoft.NETCore.Runtime.CoreCLR"; return Path.Combine( Dirs.PkgNuGetPackages, diff --git a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs b/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs index 4152b7d3..8c303a36 100644 --- a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs +++ b/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Linq; @@ -76,13 +76,26 @@ namespace Microsoft.DotNet.Cli.Build s_sharedFrameworkName, sharedFrameworkNugetVersion); } + public static string GetNetCoreAppRuntimeLibSymbolsPath(string symbolsRoot, string sharedFrameworkRid, string sharedFrameworkTarget) + { + return Path.Combine(symbolsRoot, s_sharedFrameworkName, "runtimes", sharedFrameworkRid, "lib", sharedFrameworkTarget); + } + + public static string GetNetCoreAppRuntimeNativeSymbolsPath(string symbolsRoot, string sharedFrameworkRid) + { + return Path.Combine(symbolsRoot, s_sharedFrameworkName, "runtimes", sharedFrameworkRid, "native"); + } + + public static string GetNetCoreAppToolsSymbolsPath(string symbolsRoot) + { + return Path.Combine(symbolsRoot, s_sharedFrameworkName, "tools"); + } public void CopyMuxer(string sharedFrameworkPublishRoot) { File.Copy( Path.Combine(_corehostLockedDirectory, HostArtifactNames.DotnetHostBaseName), Path.Combine(sharedFrameworkPublishRoot, HostArtifactNames.DotnetHostBaseName), true); - } public void CopyHostFxrToVersionedDirectory(string rootDirectory, string hostFxrVersion) @@ -146,6 +159,29 @@ namespace Microsoft.DotNet.Cli.Build var content = $@"{commitHash}{Environment.NewLine}{version}{Environment.NewLine}"; File.WriteAllText(Path.Combine(sharedFrameworkNameAndVersionRoot, ".version"), content); + // Copy symbols to publish folder + List pdbFiles = new List(); + string symbolsRoot = Path.Combine(_repoRoot, "pkg", "bin", "symbols"); + string libPdbPath = GetNetCoreAppRuntimeLibSymbolsPath(symbolsRoot, _sharedFrameworkRid, _sharedFrameworkTarget); + string nativePdbPath = GetNetCoreAppRuntimeNativeSymbolsPath(symbolsRoot, _sharedFrameworkRid); + string toolsPdbPath = GetNetCoreAppToolsSymbolsPath(symbolsRoot); + if (Directory.Exists(libPdbPath)) + { + pdbFiles.AddRange(Directory.GetFiles(libPdbPath)); + } + if(Directory.Exists(nativePdbPath)) + { + pdbFiles.AddRange(Directory.GetFiles(nativePdbPath, "*")); + } + if (Directory.Exists(toolsPdbPath)) + { + pdbFiles.AddRange(Directory.GetFiles(toolsPdbPath, "*")); + } + foreach (string pdbFile in pdbFiles) + { + File.Copy(pdbFile, Path.Combine(sharedFrameworkNameAndVersionRoot, Path.GetFileName(pdbFile))); + } + return; } @@ -216,6 +252,7 @@ namespace Microsoft.DotNet.Cli.Build string templateFile = Path.Combine(sharedFrameworkProjectPath, "project.json.template"); JObject sharedFrameworkProject = JsonUtils.ReadProject(templateFile); + sharedFrameworkProject["dependencies"]["Microsoft.NETCore.App"] = sharedFrameworkNugetVersion; ((JObject)sharedFrameworkProject["runtimes"]).RemoveAll(); sharedFrameworkProject["runtimes"][rid] = new JObject(); diff --git a/pkg/BuildToolsVersion.txt b/pkg/BuildToolsVersion.txt index 0a37fa5d..487225fe 100644 --- a/pkg/BuildToolsVersion.txt +++ b/pkg/BuildToolsVersion.txt @@ -1 +1 @@ -1.0.27-prerelease-01214-01 +1.0.27-prerelease-01407-02 diff --git a/pkg/dir.props b/pkg/dir.props index 19b5d8f4..d774f2e6 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -21,10 +21,11 @@ $(ProjectDir)packages/ + $(BinDir)symbols/ $(ProjectDir)Tools/ $(ToolRuntimePath) $(ProjectDir)Tools/ - $(ToolsDir)net45/ + $(ToolsDir)net46/ $(BuildToolsTaskDir) false @@ -49,6 +50,10 @@ https://dot.net $(Platform) x64 + + $(MSBuildThisFileDirectory)packageIndex.json + + true @@ -61,6 +66,7 @@ Include="$(PackageThirdPartyNoticesFile)" > true + diff --git a/pkg/pack.cmd b/pkg/pack.cmd index 0a362915..e7b2a486 100644 --- a/pkg/pack.cmd +++ b/pkg/pack.cmd @@ -3,7 +3,7 @@ setlocal EnableDelayedExpansion set __ProjectDir=%~dp0 set __DotNet=%__ProjectDir%\Tools\dotnetcli\dotnet.exe -set __MSBuild=%__ProjectDir%\Tools\MSBuild.exe +set __MSBuild=%__ProjectDir%\Tools\MSBuild.dll :: Initialize the MSBuild Tools call "%__ProjectDir%\init-tools.cmd" diff --git a/pkg/packageIndex.json b/pkg/packageIndex.json new file mode 100644 index 00000000..7a73a41b --- /dev/null +++ b/pkg/packageIndex.json @@ -0,0 +1,2 @@ +{ +} \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index f5918351..6c7e6ff8 100644 --- a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -126,6 +126,24 @@ + + + <_PackageSymbolsProjectDir>$(PackageSymbolsBinDir)$(MSBuildProjectName)/ + + + <_SymbolsFiles Include="%(File.Identity)" Condition="'%(File.Extension)' == '.pdb' OR '%(File.Extension)' == '$(SymbolFileExtension)'"> + $(_PackageSymbolsProjectDir)%(File.TargetPath) + + <_PackageSymbolsTargetFrameworkDir Include="@(_SymbolsFiles->'DestinationFolder')" /> + + + + + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.builds b/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.builds new file mode 100644 index 00000000..cef0386b --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.builds @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.pkgproj new file mode 100644 index 00000000..f4d7939d --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.pkgproj @@ -0,0 +1,14 @@ + + + + + + + + true + + + + + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.props b/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.props new file mode 100644 index 00000000..637a0831 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.props @@ -0,0 +1,13 @@ + + + + $(AppHostVersion) + + + + + + ref/netstandard1.0 + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Linux.Microsoft.NETCore.DotNetAppHost.props b/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Linux.Microsoft.NETCore.DotNetAppHost.props new file mode 100644 index 00000000..e4a11056 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Linux.Microsoft.NETCore.DotNetAppHost.props @@ -0,0 +1,11 @@ + + + + + + + runtimes/$(PackageTargetRuntime)/native + + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.OSX.Microsoft.NETCore.DotNetAppHost.props b/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.OSX.Microsoft.NETCore.DotNetAppHost.props new file mode 100644 index 00000000..e4a11056 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.OSX.Microsoft.NETCore.DotNetAppHost.props @@ -0,0 +1,11 @@ + + + + + + + runtimes/$(PackageTargetRuntime)/native + + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props b/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props new file mode 100644 index 00000000..69fc882a --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props @@ -0,0 +1,14 @@ + + + + + + true + + + + runtimes/$(PackageTargetRuntime)/native + + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetAppHost.builds b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetAppHost.builds deleted file mode 100644 index 94cb6ddf..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetAppHost.builds +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - $(PackageOutputPath) - - - - - - - - Windows_NT - amd64 - - - Windows_NT - x86 - - - Windows_NT - arm - - - Windows_NT - arm64 - - - Linux - amd64 - - - Linux - amd64 - - - Linux - amd64 - - - Linux - arm - - - Linux - amd64 - - - Linux - arm - - - Linux - amd64 - - - Linux - amd64 - - - Linux - amd64 - - - Linux - armel - - - Linux - amd64 - - - Linux - amd64 - - - Linux - armel - - - OSX - amd64 - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetAppHost.pkgproj deleted file mode 100644 index 78e09c6f..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetAppHost.pkgproj +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - $(AppHostVersion) - true - true - x64;x86;arm;arm64;armel; - $(PackagesOutputPath) - true - true - - - - - amd64 - - - x86 - - - arm - - - arm64 - - - amd64 - - - amd64 - - - amd64 - - - amd64 - - - arm - - - amd64 - - - arm - - - amd64 - - - amd64 - - - amd64 - - - amd64 - - - armel - - - amd64 - - - armel - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.builds b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.builds index d2f101da..e8936170 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.builds +++ b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.builds @@ -2,87 +2,9 @@ - - - $(PackageOutputPath) - - - - - - Windows_NT - amd64 - - - Windows_NT - x86 - - - Windows_NT - arm - - - Windows_NT - arm64 - - - Linux - amd64 - - - Linux - amd64 - - - Linux - amd64 - - - Linux - arm - - - Linux - amd64 - - - Linux - arm - - - Linux - amd64 - - - Linux - amd64 - - - Linux - amd64 - - - Linux - armel - - - Linux - amd64 - - - Linux - amd64 - - - Linux - armel - - - OSX - amd64 - + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.pkgproj index f96be057..37fb2787 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.pkgproj +++ b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.pkgproj @@ -1,73 +1,14 @@ + + - - $(HostVersion) - true - true - x64;x86;arm;arm64;armel; - $(PackagesOutputPath) - true - true + + true - - - - amd64 - - - x86 - - - arm - - - arm64 - - - amd64 - - - amd64 - - - amd64 - - - amd64 - - - arm - - - amd64 - - - arm - - - amd64 - - - amd64 - - - amd64 - - - amd64 - - - armel - - - amd64 - - - armel - - + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.props b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.props new file mode 100644 index 00000000..76d29cd0 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.props @@ -0,0 +1,13 @@ + + + + $(HostVersion) + + + + + + ref/netstandard1.0 + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHostPolicy.builds b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHostPolicy.builds deleted file mode 100644 index 48697607..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHostPolicy.builds +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - $(PackageOutputPath) - - - - - - - - Windows_NT - amd64 - - - Windows_NT - x86 - - - Windows_NT - arm - - - Windows_NT - arm64 - - - Linux - amd64 - - - Linux - amd64 - - - Linux - amd64 - - - Linux - arm - - - Linux - amd64 - - - Linux - arm - - - Linux - amd64 - - - Linux - amd64 - - - Linux - amd64 - - - Linux - armel - - - Linux - amd64 - - - Linux - amd64 - - - Linux - armel - - - OSX - amd64 - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHostPolicy.pkgproj deleted file mode 100644 index d7c15772..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ /dev/null @@ -1,76 +0,0 @@ - - - - - - $(HostPolicyVersion) - true - true - x64;x86;arm;arm64;armel; - $(PackagesOutputPath) - true - true - - - - - $(HostResolverFullVersion) - - - amd64 - - - x86 - - - arm - - - arm64 - - - amd64 - - - amd64 - - - amd64 - - - amd64 - - - arm - - - amd64 - - - arm - - - amd64 - - - amd64 - - - amd64 - - - amd64 - - - armel - - - amd64 - - - armel - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHostResolver.builds b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHostResolver.builds deleted file mode 100644 index f6352175..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHostResolver.builds +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - $(PackageOutputPath) - - - - - - - - Windows_NT - amd64 - - - Windows_NT - x86 - - - Windows_NT - arm - - - Windows_NT - arm64 - - - Linux - amd64 - - - Linux - amd64 - - - Linux - amd64 - - - Linux - arm - - - Linux - amd64 - - - Linux - arm - - - Linux - amd64 - - - Linux - amd64 - - - Linux - amd64 - - - Linux - armel - - - Linux - amd64 - - - Linux - amd64 - - - Linux - armel - - - OSX - amd64 - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHostResolver.pkgproj deleted file mode 100644 index 6711a868..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - $(HostResolverVersion) - true - true - x64;x86;arm;arm64;armel; - $(PackagesOutputPath) - true - true - - - - - $(HostFullVersion) - - - $(AppHostFullVersion) - - - amd64 - - - x86 - - - arm - - - arm64 - - - amd64 - - - amd64 - - - amd64 - - - amd64 - - - arm - - - amd64 - - - arm - - - amd64 - - - amd64 - - - amd64 - - - amd64 - - - armel - - - amd64 - - - armel - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/debian/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/debian/Microsoft.NETCore.DotNetAppHost.pkgproj deleted file mode 100644 index a6a2e33d..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/debian/Microsoft.NETCore.DotNetAppHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(AppHostVersion) - true - debian.8 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/debian/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/debian/Microsoft.NETCore.DotNetHost.pkgproj deleted file mode 100644 index 3f9e04c1..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/debian/Microsoft.NETCore.DotNetHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(HostVersion) - true - debian.8 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/debian/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/debian/Microsoft.NETCore.DotNetHostPolicy.pkgproj deleted file mode 100644 index 336ce078..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/debian/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostPolicyVersion) - true - debian.8 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostResolverFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/debian/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/debian/Microsoft.NETCore.DotNetHostResolver.pkgproj deleted file mode 100644 index 8a8fc869..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/debian/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - $(HostResolverVersion) - true - debian.8 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostFullVersion) - - - $(AppHostFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.23/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.23/Microsoft.NETCore.DotNetAppHost.pkgproj deleted file mode 100644 index 70aa4577..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.23/Microsoft.NETCore.DotNetAppHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(AppHostVersion) - true - fedora.23 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.23/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.23/Microsoft.NETCore.DotNetHost.pkgproj deleted file mode 100644 index 31398f11..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.23/Microsoft.NETCore.DotNetHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(HostVersion) - true - fedora.23 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.23/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.23/Microsoft.NETCore.DotNetHostPolicy.pkgproj deleted file mode 100644 index d0ee2494..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.23/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostPolicyVersion) - true - fedora.23 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostResolverFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.23/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.23/Microsoft.NETCore.DotNetHostResolver.pkgproj deleted file mode 100644 index 0a13d1d8..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.23/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - $(HostResolverVersion) - true - fedora.23 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostFullVersion) - - - $(AppHostFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.24/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.24/Microsoft.NETCore.DotNetAppHost.pkgproj deleted file mode 100644 index d2b3dbea..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.24/Microsoft.NETCore.DotNetAppHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(AppHostVersion) - true - fedora.24 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.24/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.24/Microsoft.NETCore.DotNetHost.pkgproj deleted file mode 100644 index 4fd70d62..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.24/Microsoft.NETCore.DotNetHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(HostVersion) - true - fedora.24 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.24/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.24/Microsoft.NETCore.DotNetHostPolicy.pkgproj deleted file mode 100644 index 0d94a178..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.24/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostPolicyVersion) - true - fedora.24 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostResolverFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.24/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.24/Microsoft.NETCore.DotNetHostResolver.pkgproj deleted file mode 100644 index ac447caf..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/fedora.24/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostResolverVersion) - true - fedora.24 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/linux/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/linux/Microsoft.NETCore.DotNetAppHost.pkgproj deleted file mode 100644 index 146d76f0..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/linux/Microsoft.NETCore.DotNetAppHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(HostVersion) - true - linux - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/linux/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/linux/Microsoft.NETCore.DotNetHost.pkgproj deleted file mode 100644 index f38824e9..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/linux/Microsoft.NETCore.DotNetHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(HostVersion) - true - linux - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/linux/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/linux/Microsoft.NETCore.DotNetHostPolicy.pkgproj deleted file mode 100644 index 80e14ef2..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/linux/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostPolicyVersion) - true - linux - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostResolverFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/linux/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/linux/Microsoft.NETCore.DotNetHostResolver.pkgproj deleted file mode 100644 index c44f4ab1..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/linux/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostResolverVersion) - true - linux - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/opensuse.42.1/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/opensuse.42.1/Microsoft.NETCore.DotNetAppHost.pkgproj deleted file mode 100644 index 9f34b9bb..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/opensuse.42.1/Microsoft.NETCore.DotNetAppHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(AppHostVersion) - true - opensuse.42.1 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/opensuse.42.1/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/opensuse.42.1/Microsoft.NETCore.DotNetHost.pkgproj deleted file mode 100644 index d9275517..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/opensuse.42.1/Microsoft.NETCore.DotNetHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(HostVersion) - true - opensuse.42.1 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/opensuse.42.1/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/opensuse.42.1/Microsoft.NETCore.DotNetHostPolicy.pkgproj deleted file mode 100644 index bef6500a..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/opensuse.42.1/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostPolicyVersion) - true - opensuse.42.1 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostResolverFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/opensuse.42.1/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/opensuse.42.1/Microsoft.NETCore.DotNetHostResolver.pkgproj deleted file mode 100644 index 6292b636..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/opensuse.42.1/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostResolverVersion) - true - opensuse.42.1 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/osx/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/osx/Microsoft.NETCore.DotNetAppHost.pkgproj deleted file mode 100644 index 9eb10d08..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/osx/Microsoft.NETCore.DotNetAppHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(AppHostVersion) - true - osx.10.10 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/osx/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/osx/Microsoft.NETCore.DotNetHost.pkgproj deleted file mode 100644 index e05910d2..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/osx/Microsoft.NETCore.DotNetHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(HostVersion) - true - osx.10.10 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/osx/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/osx/Microsoft.NETCore.DotNetHostPolicy.pkgproj deleted file mode 100644 index 2671e0d1..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/osx/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostPolicyVersion) - true - osx.10.10 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostResolverFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/osx/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/osx/Microsoft.NETCore.DotNetHostResolver.pkgproj deleted file mode 100644 index 7250a52b..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/osx/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - $(HostResolverVersion) - true - osx.10.10 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostFullVersion) - - - $(AppHostFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/rhel/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/rhel/Microsoft.NETCore.DotNetAppHost.pkgproj deleted file mode 100644 index 4aa875e1..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/rhel/Microsoft.NETCore.DotNetAppHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(AppHostVersion) - true - rhel.7 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/rhel/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/rhel/Microsoft.NETCore.DotNetHost.pkgproj deleted file mode 100644 index 5f326150..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/rhel/Microsoft.NETCore.DotNetHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(HostVersion) - true - rhel.7 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/rhel/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/rhel/Microsoft.NETCore.DotNetHostPolicy.pkgproj deleted file mode 100644 index e4e05169..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/rhel/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostPolicyVersion) - true - rhel.7 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostResolverFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Linux.Microsoft.NETCore.DotNetHost.props b/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Linux.Microsoft.NETCore.DotNetHost.props new file mode 100644 index 00000000..7d2f6677 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Linux.Microsoft.NETCore.DotNetHost.props @@ -0,0 +1,11 @@ + + + + + + + runtimes/$(PackageTargetRuntime)/native + + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.OSX.Microsoft.NETCore.DotNetHost.props b/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.OSX.Microsoft.NETCore.DotNetHost.props new file mode 100644 index 00000000..7d2f6677 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.OSX.Microsoft.NETCore.DotNetHost.props @@ -0,0 +1,11 @@ + + + + + + + runtimes/$(PackageTargetRuntime)/native + + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props b/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props new file mode 100644 index 00000000..c0b3529a --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props @@ -0,0 +1,14 @@ + + + + + + true + + + + runtimes/$(PackageTargetRuntime)/native + + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/tizen.4.0.0/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/tizen.4.0.0/Microsoft.NETCore.DotNetAppHost.pkgproj deleted file mode 100644 index 92b27f5e..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/tizen.4.0.0/Microsoft.NETCore.DotNetAppHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(AppHostVersion) - true - tizen.4.0.0 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/tizen.4.0.0/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/tizen.4.0.0/Microsoft.NETCore.DotNetHost.pkgproj deleted file mode 100644 index fb92ee18..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/tizen.4.0.0/Microsoft.NETCore.DotNetHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(HostVersion) - true - tizen.4.0.0 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/tizen.4.0.0/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/tizen.4.0.0/Microsoft.NETCore.DotNetHostPolicy.pkgproj deleted file mode 100644 index 7f769fee..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/tizen.4.0.0/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostPolicyVersion) - true - tizen.4.0.0 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostResolverFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/tizen.4.0.0/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/tizen.4.0.0/Microsoft.NETCore.DotNetHostResolver.pkgproj deleted file mode 100644 index 2238999b..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/tizen.4.0.0/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - $(HostResolverVersion) - true - tizen.4.0.0 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostFullVersion) - - - $(AppHostFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.14.04/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.14.04/Microsoft.NETCore.DotNetAppHost.pkgproj deleted file mode 100644 index 57df2b01..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.14.04/Microsoft.NETCore.DotNetAppHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(AppHostVersion) - true - ubuntu.14.04 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.14.04/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.14.04/Microsoft.NETCore.DotNetHost.pkgproj deleted file mode 100644 index 450a6e0b..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.14.04/Microsoft.NETCore.DotNetHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(HostVersion) - true - ubuntu.14.04 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.14.04/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.14.04/Microsoft.NETCore.DotNetHostPolicy.pkgproj deleted file mode 100644 index f7fe8f9f..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.14.04/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostPolicyVersion) - true - ubuntu.14.04 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostResolverFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.14.04/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.14.04/Microsoft.NETCore.DotNetHostResolver.pkgproj deleted file mode 100644 index 4f74fd5c..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.14.04/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - $(HostResolverVersion) - true - ubuntu.14.04 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostFullVersion) - - - $(AppHostFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.04/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.04/Microsoft.NETCore.DotNetAppHost.pkgproj deleted file mode 100644 index 53de08a4..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.04/Microsoft.NETCore.DotNetAppHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(AppHostVersion) - true - ubuntu.16.04 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.04/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.04/Microsoft.NETCore.DotNetHost.pkgproj deleted file mode 100644 index 1953ab0e..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.04/Microsoft.NETCore.DotNetHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(HostVersion) - true - ubuntu.16.04 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.04/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.04/Microsoft.NETCore.DotNetHostPolicy.pkgproj deleted file mode 100644 index 828fdaaf..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.04/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostPolicyVersion) - true - ubuntu.16.04 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostResolverFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.04/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.04/Microsoft.NETCore.DotNetHostResolver.pkgproj deleted file mode 100644 index c65ac0ef..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.04/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - $(HostResolverVersion) - true - ubuntu.16.04 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostFullVersion) - - - $(AppHostFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.10/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.10/Microsoft.NETCore.DotNetAppHost.pkgproj deleted file mode 100644 index 00d5c1a1..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.10/Microsoft.NETCore.DotNetAppHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(AppHostVersion) - true - ubuntu.16.10 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.10/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.10/Microsoft.NETCore.DotNetHost.pkgproj deleted file mode 100644 index c8d62db6..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.10/Microsoft.NETCore.DotNetHost.pkgproj +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - $(HostVersion) - true - ubuntu.16.10 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.10/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.10/Microsoft.NETCore.DotNetHostPolicy.pkgproj deleted file mode 100644 index 249de3fe..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.10/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostPolicyVersion) - true - ubuntu.16.10 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostResolverFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.10/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.10/Microsoft.NETCore.DotNetHostResolver.pkgproj deleted file mode 100644 index c32b604d..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/ubuntu.16.10/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - $(HostResolverVersion) - true - ubuntu.16.10 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostFullVersion) - - - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/win/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/win/Microsoft.NETCore.DotNetAppHost.pkgproj deleted file mode 100644 index 57503981..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/win/Microsoft.NETCore.DotNetAppHost.pkgproj +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - $(AppHostVersion) - true - win7 - win8 - win10 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - true - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/win/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/win/Microsoft.NETCore.DotNetHost.pkgproj deleted file mode 100644 index 4c8d327d..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/win/Microsoft.NETCore.DotNetHost.pkgproj +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - $(HostVersion) - true - win7 - win8 - win10 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - - true - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/win/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/win/Microsoft.NETCore.DotNetHostPolicy.pkgproj deleted file mode 100644 index ee2880e0..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/win/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - $(HostPolicyVersion) - true - win7 - win8 - win10 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostResolverFullVersion) - - - - - true - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/win/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/win/Microsoft.NETCore.DotNetHostResolver.pkgproj deleted file mode 100644 index 082024a9..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/win/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - $(HostResolverVersion) - true - win7 - win8 - win10 - $(MinOSForArch)-$(PackagePlatform) - true - - - - - $(HostFullVersion) - - - $(AppHostFullVersion) - - - - - true - - - - runtimes/$(PackageTargetRuntime)/native - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.builds b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.builds new file mode 100644 index 00000000..cef0386b --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.builds @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj new file mode 100644 index 00000000..b1a21e91 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj @@ -0,0 +1,20 @@ + + + + + + + + true + + + + + $(HostResolverFullVersion) + + + + + + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.props b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.props new file mode 100644 index 00000000..19d8f3df --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.props @@ -0,0 +1,13 @@ + + + + $(HostPolicyVersion) + + + + + + ref/netstandard1.0 + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Linux.Microsoft.NETCore.DotNetHostPolicy.props b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Linux.Microsoft.NETCore.DotNetHostPolicy.props new file mode 100644 index 00000000..c39547e4 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Linux.Microsoft.NETCore.DotNetHostPolicy.props @@ -0,0 +1,11 @@ + + + + + + + runtimes/$(PackageTargetRuntime)/native + + + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.OSX.Microsoft.NETCore.DotNetHostPolicy.props b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.OSX.Microsoft.NETCore.DotNetHostPolicy.props new file mode 100644 index 00000000..208dbbaa --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.OSX.Microsoft.NETCore.DotNetHostPolicy.props @@ -0,0 +1,11 @@ + + + + + + + runtimes/$(PackageTargetRuntime)/native + + + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props new file mode 100644 index 00000000..a1d247b8 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props @@ -0,0 +1,14 @@ + + + + + + true + + + + runtimes/$(PackageTargetRuntime)/native + + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.builds b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.builds new file mode 100644 index 00000000..cef0386b --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.builds @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/rhel/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj similarity index 53% rename from pkg/projects/Microsoft.NETCore.DotNetHost/rhel/Microsoft.NETCore.DotNetHostResolver.pkgproj rename to pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj index f78670c0..6fc2c361 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/rhel/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj @@ -1,30 +1,23 @@ + + - - - $(HostResolverVersion) - true - rhel.7 - $(MinOSForArch)-$(PackagePlatform) - true + + + true - - + + $(HostFullVersion) $(AppHostFullVersion) - - - - - runtimes/$(PackageTargetRuntime)/native - - + + - + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.props b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.props new file mode 100644 index 00000000..38201f5d --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.props @@ -0,0 +1,13 @@ + + + + $(HostResolverVersion) + + + + + + ref/netstandard1.0 + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Linux.Microsoft.NETCore.DotNetHostResolver.props b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Linux.Microsoft.NETCore.DotNetHostResolver.props new file mode 100644 index 00000000..faee75fb --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Linux.Microsoft.NETCore.DotNetHostResolver.props @@ -0,0 +1,11 @@ + + + + + + + runtimes/$(PackageTargetRuntime)/native + + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.OSX.Microsoft.NETCore.DotNetHostResolver.props b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.OSX.Microsoft.NETCore.DotNetHostResolver.props new file mode 100644 index 00000000..7eb0d2c1 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.OSX.Microsoft.NETCore.DotNetHostResolver.props @@ -0,0 +1,11 @@ + + + + + + + runtimes/$(PackageTargetRuntime)/native + + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props new file mode 100644 index 00000000..2f5beffd --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props @@ -0,0 +1,14 @@ + + + + + + true + + + + runtimes/$(PackageTargetRuntime)/native + + + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds index fbb33e1d..49b11b5b 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds @@ -1,10 +1,10 @@ - + - + diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj index c9c6224c..51fe0f19 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj @@ -1,6 +1,6 @@  - + 5.3.0 diff --git a/pkg/projects/dir.props b/pkg/projects/dir.props index 78c49b8b..408442cd 100644 --- a/pkg/projects/dir.props +++ b/pkg/projects/dir.props @@ -1,11 +1,89 @@ + - Debug - obj/$(Configuration)/ - $(IntermediateOutputPath)$(NuGetRuntimeIdentifier)/ + AnyCPU $(MSBuildThisProjectDirectory)project.json.template $(IntermediateOutputPath)project.json $(IntermediateOutputPath)project.lock.json + + true + + $(PackageOutputPath) + + $(NetCoreAppVersion) + true + + + true + true + + + + $(DistroRid) + osx.10.10-$(Platform) + win10-$(Platform) + + + + + + + + + + + + + + + + win10-x86 + x86 + + + win10-x64 + + + win10-arm + arm + + + x86 + + + + arm + + + arm64 + + + arm + + + arm + + + + + + $(Platform) + + + + + <_project Include="@(BuildRID)"> + x64 + %(Identity) + PackageTargetRuntime=%(Identity);Platform=%(Platform) + + + + + + + + \ No newline at end of file diff --git a/pkg/projects/dir.traversal.targets b/pkg/projects/dir.traversal.targets new file mode 100644 index 00000000..b29c4cf1 --- /dev/null +++ b/pkg/projects/dir.traversal.targets @@ -0,0 +1,19 @@ + + + + + + + + + + + <_projectsToBuild Include="@(Project)" Condition="'%(Project.PackageTargetRuntime)' == '$(PackageRID)' OR '%(Project.PackageTargetRuntime)' == ''" /> + + + + + + + + \ No newline at end of file From ca78d3b192adacfb524a7975a094397dea95a072 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Mon, 13 Mar 2017 19:15:30 -0700 Subject: [PATCH 010/625] Updating CoreFx, CoreClr to beta-25114-01, beta-25113-03 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 6 +++--- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 6ac05707..a9de4a17 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25113-02"; - public static readonly string JitVersion = "2.0.0-beta-25113-02"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25113-03"; + public static readonly string JitVersion = "2.0.0-beta-25113-03"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index fe89d9df..26fb56f2 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-beta-25110-02" + "Microsoft.NETCore.Platforms": "2.0.0-beta-25114-01" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 19b5d8f4..25d356f7 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -40,7 +40,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-beta-25110-02\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-beta-25114-01\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index dc6145ff..94db0f04 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25110-02", - "Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25113-02", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25114-01", + "Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25113-03", "Microsoft.DiaSymReader.Native": "1.4.0", - "Microsoft.NETCore.Platforms": "2.0.0-beta-25110-02", + "Microsoft.NETCore.Platforms": "2.0.0-beta-25114-01", "NETStandard.Library": "2.0.0-beta-25113-01" }, "frameworks": { From 5573950d98ffcfe54f48afb62d17acef5303d002 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Tue, 14 Mar 2017 02:08:33 -0700 Subject: [PATCH 011/625] Updating CoreClr to beta-25114-01 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index a9de4a17..d0f1c114 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25113-03"; - public static readonly string JitVersion = "2.0.0-beta-25113-03"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25114-01"; + public static readonly string JitVersion = "2.0.0-beta-25114-01"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 94db0f04..85a04e28 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25114-01", - "Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25113-03", + "Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25114-01", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25114-01", "NETStandard.Library": "2.0.0-beta-25113-01" From 1e4d921d9bfdaae05b47bdb4f3228312a15c456f Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Tue, 14 Mar 2017 06:17:57 -0700 Subject: [PATCH 012/625] Updating CoreClr, Standard to beta-25114-01, beta-25114-01 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index a9de4a17..d0f1c114 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25113-03"; - public static readonly string JitVersion = "2.0.0-beta-25113-03"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25114-01"; + public static readonly string JitVersion = "2.0.0-beta-25114-01"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 94db0f04..21c58862 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25114-01", - "Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25113-03", + "Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25114-01", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25114-01", - "NETStandard.Library": "2.0.0-beta-25113-01" + "NETStandard.Library": "2.0.0-beta-25114-01" }, "frameworks": { "netcoreapp2.0": {} From 857117bdd24f5fcc7addb39e97beb8f7a6ecd78c Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Tue, 14 Mar 2017 10:10:38 -0700 Subject: [PATCH 013/625] Updating CoreClr to beta-25114-02 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index d0f1c114..b4d10bea 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25114-01"; - public static readonly string JitVersion = "2.0.0-beta-25114-01"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25114-02"; + public static readonly string JitVersion = "2.0.0-beta-25114-02"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 21c58862..9d642069 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25114-01", - "Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25114-01", + "Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25114-02", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25114-01", "NETStandard.Library": "2.0.0-beta-25114-01" From e5a62b0a300dafa2ebd3c3d34bd40ca5d83f4c51 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Tue, 14 Mar 2017 11:49:42 -0700 Subject: [PATCH 014/625] Refactor props / targets --- pkg/pack.cmd | 2 +- pkg/pack.sh | 4 +- pkg/projects/Microsoft.NETCore.App.props | 65 --------------- .../Microsoft.NETCore.App.builds | 20 +---- .../Microsoft.NETCore.App.pkgproj | 80 ------------------- .../Microsoft.NETCore.DotNetAppHost.pkgproj | 12 ++- .../Microsoft.NETCore.DotNetAppHost.props | 13 --- .../Microsoft.NETCore.DotNetHost.pkgproj | 12 ++- .../Microsoft.NETCore.DotNetHost.props | 13 --- ...Microsoft.NETCore.DotNetHostPolicy.pkgproj | 10 +-- .../Microsoft.NETCore.DotNetHostPolicy.props | 13 --- ...crosoft.NETCore.DotNetHostResolver.pkgproj | 10 +-- ...Microsoft.NETCore.DotNetHostResolver.props | 7 -- .../Microsoft.NETCore.builds | 4 +- .../Microsoft.NETCore.pkgproj | 2 +- pkg/projects/dir.props | 37 ++++++++- pkg/projects/dir.targets | 50 +++++++++++- pkg/projects/dir.traversal.targets | 2 +- pkg/projects/packages.builds | 4 +- 19 files changed, 113 insertions(+), 247 deletions(-) delete mode 100644 pkg/projects/Microsoft.NETCore.App.props delete mode 100644 pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.props delete mode 100644 pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.props delete mode 100644 pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.props diff --git a/pkg/pack.cmd b/pkg/pack.cmd index 0a362915..e66f5900 100644 --- a/pkg/pack.cmd +++ b/pkg/pack.cmd @@ -20,7 +20,7 @@ if exist "%__ProjectDir%\bin" (rmdir /s /q "%__ProjectDir%\bin") if not ERRORLEVEL 0 goto :Error :: Package the assets using Tools -"%__DotNet%" "%__MSBuild%" "%__ProjectDir%\projects\packages.builds" /p:TargetsWindows=true /verbosity:minimal +"%__DotNet%" "%__MSBuild%" "%__ProjectDir%\projects\packages.builds" /p:OSGroup=Windows_NT /verbosity:minimal /flp:v=diag if not ERRORLEVEL 0 goto :Error exit /b 0 diff --git a/pkg/pack.sh b/pkg/pack.sh index 9dd02e15..61bcfcbc 100755 --- a/pkg/pack.sh +++ b/pkg/pack.sh @@ -58,9 +58,9 @@ __msbuild="$__project_dir/Tools/msbuild.sh" __targets_param= if [ "$(uname -s)" == "Darwin" ]; then - __targets_param="TargetsOSX=true" + __targets_param="OSGroup=OSX" else - __targets_param="TargetsLinux=true" + __targets_param="OSGroup=Linux" if [ -z $__distro_rid ]; then echo "Runtime Identifier not defined" exit 1 diff --git a/pkg/projects/Microsoft.NETCore.App.props b/pkg/projects/Microsoft.NETCore.App.props deleted file mode 100644 index 75fd6997..00000000 --- a/pkg/projects/Microsoft.NETCore.App.props +++ /dev/null @@ -1,65 +0,0 @@ - - - - $(DistroRid) - osx.10.10-$(Platform) - win10-$(Platform) - - - - - - - - - - - - - - - - win10-x86 - x86 - - - win10-x64 - - - win10-arm - arm - - - x86 - - - - arm - - - arm64 - - - arm - - - arm - - - - - - $(Platform) - - - - - <_project Include="@(BuildRID)"> - x64 - %(Identity) - PackageTargetRuntime=%(Identity);Platform=%(Platform) - - - - - \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.builds b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.builds index c1ab08fb..5155af18 100644 --- a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.builds +++ b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.builds @@ -2,27 +2,9 @@ - - - + - - - - - - - <_projectsToBuild Include="@(Project)" Condition="'%(Project.PackageTargetRuntime)' == '$(PackageRID)' OR '%(Project.BuidOnRID)' == '$(PackageRID)' OR '%(Project.PackageTargetRuntime)' == ''" /> - - - - - - - diff --git a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index 87f8bba2..692254ed 100644 --- a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -3,12 +3,8 @@ - true - true $(NetCoreAppVersion) netcoreapp$([System.Version]::Parse('$(NetCoreAppVersion)').ToString(2)) - AnyCPU - true true true false @@ -21,32 +17,6 @@ true - - - - .exe - - .dll - .pdb - - - - - - lib - .dylib - .dwarf - - - - - - lib - .so - .dbg - - - @@ -124,56 +94,6 @@ - - - - - <_PackageIdentity Include="$(Id)"> - $(PackageVersion) - $(PackageTargetRuntime) - - - - - - - - - - - - - - - - <_PkgProjDependencyWithoutTFM Include="@(PkgProjDependency)" Condition="'%(PkgProjDependency.TargetFramework)' == '' AND '%(PkgProjDependency.TargetRuntime)' == '' AND '%(PkgProjDependency.DoNotExpand)' != 'true'" /> - <_AllPkgProjTFMs Include="%(PkgProjDependency.TargetFramework)" Condition="'%(PkgProjDependency.DependencyKind)' == 'Direct'" /> - - - - - %(_AllPkgProjTFMs.Identity) - - - - - - - - - - - \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.pkgproj index f4d7939d..5290ece0 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.pkgproj +++ b/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.pkgproj @@ -1,14 +1,12 @@ - - - - true - - - + + $(AppHostVersion) + + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.props b/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.props deleted file mode 100644 index 637a0831..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.props +++ /dev/null @@ -1,13 +0,0 @@ - - - - $(AppHostVersion) - - - - - - ref/netstandard1.0 - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.pkgproj index 37fb2787..c5b582a6 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.pkgproj +++ b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.pkgproj @@ -1,14 +1,12 @@ - - - - true - - - + + $(HostVersion) + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.props b/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.props deleted file mode 100644 index 76d29cd0..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.props +++ /dev/null @@ -1,13 +0,0 @@ - - - - $(HostVersion) - - - - - - ref/netstandard1.0 - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj index b1a21e91..7a8d40a1 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj @@ -1,12 +1,10 @@ - - - - true - + + $(HostPolicyVersion) + @@ -14,7 +12,7 @@ - + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.props b/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.props deleted file mode 100644 index 19d8f3df..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.props +++ /dev/null @@ -1,13 +0,0 @@ - - - - $(HostPolicyVersion) - - - - - - ref/netstandard1.0 - - - diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj index 6fc2c361..dcf20c21 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj @@ -1,12 +1,10 @@ - - - - true - + + $(HostResolverVersion) + @@ -17,7 +15,7 @@ - + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.props b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.props index 38201f5d..0c4f255a 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.props +++ b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.props @@ -3,11 +3,4 @@ $(HostResolverVersion) - - - - - ref/netstandard1.0 - - diff --git a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.builds b/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.builds index 0986cc7e..fef1fa2f 100644 --- a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.builds +++ b/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.builds @@ -1,10 +1,10 @@ - + - + diff --git a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj b/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj index bc5df18f..708b4693 100644 --- a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj +++ b/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj @@ -1,6 +1,6 @@  - + 5.0.3 diff --git a/pkg/projects/dir.props b/pkg/projects/dir.props index 408442cd..d50b1bb0 100644 --- a/pkg/projects/dir.props +++ b/pkg/projects/dir.props @@ -11,8 +11,10 @@ $(PackageOutputPath) - $(NetCoreAppVersion) true + + true + true @@ -20,6 +22,33 @@ true + + + + .exe + + .dll + .pdb + + + + + + lib + .dylib + .dwarf + + + + + + lib + .so + .dbg + + + + $(DistroRid) osx.10.10-$(Platform) @@ -29,6 +58,9 @@ + + armel + @@ -65,6 +97,9 @@ arm + + armel + diff --git a/pkg/projects/dir.targets b/pkg/projects/dir.targets index fd32fab0..62d3d6a4 100644 --- a/pkg/projects/dir.targets +++ b/pkg/projects/dir.targets @@ -23,7 +23,55 @@ - + + + + <_PackageIdentity Include="$(Id)"> + $(PackageVersion) + $(PackageTargetRuntime) + + + + + + + + + + + + + + + + <_PkgProjDependencyWithoutTFM Include="@(PkgProjDependency)" Condition="'%(PkgProjDependency.TargetFramework)' == '' AND '%(PkgProjDependency.TargetRuntime)' == '' AND '%(PkgProjDependency.DoNotExpand)' != 'true'" /> + <_AllPkgProjTFMs Include="%(PkgProjDependency.TargetFramework)" Condition="'%(PkgProjDependency.DependencyKind)' == 'Direct'" /> + + + + + %(_AllPkgProjTFMs.Identity) + + + + + + + + + + + \ No newline at end of file diff --git a/pkg/projects/dir.traversal.targets b/pkg/projects/dir.traversal.targets index b29c4cf1..ec266889 100644 --- a/pkg/projects/dir.traversal.targets +++ b/pkg/projects/dir.traversal.targets @@ -8,7 +8,7 @@ - <_projectsToBuild Include="@(Project)" Condition="'%(Project.PackageTargetRuntime)' == '$(PackageRID)' OR '%(Project.PackageTargetRuntime)' == ''" /> + <_projectsToBuild Include="@(Project)" Condition="'%(Project.PackageTargetRuntime)' == '$(PackageRID)' OR '%(Project.BuidOnRID)' == '$(PackageRID)' OR '%(Project.PackageTargetRuntime)' == ''" /> diff --git a/pkg/projects/packages.builds b/pkg/projects/packages.builds index 0b000500..b553075d 100644 --- a/pkg/projects/packages.builds +++ b/pkg/projects/packages.builds @@ -1,10 +1,10 @@ - + - + From b352b9b068bdfcf2be7fd591f101392e88ba9448 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Tue, 14 Mar 2017 15:17:06 -0700 Subject: [PATCH 015/625] Updating CoreClr to beta-25114-06 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index b4d10bea..9bc7ecc2 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25114-02"; - public static readonly string JitVersion = "2.0.0-beta-25114-02"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25114-06"; + public static readonly string JitVersion = "2.0.0-beta-25114-06"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 7546ff0c..990a80d6 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25114-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25114-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25114-06", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25114-01", "NETStandard.Library": "2.0.0-beta-25114-01" From b36a3f3a98c8fc52dbb23b72bc67ba7c589d2811 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Tue, 14 Mar 2017 15:43:11 -0700 Subject: [PATCH 016/625] Include package dependencies in runtime packages --- .../Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj | 1 + .../Microsoft.NETCore.DotNetHostPolicy.pkgproj | 2 +- .../Microsoft.NETCore.DotNetHostResolver.pkgproj | 2 +- pkg/projects/dir.props | 1 - 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index 692254ed..f4648c08 100644 --- a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -10,6 +10,7 @@ false $(IntermediateOutputPath)$(MSBuildProjectName).props $(IntermediateOutputPath)$(MSBuildProjectName).PlatformManifest.txt + true true + + true diff --git a/pkg/projects/dir.props b/pkg/projects/dir.props index 8e43d35d..1c155d78 100644 --- a/pkg/projects/dir.props +++ b/pkg/projects/dir.props @@ -11,8 +11,6 @@ $(PackageOutputPath) - true - true From 4a197ec1856ce64504c7a2de3c2a776ef3360876 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Wed, 15 Mar 2017 02:04:07 -0700 Subject: [PATCH 019/625] Updating CoreClr to beta-25115-01 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 9bc7ecc2..0ae14e93 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25114-06"; - public static readonly string JitVersion = "2.0.0-beta-25114-06"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25115-01"; + public static readonly string JitVersion = "2.0.0-beta-25115-01"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 990a80d6..d50771aa 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25114-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25114-06", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25115-01", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25114-01", "NETStandard.Library": "2.0.0-beta-25114-01" From 143879c4494cb9b202eb2f0a714cd328cb4c5796 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Wed, 15 Mar 2017 06:20:23 -0700 Subject: [PATCH 020/625] Updating CoreClr, Standard to beta-25115-01, beta-25115-01 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 9bc7ecc2..0ae14e93 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25114-06"; - public static readonly string JitVersion = "2.0.0-beta-25114-06"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25115-01"; + public static readonly string JitVersion = "2.0.0-beta-25115-01"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 990a80d6..0886e9c5 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25114-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25114-06", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25115-01", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25114-01", - "NETStandard.Library": "2.0.0-beta-25114-01" + "NETStandard.Library": "2.0.0-beta-25115-01" }, "frameworks": { "netcoreapp2.0": {} From d2702f5155116e8b91fd8a1882af31a7aad367cd Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Wed, 15 Mar 2017 10:04:10 -0700 Subject: [PATCH 021/625] Updating CoreClr to beta-25115-02 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 0ae14e93..3cf27189 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25115-01"; - public static readonly string JitVersion = "2.0.0-beta-25115-01"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25115-02"; + public static readonly string JitVersion = "2.0.0-beta-25115-02"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 0886e9c5..35bf4de4 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25114-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25115-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25115-02", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25114-01", "NETStandard.Library": "2.0.0-beta-25115-01" From 64603ee3a8c63f2140fffe210114e7bfe3508311 Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Wed, 15 Mar 2017 13:00:05 -0500 Subject: [PATCH 022/625] Retry Docker image pull, and cleanup. --- buildpipeline/Core-Setup-RHEL7-x64.json | 68 +++++++++++++++++-------- scripts/dockerrun.sh | 35 +++++++++++++ 2 files changed, 81 insertions(+), 22 deletions(-) diff --git a/buildpipeline/Core-Setup-RHEL7-x64.json b/buildpipeline/Core-Setup-RHEL7-x64.json index 416f5e04..5b3215e0 100644 --- a/buildpipeline/Core-Setup-RHEL7-x64.json +++ b/buildpipeline/Core-Setup-RHEL7-x64.json @@ -18,6 +18,44 @@ "failOnStandardError": "false" } }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Initialize tools", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "pkg/init-tools.sh", + "args": "", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize Docker", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "pkg/Tools/scripts/docker/init-docker.sh", + "args": "$(DockerImageName)", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, { "enabled": true, "continueOnError": false, @@ -49,26 +87,7 @@ }, "inputs": { "scriptPath": "scripts/dockerrun-as-current-user.sh", - "args": "-t --rm --sig-proxy=true --name $(DockerContainerName) -v $(Build.SourcesDirectory):/opt/code -w /opt/code -e CONNECTION_STRING -e PUBLISH_TO_AZURE_BLOB microsoft/dotnet-buildtools-prereqs:rhel7_prereqs_2 /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh $(BuildArguments)\"", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Initialize tools", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "pkg/init-tools.sh", - "args": "", + "args": "-t --rm --sig-proxy=true --name $(DockerContainerName) -v $(Build.SourcesDirectory):/opt/code -w /opt/code -e CONNECTION_STRING -e PUBLISH_TO_AZURE_BLOB $(DockerImageName) /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh $(BuildArguments)\"", "disableAutoCwd": "false", "cwd": "", "failOnStandardError": "false" @@ -164,6 +183,9 @@ }, "GITHUB_PASSWORD": { "value": "PassedViaPipeBuild" + }, + "DockerImageName": { + "value": "microsoft/dotnet-buildtools-prereqs:rhel7_prereqs_2" } }, "demands": [ @@ -197,7 +219,9 @@ "cloneUrl": "https://github.com/dotnet/core-setup.git", "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", "gitLfsSupport": "false", - "fetchDepth": "0" + "skipSyncSource": "false", + "fetchDepth": "0", + "cleanOptions": "0" }, "id": "https://github.com/dotnet/core-setup.git", "type": "GitHub", @@ -226,6 +250,6 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097459 + "revision": 418097568 } } \ No newline at end of file diff --git a/scripts/dockerrun.sh b/scripts/dockerrun.sh index 72b62728..b83e9333 100755 --- a/scripts/dockerrun.sh +++ b/scripts/dockerrun.sh @@ -87,8 +87,43 @@ fi # VSO [ ! -z "$BUILD_BUILDID" ] && DOTNET_BUILD_CONTAINER_NAME="${BUILD_BUILDID}-${BUILD_BUILDNUMBER}" +# Executes a command and retries if it fails. +# NOTE: This function is the exact copy from init-docker.sh. +# Reason for not invoking init.docker.sh directly is since that script +# also performs cleanup, which we do not want in this case. +execute() { + local count=0 + local retries=5 + local waitFactor=6 + until "$@"; do + local exit=$? + count=$(( $count + 1 )) + if [ $count -lt $retries ]; then + local wait=$(( waitFactor ** (( count - 1 )) )) + echo "Retry $count/$retries exited $exit, retrying in $wait seconds..." + sleep $wait + else + say_err "Retry $count/$retries exited $exit, no more retries left." + return $exit + fi + done + + return 0 +} + # Build the docker container (will be fast if it is already built) echo "Building Docker Container using Dockerfile: $DOCKERFILE" + +# Get the name of Docker image. +image=$(grep -i "^FROM " "$DOCKERFILE" | awk '{ print $2 }') + +# Explicitly pull the base image with retry logic. +# This eliminates intermittent failures during docker build caused by failing to retrieve the base image. +if [ ! -z "$image" ]; then + echo "Pulling Docker image $image" + execute docker pull $image +fi + docker build --build-arg USER_ID=$(id -u) -t $DOTNET_BUILD_CONTAINER_TAG $DOCKERFILE # Run the build in the container From 4c50f36e9f982069dab393395c69198b2bf8ca80 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Wed, 15 Mar 2017 11:12:43 -0700 Subject: [PATCH 023/625] Cleanup traversal, address PR feedback --- pkg/dir.props | 3 ++- pkg/pack.cmd | 2 +- pkg/pack.sh | 2 +- pkg/packages.builds | 10 ++++++++++ .../Microsoft.NETCore.DotNetHostResolver.props | 6 ------ ...icrosoft.NETCore.UniversalWindowsPlatform.builds | 8 ++++++-- ...crosoft.NETCore.UniversalWindowsPlatform.pkgproj | 13 ++++++++++--- .../Microsoft.NETCore/Microsoft.NETCore.builds | 8 ++++++-- .../Microsoft.NETCore/Microsoft.NETCore.pkgproj | 9 +++++++-- pkg/projects/dir.props | 4 ++-- pkg/projects/packages.builds | 10 ---------- 11 files changed, 45 insertions(+), 30 deletions(-) create mode 100644 pkg/packages.builds delete mode 100644 pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.props delete mode 100644 pkg/projects/packages.builds diff --git a/pkg/dir.props b/pkg/dir.props index aa469c2f..73ba5200 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -1,4 +1,5 @@ - + + diff --git a/pkg/pack.cmd b/pkg/pack.cmd index 1b1c8322..bd2df9d2 100644 --- a/pkg/pack.cmd +++ b/pkg/pack.cmd @@ -20,7 +20,7 @@ if exist "%__ProjectDir%\bin" (rmdir /s /q "%__ProjectDir%\bin") if not ERRORLEVEL 0 goto :Error :: Package the assets using Tools -"%__DotNet%" "%__MSBuild%" "%__ProjectDir%\projects\packages.builds" /p:OSGroup=Windows_NT /verbosity:minimal +"%__DotNet%" "%__MSBuild%" "%__ProjectDir%\packages.builds" /p:OSGroup=Windows_NT /verbosity:minimal if not ERRORLEVEL 0 goto :Error exit /b 0 diff --git a/pkg/pack.sh b/pkg/pack.sh index 61bcfcbc..2d01f3e6 100755 --- a/pkg/pack.sh +++ b/pkg/pack.sh @@ -71,6 +71,6 @@ __common_parameters="/p:$__targets_param /p:DistroRid=$__distro_rid /verbosity:m $__msbuild $__project_dir/tasks/core-setup.tasks.builds $__common_parameters || exit 1 -$__msbuild $__project_dir/projects/packages.builds $__common_parameters || exit 1 +$__msbuild $__project_dir/packages.builds $__common_parameters || exit 1 exit 0 diff --git a/pkg/packages.builds b/pkg/packages.builds new file mode 100644 index 00000000..e27327a3 --- /dev/null +++ b/pkg/packages.builds @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.props b/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.props deleted file mode 100644 index 0c4f255a..00000000 --- a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.props +++ /dev/null @@ -1,6 +0,0 @@ - - - - $(HostResolverVersion) - - diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds index 49b11b5b..e1eb74e0 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds @@ -1,10 +1,14 @@ - + + false + + + - + diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj index 51fe0f19..395f7e82 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj @@ -1,16 +1,20 @@  - + 5.3.0 AnyCPU + false + false - + + $(MicrosoftNetCoreVersion) + - + @@ -29,4 +33,7 @@ + + + diff --git a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.builds b/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.builds index fef1fa2f..ad850492 100644 --- a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.builds +++ b/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.builds @@ -1,10 +1,14 @@ - + + false + + + - + diff --git a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj b/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj index 708b4693..42eefb50 100644 --- a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj +++ b/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj @@ -1,10 +1,12 @@  - + - 5.0.3 + $(MicrosoftNetCoreVersion) AnyCPU + false + false @@ -25,4 +27,7 @@ + + + \ No newline at end of file diff --git a/pkg/projects/dir.props b/pkg/projects/dir.props index 1c155d78..d1b8f0f0 100644 --- a/pkg/projects/dir.props +++ b/pkg/projects/dir.props @@ -105,7 +105,7 @@ - + <_project Include="@(BuildRID)"> x64 %(Identity) @@ -115,7 +115,7 @@ - + \ No newline at end of file diff --git a/pkg/projects/packages.builds b/pkg/projects/packages.builds deleted file mode 100644 index b553075d..00000000 --- a/pkg/projects/packages.builds +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - From cbbc67ec9451ba67290ff29c242d0aa1ce2a51cc Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Wed, 15 Mar 2017 11:42:38 -0700 Subject: [PATCH 024/625] version.props is a generated file, explicitly define the version for microsoft.netcore --- .../Microsoft.NETCore.UniversalWindowsPlatform.pkgproj | 2 +- pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj index 395f7e82..3f53d681 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj @@ -11,7 +11,7 @@ - $(MicrosoftNetCoreVersion) + 5.0.3 diff --git a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj b/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj index 42eefb50..9db08b5d 100644 --- a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj +++ b/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj @@ -3,7 +3,7 @@ - $(MicrosoftNetCoreVersion) + 5.0.3 AnyCPU false false From 20533cd25e226c4b045d7f0d8ec40ad57025c50d Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Wed, 15 Mar 2017 13:43:24 -0500 Subject: [PATCH 025/625] Remove post build cleanup since cleanup is already performed in init-docker.sh. --- buildpipeline/Core-Setup-RHEL7-x64.json | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/buildpipeline/Core-Setup-RHEL7-x64.json b/buildpipeline/Core-Setup-RHEL7-x64.json index 5b3215e0..f27d5110 100644 --- a/buildpipeline/Core-Setup-RHEL7-x64.json +++ b/buildpipeline/Core-Setup-RHEL7-x64.json @@ -92,24 +92,6 @@ "cwd": "", "failOnStandardError": "false" } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Clean up Docker images and containers", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "perl", - "arguments": "pkg/Tools/scripts/docker/cleanup-docker.sh", - "workingFolder": "", - "failOnStandardError": "false" - } } ], "options": [ From b38cd93559fdb76b25e4f207e970e1c164db3b4f Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Wed, 15 Mar 2017 14:11:31 -0500 Subject: [PATCH 026/625] Revert "Remove post build cleanup since cleanup is already performed in init-docker.sh." This reverts commit 20533cd25e226c4b045d7f0d8ec40ad57025c50d. --- buildpipeline/Core-Setup-RHEL7-x64.json | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/buildpipeline/Core-Setup-RHEL7-x64.json b/buildpipeline/Core-Setup-RHEL7-x64.json index f27d5110..5b3215e0 100644 --- a/buildpipeline/Core-Setup-RHEL7-x64.json +++ b/buildpipeline/Core-Setup-RHEL7-x64.json @@ -92,6 +92,24 @@ "cwd": "", "failOnStandardError": "false" } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Clean up Docker images and containers", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "perl", + "arguments": "pkg/Tools/scripts/docker/cleanup-docker.sh", + "workingFolder": "", + "failOnStandardError": "false" + } } ], "options": [ From a14f0df0f3458f0942b5eb627703e40f9ff7d98e Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Wed, 15 Mar 2017 14:16:10 -0500 Subject: [PATCH 027/625] Remove unnecessary Docker cleanup step. --- buildpipeline/Core-Setup-RHEL7-x64.json | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/buildpipeline/Core-Setup-RHEL7-x64.json b/buildpipeline/Core-Setup-RHEL7-x64.json index 5b3215e0..1e5b83b6 100644 --- a/buildpipeline/Core-Setup-RHEL7-x64.json +++ b/buildpipeline/Core-Setup-RHEL7-x64.json @@ -56,24 +56,6 @@ "failOnStandardError": "false" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Docker cleanup", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "bash", - "arguments": "-c \"docker ps -a -q --filter name=$(DockerContainerName) | xargs --no-run-if-empty docker rm -f -v\"", - "workingFolder": "", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": false, From aa60db1bfddef335e9639e43e3fd33287217ecd1 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Wed, 15 Mar 2017 14:57:08 -0700 Subject: [PATCH 028/625] temporarily add apphost directly as a reference to M.N.App package --- .../Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj | 6 +++++- src/corehost/cli/deps_resolver.cpp | 3 ++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index f5918351..80385274 100644 --- a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -63,6 +63,10 @@ .NETCoreApp1.1 + + + $(AppHostFullVersion) + @@ -177,4 +181,4 @@ ItemName="Dependency" /> - \ No newline at end of file + diff --git a/src/corehost/cli/deps_resolver.cpp b/src/corehost/cli/deps_resolver.cpp index 151f4330..afd3e661 100644 --- a/src/corehost/cli/deps_resolver.cpp +++ b/src/corehost/cli/deps_resolver.cpp @@ -470,7 +470,8 @@ bool deps_resolver_t::resolve_probe_dirs( { // For standalone apps, apphost.exe will be renamed. Do not use the full package name // because of rid-fallback could happen (ex: CentOS falling back to RHEL) - if (ends_with(entry.library_name, _X(".Microsoft.NETCore.App"), false) && (entry.asset_name == _X("dotnet") || entry.asset_name == _X("apphost"))) + if (((entry.asset_name == _X("dotnet")) && ends_with(entry.library_name, _X(".Microsoft.NETCore.App"), false)) || + ((entry.asset_name == _X("apphost")) && ends_with(entry.library_name, _X(".Microsoft.NETCore.DotNetAppHost"), false))) { trace::warning(_X("Warning: assembly specified in the dependencies manifest was not found -- package: '%s', version: '%s', path: '%s'"), entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); From 1db1b751a39fcd6ca0dbd84f5e9e97f2d448dae7 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Wed, 15 Mar 2017 16:08:15 -0700 Subject: [PATCH 029/625] package symbols to a separate file --- build_projects/dotnet-host-build/PackageTargets.cs | 11 +++++++++++ build_projects/dotnet-host-build/PrepareTargets.cs | 3 ++- build_projects/dotnet-host-build/PublishTargets.cs | 12 +++++++++++- .../Utils/SharedFrameworkPublisher.cs | 10 +++++++++- pkg/BuildToolsVersion.txt | 2 +- 5 files changed, 34 insertions(+), 4 deletions(-) diff --git a/build_projects/dotnet-host-build/PackageTargets.cs b/build_projects/dotnet-host-build/PackageTargets.cs index 853512ed..645c50df 100644 --- a/build_projects/dotnet-host-build/PackageTargets.cs +++ b/build_projects/dotnet-host-build/PackageTargets.cs @@ -123,6 +123,7 @@ namespace Microsoft.DotNet.Host.Build FixPermissions(sharedFxRoot); c.BuildContext["SharedFrameworkPublishRoot"] = sharedFxRoot; + c.BuildContext["SharedFrameworkPublishSymbolsRoot"] = $"{Dirs.SharedFrameworkPublish}.symbols"; return c.Success(); } @@ -170,6 +171,11 @@ namespace Microsoft.DotNet.Host.Build CreateZipFromDirectory( c.BuildContext.Get("SharedFrameworkPublishRoot"), c.BuildContext.Get("SharedFrameworkCompressedFile")); + + CreateZipFromDirectory( + c.BuildContext.Get("SharedFrameworkPublishSymbolsRoot"), + c.BuildContext.Get("SharedFrameworkSymbolsCompressedFile")); + return c.Success(); } @@ -188,6 +194,11 @@ namespace Microsoft.DotNet.Host.Build CreateTarBallFromDirectory( c.BuildContext.Get("SharedFrameworkPublishRoot"), c.BuildContext.Get("SharedFrameworkCompressedFile")); + + CreateTarBallFromDirectory( + c.BuildContext.Get("SharedFrameworkPublishSymbolsRoot"), + c.BuildContext.Get("SharedFrameworkSymbolsCompressedFile")); + return c.Success(); } diff --git a/build_projects/dotnet-host-build/PrepareTargets.cs b/build_projects/dotnet-host-build/PrepareTargets.cs index 5ff7ad59..d718fb9c 100644 --- a/build_projects/dotnet-host-build/PrepareTargets.cs +++ b/build_projects/dotnet-host-build/PrepareTargets.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; using System.IO; @@ -256,6 +256,7 @@ namespace Microsoft.DotNet.Host.Build AddInstallerArtifactToContext(c, "dotnet-host", "SharedHost", hostVersion); AddInstallerArtifactToContext(c, "dotnet-hostfxr", "HostFxr", hostFxrVersion); AddInstallerArtifactToContext(c, "dotnet-sharedframework", "SharedFramework", sharedFrameworkVersion); + AddInstallerArtifactToContext(c, "dotnet-sharedframework-symbols", "SharedFrameworkSymbols", sharedFrameworkVersion); AddInstallerArtifactToContext(c, "dotnet", "CombinedMuxerHostFxrFramework", sharedFrameworkVersion); return c.Success(); diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index 81c0157d..46f48e7f 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Linq; @@ -278,6 +278,7 @@ namespace Microsoft.DotNet.Host.Build [Target( nameof(PublishTargets.PublishHostFxrArchiveToAzure), nameof(PublishTargets.PublishSharedFrameworkArchiveToAzure), + nameof(PublishTargets.PublishSharedFrameworkSymbolsArchiveToAzure), nameof(PublishTargets.PublishCombinedMuxerHostFxrFrameworkArchiveToAzure))] public static BuildTargetResult PublishArchivesToAzure(BuildTargetContext c) => c.Success(); @@ -420,6 +421,15 @@ namespace Microsoft.DotNet.Host.Build return c.Success(); } + [Target] + public static BuildTargetResult PublishSharedFrameworkSymbolsArchiveToAzure(BuildTargetContext c) + { + var version = SharedFrameworkNugetVersion; + var archiveFile = c.BuildContext.Get("SharedFrameworkSymbolsCompressedFile"); + + AzurePublisherTool.PublishArchive(archiveFile, Channel, version); + return c.Success(); + } [Target] [BuildPlatforms(BuildPlatform.Ubuntu, BuildPlatform.Debian)] public static BuildTargetResult PublishSharedFrameworkDebToDebianRepo(BuildTargetContext c) diff --git a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs b/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs index 2580cb1a..04d300bc 100644 --- a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs +++ b/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs @@ -160,6 +160,14 @@ namespace Microsoft.DotNet.Cli.Build var content = $@"{commitHash}{Environment.NewLine}{version}{Environment.NewLine}"; File.WriteAllText(Path.Combine(sharedFrameworkNameAndVersionRoot, ".version"), content); + // Populate symbols publish folder + string sharedFrameworkNameAndVersionWithSymbolsRoot = $"{outputRootDirectory}.symbols"; + if (Directory.Exists(sharedFrameworkNameAndVersionWithSymbolsRoot)) + { + Utils.DeleteDirectory(sharedFrameworkNameAndVersionWithSymbolsRoot); + } + Directory.CreateDirectory(sharedFrameworkNameAndVersionWithSymbolsRoot); + // Copy symbols to publish folder List pdbFiles = new List(); string symbolsRoot = Path.Combine(_repoRoot, "pkg", "bin", "symbols"); @@ -180,7 +188,7 @@ namespace Microsoft.DotNet.Cli.Build } foreach (string pdbFile in pdbFiles) { - string destinationPath = Path.Combine(sharedFrameworkNameAndVersionRoot, Path.GetFileName(pdbFile)); + string destinationPath = Path.Combine(sharedFrameworkNameAndVersionWithSymbolsRoot, Path.GetFileName(pdbFile)); if (!File.Exists(destinationPath)) { File.Copy(pdbFile, destinationPath); diff --git a/pkg/BuildToolsVersion.txt b/pkg/BuildToolsVersion.txt index 487225fe..e649c1f2 100644 --- a/pkg/BuildToolsVersion.txt +++ b/pkg/BuildToolsVersion.txt @@ -1 +1 @@ -1.0.27-prerelease-01407-02 +1.0.27-prerelease-01415-03 From 3cbbd70f2aaf9127a4959daa472170c002e42c05 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Wed, 15 Mar 2017 16:40:00 -0700 Subject: [PATCH 030/625] move buildtools back to previous version --- pkg/BuildToolsVersion.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/BuildToolsVersion.txt b/pkg/BuildToolsVersion.txt index e649c1f2..487225fe 100644 --- a/pkg/BuildToolsVersion.txt +++ b/pkg/BuildToolsVersion.txt @@ -1 +1 @@ -1.0.27-prerelease-01415-03 +1.0.27-prerelease-01407-02 From 3881a39ef74cedbfb7bfd62ff6b86941be51536f Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Wed, 15 Mar 2017 18:21:22 -0700 Subject: [PATCH 031/625] Updating CoreClr to beta-25115-05 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 3cf27189..26390858 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25115-02"; - public static readonly string JitVersion = "2.0.0-beta-25115-02"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25115-05"; + public static readonly string JitVersion = "2.0.0-beta-25115-05"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 35bf4de4..06fd3c5e 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25114-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25115-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25115-05", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25114-01", "NETStandard.Library": "2.0.0-beta-25115-01" From 538f033513d6c90a5f3080ccebd16a70954227bb Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Thu, 16 Mar 2017 17:38:23 -0500 Subject: [PATCH 032/625] Fix the path to Dockerfile. Included the file name. --- scripts/dockerrun.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/dockerrun.sh b/scripts/dockerrun.sh index b83e9333..163f6742 100755 --- a/scripts/dockerrun.sh +++ b/scripts/dockerrun.sh @@ -115,7 +115,7 @@ execute() { echo "Building Docker Container using Dockerfile: $DOCKERFILE" # Get the name of Docker image. -image=$(grep -i "^FROM " "$DOCKERFILE" | awk '{ print $2 }') +image=$(grep -i "^FROM " "$DOCKERFILE/Dockerfile" | awk '{ print $2 }') # Explicitly pull the base image with retry logic. # This eliminates intermittent failures during docker build caused by failing to retrieve the base image. From 56e5fe1b4d19a676770f1d720f057460284be4cf Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Thu, 16 Mar 2017 16:18:45 -0700 Subject: [PATCH 033/625] adding tfm to host package reference --- pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj | 1 + 1 file changed, 1 insertion(+) diff --git a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index ad32b6c7..bb2b8709 100644 --- a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -66,6 +66,7 @@ $(AppHostFullVersion) + .NETCoreApp2.0 - - $(AppHostFullVersion) - .NETCoreApp2.0 + + $(HostPolicyFullVersion) + .NETCoreApp2.0 From 96e5576c38492475122f0dd8bf406b5281139ca3 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Mon, 27 Mar 2017 06:18:13 -0700 Subject: [PATCH 064/625] Updating CoreFx, CoreClr, Standard to beta-25124-07, beta-25126-02, beta-25127-01 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 8 ++++---- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index f6c174fa..34e1c5e0 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25123-08"; - public static readonly string JitVersion = "2.0.0-beta-25123-08"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25126-02"; + public static readonly string JitVersion = "2.0.0-beta-25126-02"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index 7d91c0f6..e40469fb 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-beta-25122-02" + "Microsoft.NETCore.Platforms": "2.0.0-beta-25124-07" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 6acef62a..13008e51 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-beta-25122-02\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-beta-25124-07\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 74163396..2b1def9b 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25122-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25123-08", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25124-07", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25126-02", "Microsoft.DiaSymReader.Native": "1.4.0", - "Microsoft.NETCore.Platforms": "2.0.0-beta-25122-02", - "NETStandard.Library": "2.0.0-beta-25124-01" + "Microsoft.NETCore.Platforms": "2.0.0-beta-25124-07", + "NETStandard.Library": "2.0.0-beta-25127-01" }, "frameworks": { "netcoreapp2.0": {} From 7dd80454d42262f83ada2d3e636710d781e07eb6 Mon Sep 17 00:00:00 2001 From: Michael Simons Date: Mon, 27 Mar 2017 09:17:25 -0500 Subject: [PATCH 065/625] Add uniform docker init and cleanup as well as VSTS Agent cleanup (#1845) --- buildpipeline/Core-Setup-CrossBuild.json | 169 ++++++++++-------- buildpipeline/Core-Setup-Linux.json | 113 +++++++++--- .../Core-Setup-PortableLinux-x64.json | 109 ++++++++--- buildpipeline/Core-Setup-RHEL7-x64.json | 67 +++++-- 4 files changed, 318 insertions(+), 140 deletions(-) diff --git a/buildpipeline/Core-Setup-CrossBuild.json b/buildpipeline/Core-Setup-CrossBuild.json index 41764335..eaa0663e 100644 --- a/buildpipeline/Core-Setup-CrossBuild.json +++ b/buildpipeline/Core-Setup-CrossBuild.json @@ -58,7 +58,27 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Start detached container", + "displayName": "Create host machine tools sandbox", + "timeoutInMinutes": 0, + "task": { + "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "SourceFolder": "pkg", + "Contents": "**", + "TargetFolder": "$(DockerHost_Sandbox)", + "CleanTargetFolder": "false", + "OverWrite": "false", + "flattenFolders": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize tools for host machine", "timeoutInMinutes": 0, "task": { "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", @@ -66,92 +86,56 @@ "definitionType": "task" }, "inputs": { - "scriptPath": "$(PB_RepoName)/scripts/docker-as-current-user.sh", - "args": "run --privileged -d -w $(PB_GitDirectory) -v $(System.DefaultWorkingDirectory)/$(PB_RepoName):$(PB_GitDirectory) --name $(PB_DockerContainerName) $(PB_DockerImageName) sleep 7200", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Exec build", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "$(PB_RepoName)/scripts/docker-as-current-user.sh", - "args": "exec --privileged -e HOME -e ROOTFS_DIR -e PUBLISH_TO_AZURE_BLOB -e CONNECTION_STRING -e CLI_NUGET_FEED_URL -e CLI_NUGET_API_KEY -e NUGET_FEED_URL -e NUGET_API_KEY -e GITHUB_PASSWORD $(PB_DockerContainerName) $(PB_GitDirectory)/build.sh $(CommonArguments) $(BuildArguments) $(portableLinux) --env-vars \"DISABLE_CROSSGEN=1,TARGETPLATFORM=$(PB_Architecture),TARGETRID=$(TargetRid),CROSS=1\"", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Stop Container", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "docker", - "arguments": "stop $(PB_DockerContainerName)", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Remove Container", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "docker", - "arguments": "rm $(PB_DockerContainerName)", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Initialize tools", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "pkg/init-tools.sh", + "scriptPath": "$(DockerHost_Sandbox)/init-tools.sh", "args": "", "disableAutoCwd": "false", "cwd": "", "failOnStandardError": "false" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize Docker", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "$(DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", + "args": "$(PB_DockerImageName)", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Run build in Docker container", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "$(PB_RepoName)/scripts/docker-as-current-user.sh", + "args": "run --name $(PB_DockerContainerName) --rm --privileged -v $(System.DefaultWorkingDirectory)/$(PB_RepoName):$(PB_GitDirectory) -w $(PB_GitDirectory) -e HOME -e ROOTFS_DIR -e PUBLISH_TO_AZURE_BLOB -e CONNECTION_STRING -e CLI_NUGET_FEED_URL -e CLI_NUGET_API_KEY -e NUGET_FEED_URL -e NUGET_API_KEY -e GITHUB_PASSWORD $(PB_DockerImageName) ./build.sh $(CommonArguments) $(BuildArguments) $(portableLinux) --env-vars \"DISABLE_CROSSGEN=1,TARGETPLATFORM=$(PB_Architecture),TARGETRID=$(TargetRid),CROSS=1\"", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, { "enabled": true, "continueOnError": true, "alwaysRun": true, - "displayName": "Clean up Docker images and containers", + "displayName": "Cleanup Docker", "timeoutInMinutes": 0, "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", @@ -160,10 +144,28 @@ }, "inputs": { "filename": "perl", - "arguments": "pkg/Tools/scripts/docker/cleanup-docker.sh", + "arguments": "$(DockerHost_ToolsDirectory)/scripts/docker/cleanup-docker.sh", "workingFolder": "", "failOnStandardError": "false" } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Cleanup VSTS Agent", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(DockerHost_ToolsDirectory)/msbuild.sh", + "arguments": "cleanupagent.proj /p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", + "workingFolder": "$(DockerHost_ToolsDirectory)/scripts/vstsagent/", + "failOnStandardError": "false" + } } ], "options": [ @@ -252,7 +254,7 @@ "value": "/opt/code/core-setup" }, "PB_DockerContainerName": { - "value": "$(Build.BuildId)" + "value": "core-setup-cross-$(Build.BuildId)" }, "PB_DockerRepository": { "value": "microsoft/dotnet-buildtools-prereqs" @@ -286,6 +288,15 @@ "SourceVersion": { "value": "", "allowOverride": true + }, + "DockerHost_Sandbox": { + "value": "$(Build.StagingDirectory)/HostSandbox" + }, + "DockerHost_ToolsDirectory": { + "value": "$(DockerHost_Sandbox)/Tools" + }, + "PB_CleanAgent": { + "value": "true" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-Linux.json b/buildpipeline/Core-Setup-Linux.json index c77436a9..b7317ff4 100644 --- a/buildpipeline/Core-Setup-Linux.json +++ b/buildpipeline/Core-Setup-Linux.json @@ -22,7 +22,65 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Shell Script build.sh", + "displayName": "Create host machine tools sandbox", + "timeoutInMinutes": 0, + "task": { + "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "SourceFolder": "pkg", + "Contents": "**", + "TargetFolder": "$(DockerHost_Sandbox)", + "CleanTargetFolder": "false", + "OverWrite": "false", + "flattenFolders": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize tools for host machine", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "$(DockerHost_Sandbox)/init-tools.sh", + "args": "", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize Docker", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "$(DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", + "args": "", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Run build in Docker container", "timeoutInMinutes": 0, "task": { "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", @@ -41,26 +99,7 @@ "enabled": true, "continueOnError": true, "alwaysRun": true, - "displayName": "Initialize tools", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "pkg/init-tools.sh", - "args": "", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Clean up Docker images and containers", + "displayName": "Cleanup Docker", "timeoutInMinutes": 0, "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", @@ -69,7 +108,7 @@ }, "inputs": { "filename": "perl", - "arguments": "pkg/Tools/scripts/docker/cleanup-docker.sh", + "arguments": "$(DockerHost_ToolsDirectory)/scripts/docker/cleanup-docker.sh", "workingFolder": "", "failOnStandardError": "false" } @@ -92,6 +131,24 @@ "ArtifactType": "Container", "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Cleanup VSTS Agent", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(DockerHost_ToolsDirectory)/msbuild.sh", + "arguments": "cleanupagent.proj /p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", + "workingFolder": "$(DockerHost_ToolsDirectory)/scripts/vstsagent/", + "failOnStandardError": "false" + } } ], "options": [ @@ -162,9 +219,21 @@ "GITHUB_PASSWORD": { "value": "PassedViaPipeBuild" }, + "DOTNET_BUILD_CONTAINER_TAG": { + "value": "core-setup-$(PB_DockerOS)-$(Build.BuildId)" + }, "PB_DockerOS": { "value": "debian8", "allowOverride": true + }, + "PB_CleanAgent": { + "value": "true" + }, + "DockerHost_Sandbox": { + "value": "$(Build.StagingDirectory)/HostSandbox" + }, + "DockerHost_ToolsDirectory": { + "value": "$(DockerHost_Sandbox)/Tools" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-PortableLinux-x64.json b/buildpipeline/Core-Setup-PortableLinux-x64.json index b8535b7a..a9447ba5 100644 --- a/buildpipeline/Core-Setup-PortableLinux-x64.json +++ b/buildpipeline/Core-Setup-PortableLinux-x64.json @@ -22,17 +22,57 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Docker cleanup", + "displayName": "Create host machine tools sandbox", "timeoutInMinutes": 0, "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", + "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", + "versionSpec": "2.*", "definitionType": "task" }, "inputs": { - "filename": "bash", - "arguments": "-c \"docker ps -a -q --filter name=$(DockerContainerName) | xargs --no-run-if-empty docker rm -f -v\"", - "workingFolder": "", + "SourceFolder": "pkg", + "Contents": "**", + "TargetFolder": "$(DockerHost_Sandbox)", + "CleanTargetFolder": "false", + "OverWrite": "false", + "flattenFolders": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize tools for host machine", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "$(DockerHost_Sandbox)/init-tools.sh", + "args": "", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize Docker", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "$(DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", + "args": "$(DockerImageName)", + "disableAutoCwd": "false", + "cwd": "", "failOnStandardError": "false" } }, @@ -49,7 +89,7 @@ }, "inputs": { "scriptPath": "scripts/dockerrun-as-current-user.sh", - "args": "-t --rm --sig-proxy=true --name $(DockerContainerName) -v $(Build.SourcesDirectory):/opt/code -w /opt/code -e CONNECTION_STRING -e PUBLISH_TO_AZURE_BLOB microsoft/dotnet-buildtools-prereqs:rhel7_prereqs_2 /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh $(BuildArguments)\"", + "args": "-t --rm --sig-proxy=true --name $(DockerContainerName) -v $(Build.SourcesDirectory):/opt/code -w /opt/code -e CONNECTION_STRING -e PUBLISH_TO_AZURE_BLOB $(DockerImageName) /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh $(BuildArguments)\"", "disableAutoCwd": "false", "cwd": "", "failOnStandardError": "false" @@ -59,26 +99,7 @@ "enabled": true, "continueOnError": true, "alwaysRun": true, - "displayName": "Initialize tools", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "pkg/init-tools.sh", - "args": "", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Clean up Docker images and containers", + "displayName": "Cleanup Docker", "timeoutInMinutes": 0, "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", @@ -87,10 +108,28 @@ }, "inputs": { "filename": "perl", - "arguments": "pkg/Tools/scripts/docker/cleanup-docker.sh", + "arguments": "$(DockerHost_ToolsDirectory)/scripts/docker/cleanup-docker.sh", "workingFolder": "", "failOnStandardError": "false" } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Cleanup VSTS Agent", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(DockerHost_ToolsDirectory)/msbuild.sh", + "arguments": "cleanupagent.proj /p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", + "workingFolder": "$(DockerHost_ToolsDirectory)/scripts/vstsagent/", + "failOnStandardError": "false" + } } ], "options": [ @@ -145,8 +184,11 @@ "value": "--skip-prereqs --configuration $(BuildConfiguration) --targets Default --portableLinux", "allowOverride": true }, + "DockerImageName": { + "value": "microsoft/dotnet-buildtools-prereqs:rhel7_prereqs_2" + }, "DockerContainerName": { - "value": "dotnetcore-setup-build-container-portablelinux", + "value": "core-setup-portablelinux-$(Build.BuildId)", "allowOverride": true }, "CONNECTION_STRING": { @@ -164,6 +206,15 @@ }, "GITHUB_PASSWORD": { "value": "PassedViaPipeBuild" + }, + "PB_CleanAgent": { + "value": "true" + }, + "DockerHost_Sandbox": { + "value": "$(Build.StagingDirectory)/HostSandbox" + }, + "DockerHost_ToolsDirectory": { + "value": "$(DockerHost_Sandbox)/Tools" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-RHEL7-x64.json b/buildpipeline/Core-Setup-RHEL7-x64.json index 1e5b83b6..67a31b84 100644 --- a/buildpipeline/Core-Setup-RHEL7-x64.json +++ b/buildpipeline/Core-Setup-RHEL7-x64.json @@ -20,9 +20,29 @@ }, { "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Initialize tools", + "continueOnError": false, + "alwaysRun": false, + "displayName": "Create host machine tools sandbox", + "timeoutInMinutes": 0, + "task": { + "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "SourceFolder": "pkg", + "Contents": "**", + "TargetFolder": "$(DockerHost_Sandbox)", + "CleanTargetFolder": "false", + "OverWrite": "false", + "flattenFolders": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize tools for host machine", "timeoutInMinutes": 0, "task": { "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", @@ -30,7 +50,7 @@ "definitionType": "task" }, "inputs": { - "scriptPath": "pkg/init-tools.sh", + "scriptPath": "$(DockerHost_Sandbox)/init-tools.sh", "args": "", "disableAutoCwd": "false", "cwd": "", @@ -49,7 +69,7 @@ "definitionType": "task" }, "inputs": { - "scriptPath": "pkg/Tools/scripts/docker/init-docker.sh", + "scriptPath": "$(DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", "args": "$(DockerImageName)", "disableAutoCwd": "false", "cwd": "", @@ -79,7 +99,7 @@ "enabled": true, "continueOnError": true, "alwaysRun": true, - "displayName": "Clean up Docker images and containers", + "displayName": "Cleanup Docker", "timeoutInMinutes": 0, "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", @@ -88,10 +108,28 @@ }, "inputs": { "filename": "perl", - "arguments": "pkg/Tools/scripts/docker/cleanup-docker.sh", + "arguments": "$(DockerHost_ToolsDirectory)/scripts/docker/cleanup-docker.sh", "workingFolder": "", "failOnStandardError": "false" } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Cleanup VSTS Agent", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(DockerHost_ToolsDirectory)/msbuild.sh", + "arguments": "cleanupagent.proj /p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", + "workingFolder": "$(DockerHost_ToolsDirectory)/scripts/vstsagent/", + "failOnStandardError": "false" + } } ], "options": [ @@ -146,8 +184,11 @@ "value": "--skip-prereqs --configuration $(BuildConfiguration) --targets Default", "allowOverride": true }, + "DockerImageName": { + "value": "microsoft/dotnet-buildtools-prereqs:rhel7_prereqs_2" + }, "DockerContainerName": { - "value": "dotnetcore-setup-build-container-rhel", + "value": "core-setup-rhel-$(Build.BuildId)", "allowOverride": true }, "CONNECTION_STRING": { @@ -166,8 +207,14 @@ "GITHUB_PASSWORD": { "value": "PassedViaPipeBuild" }, - "DockerImageName": { - "value": "microsoft/dotnet-buildtools-prereqs:rhel7_prereqs_2" + "PB_CleanAgent": { + "value": "true" + }, + "DockerHost_Sandbox": { + "value": "$(Build.StagingDirectory)/HostSandbox" + }, + "DockerHost_ToolsDirectory": { + "value": "$(DockerHost_Sandbox)/Tools" } }, "demands": [ From ff372f46201b9e7ada1b1908d2040c3c371cd8a6 Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Mon, 27 Mar 2017 18:34:26 -0700 Subject: [PATCH 066/625] Remove libuv and roslyn from update-dependencies The shared framework no longer depends on packages from either dotnet/roslyn or aspnet/libuv-package so we can remove these from our updater scripts. --- build_projects/update-dependencies/Config.cs | 5 ----- .../update-dependencies/UpdateFilesTargets.cs | 12 +----------- 2 files changed, 1 insertion(+), 16 deletions(-) diff --git a/build_projects/update-dependencies/Config.cs b/build_projects/update-dependencies/Config.cs index 042d9f7e..c9a3f176 100644 --- a/build_projects/update-dependencies/Config.cs +++ b/build_projects/update-dependencies/Config.cs @@ -21,7 +21,6 @@ namespace Microsoft.DotNet.Scripts /// /// COREFX_VERSION_URL - The Url to get the current CoreFx version. (ex. "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/corefx/master/Latest_Packages.txt") /// CORECLR_VERSION_URL - The Url to get the current CoreCLR version. (ex. "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/coreclr/master/Latest_Packages.txt") - /// ROSLYN_VERSION_URL - The Url to get the current Roslyn version. (ex. "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/roslyn/netcore1.0/Latest_Packages.txt") /// GITHUB_ORIGIN_OWNER - The owner of the GitHub fork to push the commit and create the PR from. (ex. "dotnet-bot") /// GITHUB_UPSTREAM_OWNER - The owner of the GitHub base repo to create the PR to. (ex. "dotnet") /// GITHUB_PROJECT - The repo name under the ORIGIN and UPSTREAM owners. (ex. "cli") @@ -39,9 +38,7 @@ namespace Microsoft.DotNet.Scripts private Lazy _password = new Lazy(() => GetEnvironmentVariable("GITHUB_PASSWORD")); private Lazy _coreFxVersionUrl = new Lazy(() => GetEnvironmentVariable("COREFX_VERSION_URL", "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/corefx/master/Latest_Packages.txt")); private Lazy _coreClrVersionUrl = new Lazy(() => GetEnvironmentVariable("CORECLR_VERSION_URL", "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/coreclr/master/Latest_Packages.txt")); - private Lazy _roslynVersionUrl = new Lazy(() => GetEnvironmentVariable("ROSLYN_VERSION_URL", "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/roslyn/netcore1.0/Latest_Packages.txt")); private Lazy _standardVersionUrl = new Lazy(() => GetEnvironmentVariable("STANDARD_VERSION_URL", "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/standard/master/Latest_Packages.txt")); - private Lazy _libuvVersionUrl = new Lazy(() => GetEnvironmentVariable("LIBUV_VERSION_URL", string.Empty)); private Lazy _gitHubOriginOwner; private Lazy _gitHubUpstreamOwner = new Lazy(() => GetEnvironmentVariable("GITHUB_UPSTREAM_OWNER", "dotnet")); private Lazy _gitHubProject = new Lazy(() => GetEnvironmentVariable("GITHUB_PROJECT", "core-setup")); @@ -60,9 +57,7 @@ namespace Microsoft.DotNet.Scripts public string Password => _password.Value; public string CoreFxVersionUrl => _coreFxVersionUrl.Value; public string CoreClrVersionUrl => _coreClrVersionUrl.Value; - public string RoslynVersionUrl => _roslynVersionUrl.Value; public string StandardVersionUrl => _standardVersionUrl.Value; - public string LibuvVersionUrl => _libuvVersionUrl.Value; public string GitHubOriginOwner => _gitHubOriginOwner.Value; public string GitHubUpstreamOwner => _gitHubUpstreamOwner.Value; public string GitHubProject => _gitHubProject.Value; diff --git a/build_projects/update-dependencies/UpdateFilesTargets.cs b/build_projects/update-dependencies/UpdateFilesTargets.cs index ae5d0e35..983acf05 100644 --- a/build_projects/update-dependencies/UpdateFilesTargets.cs +++ b/build_projects/update-dependencies/UpdateFilesTargets.cs @@ -34,17 +34,7 @@ namespace Microsoft.DotNet.Scripts dependencyInfos.Add(CreateDependencyInfo("CoreFx", Config.Instance.CoreFxVersionUrl).Result); dependencyInfos.Add(CreateDependencyInfo("CoreClr", Config.Instance.CoreClrVersionUrl).Result); - dependencyInfos.Add(CreateDependencyInfo("Roslyn", Config.Instance.RoslynVersionUrl).Result); - - if (Config.Instance.StandardVersionUrl != string.Empty) - { - dependencyInfos.Add(CreateDependencyInfo("Standard", Config.Instance.StandardVersionUrl).Result); - } - - if (Config.Instance.LibuvVersionUrl != string.Empty) - { - dependencyInfos.Add(CreateDependencyInfo("Libuv", Config.Instance.LibuvVersionUrl).Result); - } + dependencyInfos.Add(CreateDependencyInfo("Standard", Config.Instance.StandardVersionUrl).Result); return c.Success(); } From cc43f091526d612a36e7a3c10670861032f109b6 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Tue, 28 Mar 2017 02:19:58 -0700 Subject: [PATCH 067/625] Updating CoreClr to beta-25128-03 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 34e1c5e0..748663f0 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25126-02"; - public static readonly string JitVersion = "2.0.0-beta-25126-02"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25128-03"; + public static readonly string JitVersion = "2.0.0-beta-25128-03"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 2b1def9b..cfff055e 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25124-07", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25126-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25128-03", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25124-07", "NETStandard.Library": "2.0.0-beta-25127-01" From e244b57c31caff50e231a1913a9a79b441bbc352 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Tue, 28 Mar 2017 06:19:30 -0700 Subject: [PATCH 068/625] Updating CoreClr, Standard to beta-25128-03, beta-25128-01 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 34e1c5e0..748663f0 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25126-02"; - public static readonly string JitVersion = "2.0.0-beta-25126-02"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25128-03"; + public static readonly string JitVersion = "2.0.0-beta-25128-03"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 2b1def9b..6c149740 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25124-07", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25126-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25128-03", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25124-07", - "NETStandard.Library": "2.0.0-beta-25127-01" + "NETStandard.Library": "2.0.0-beta-25128-01" }, "frameworks": { "netcoreapp2.0": {} From 6e2d59e2fc3227fe355cf97a4a670d3ccf5b79bf Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Tue, 28 Mar 2017 07:24:02 -0700 Subject: [PATCH 069/625] Remove signing for host binary --- build_projects/dotnet-host-build/sign.proj | 3 --- 1 file changed, 3 deletions(-) diff --git a/build_projects/dotnet-host-build/sign.proj b/build_projects/dotnet-host-build/sign.proj index 888e46ce..1534f655 100644 --- a/build_projects/dotnet-host-build/sign.proj +++ b/build_projects/dotnet-host-build/sign.proj @@ -35,9 +35,6 @@ $(CertificateId) - - $(CertificateId) - From b16864201a3a33f0e55f68c4539bbafcffc718ea Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Mon, 27 Mar 2017 17:19:53 -0700 Subject: [PATCH 070/625] Ignore minor version when computing RHEL rid. RHEL includes a minor version in their VERSION_ID field in /etc/os-release. This is bothersome since it means the runtime graph needs to be augmented everytime there's a minor version release or command like `dotnet restore` will fail to resolve assets. While there are workarounds like setting `DOTNET_RUNTIME_ID` these are very fragile. Since RHEL supports binary compatibility across minor versions, it should be fine to assign the same rid to all minor versions. Fixes #1217 --- .../Native/PlatformApis.cs | 23 +++++++++++++++- src/corehost/common/pal.unix.cpp | 27 ++++++++++++++++++- 2 files changed, 48 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs b/src/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs index 2786534c..f982012c 100644 --- a/src/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs +++ b/src/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs @@ -112,11 +112,32 @@ namespace Microsoft.DotNet.PlatformAbstractions.Native result.VersionId = line.Substring(11).Trim('"', '\''); } } - return result; + + return NormalizeDistroInfo(result); } return null; } + // For some distros, we don't want to use the full version from VERSION_ID. One example is + // Red Hat Enterprise Linux, which includes a minor version in their VERSION_ID but minor + // versions are backwards compatable. + // + // In this case, we'll normalized RIDs like 'rhel.7.2' and 'rhel.7.3' to a generic + // 'rhel.7'. This brings RHEL in line with other distros like CentOS or Debian which + // don't put minor version numbers in their VERSION_ID fields because all minor versions + // are backwards compatible. + private static DistroInfo NormalizeDistroInfo(DistroInfo distroInfo) + { + int minorVersionNumberSeparatorIndex = distroInfo.VersionId.IndexOf('.'); + + if (distroInfo.Id == "rhel" && minorVersionNumberSeparatorIndex != -1) + { + distroInfo.VersionId = distroInfo.VersionId.Substring(0, minorVersionNumberSeparatorIndex); + } + + return distroInfo; + } + // I could probably have just done one method signature and put the #if inside the body but the implementations // are just completely different so I wanted to make that clear by putting the whole thing inside the #if. #if NET45 diff --git a/src/corehost/common/pal.unix.cpp b/src/corehost/common/pal.unix.cpp index 2885e488..5e749efe 100644 --- a/src/corehost/common/pal.unix.cpp +++ b/src/corehost/common/pal.unix.cpp @@ -304,6 +304,31 @@ pal::string_t pal::get_current_os_rid_platform() return ridOS; } #else +// For some distros, we don't want to use the full version from VERSION_ID. One example is +// Red Hat Enterprise Linux, which includes a minor version in their VERSION_ID but minor +// versions are backwards compatable. +// +// In this case, we'll normalized RIDs like 'rhel.7.2' and 'rhel.7.3' to a generic +// 'rhel.7'. This brings RHEL in line with other distros like CentOS or Debian which +// don't put minor version numbers in their VERSION_ID fields because all minor versions +// are backwards compatible. +static +pal::string_t normalize_linux_rid(pal::string_t rid) +{ + pal::string_t rhelPrefix(_X("rhel.")); + + if (rid.compare(0, rhelPrefix.length(), rhelPrefix) == 0) + { + size_t minorVersionSeparatorIndex = rid.find(_X("."), rhelPrefix.length()); + if (minorVersionSeparatorIndex != std::string::npos) + { + rid.erase(minorVersionSeparatorIndex, rid.length() - minorVersionSeparatorIndex); + } + } + + return rid; +} + pal::string_t pal::get_current_os_rid_platform() { pal::string_t ridOS; @@ -363,7 +388,7 @@ pal::string_t pal::get_current_os_rid_platform() } } - return ridOS; + return normalize_linux_rid(ridOS); } #endif From a0a786f607e69fe3be57b2b8535e0f35aa3c2e9f Mon Sep 17 00:00:00 2001 From: MichaelSimons Date: Mon, 27 Mar 2017 15:48:05 -0500 Subject: [PATCH 071/625] Remove unnecessary Docker version demand --- buildpipeline/Core-Setup-CrossBuild.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/buildpipeline/Core-Setup-CrossBuild.json b/buildpipeline/Core-Setup-CrossBuild.json index eaa0663e..401f9c45 100644 --- a/buildpipeline/Core-Setup-CrossBuild.json +++ b/buildpipeline/Core-Setup-CrossBuild.json @@ -300,8 +300,7 @@ } }, "demands": [ - "Agent.OS -equals linux", - "Docker -equals 1.13.1" + "Agent.OS -equals linux" ], "retentionRules": [ { From 642a3875f70a209d40300a09d5204642fe2bb060 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Tue, 28 Mar 2017 18:36:36 -0700 Subject: [PATCH 072/625] Updating CoreClr to beta-25129-01 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 748663f0..c29b1b74 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25128-03"; - public static readonly string JitVersion = "2.0.0-beta-25128-03"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25129-01"; + public static readonly string JitVersion = "2.0.0-beta-25129-01"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 6c149740..69376933 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25124-07", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25128-03", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25129-01", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25124-07", "NETStandard.Library": "2.0.0-beta-25128-01" From 96a00d7412ed407ec7eacc61d75ab05e96937c4f Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Wed, 29 Mar 2017 10:20:36 -0700 Subject: [PATCH 073/625] Updating CoreFx, CoreClr, Standard to beta-25129-02, beta-25129-03, beta-25129-01 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 8 ++++---- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index c29b1b74..4597a1ff 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25129-01"; - public static readonly string JitVersion = "2.0.0-beta-25129-01"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25129-03"; + public static readonly string JitVersion = "2.0.0-beta-25129-03"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index e40469fb..88db9911 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-beta-25124-07" + "Microsoft.NETCore.Platforms": "2.0.0-beta-25129-02" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 13008e51..132dd288 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-beta-25124-07\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-beta-25129-02\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 69376933..7249ccb8 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25124-07", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25129-01", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25129-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25129-03", "Microsoft.DiaSymReader.Native": "1.4.0", - "Microsoft.NETCore.Platforms": "2.0.0-beta-25124-07", - "NETStandard.Library": "2.0.0-beta-25128-01" + "Microsoft.NETCore.Platforms": "2.0.0-beta-25129-02", + "NETStandard.Library": "2.0.0-beta-25129-01" }, "frameworks": { "netcoreapp2.0": {} From 4c45d9c31024e5a4ca50df08a0cedaaad1fc3b53 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Wed, 29 Mar 2017 15:24:11 -0700 Subject: [PATCH 074/625] Updating CoreClr to beta-25129-05 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 4597a1ff..e18456a0 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25129-03"; - public static readonly string JitVersion = "2.0.0-beta-25129-03"; + public static readonly string CoreCLRVersion = "2.0.0-beta-25129-05"; + public static readonly string JitVersion = "2.0.0-beta-25129-05"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 7249ccb8..f49fa2c4 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25129-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25129-03", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25129-05", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25129-02", "NETStandard.Library": "2.0.0-beta-25129-01" From cf084e510d7ff546d5a8414575ebb1268d3b609c Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Wed, 1 Mar 2017 15:38:59 -0800 Subject: [PATCH 075/625] Switch to Preview1 pre-release label --- TestAssets/TestProjects/LightupClient/project.json | 2 +- TestAssets/TestProjects/LightupLib/project.json | 2 +- TestAssets/TestProjects/PortableApp/project.json | 2 +- TestAssets/TestProjects/PortableTestApp/project.json | 2 +- TestAssets/TestProjects/SharedFxLookupPortableApp/project.json | 2 +- TestAssets/TestProjects/StandaloneApp/project.json.template | 2 +- .../TestProjects/StandaloneTestApp/project.json.template | 2 +- branchinfo.txt | 2 +- packaging/windows/host/variables.wxi | 3 --- packaging/windows/hostfxr/variables.wxi | 3 --- packaging/windows/sharedframework/variables.wxi | 3 --- src/Microsoft.Extensions.DependencyModel/project.json | 2 +- 12 files changed, 9 insertions(+), 18 deletions(-) diff --git a/TestAssets/TestProjects/LightupClient/project.json b/TestAssets/TestProjects/LightupClient/project.json index 236ada74..76ffade3 100644 --- a/TestAssets/TestProjects/LightupClient/project.json +++ b/TestAssets/TestProjects/LightupClient/project.json @@ -9,7 +9,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-beta-*" + "version": "2.0.0-preview1-*" } } } diff --git a/TestAssets/TestProjects/LightupLib/project.json b/TestAssets/TestProjects/LightupLib/project.json index 723ca8db..a9b59a19 100644 --- a/TestAssets/TestProjects/LightupLib/project.json +++ b/TestAssets/TestProjects/LightupLib/project.json @@ -9,7 +9,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-beta-*" + "version": "2.0.0-preview1-*" }, "Newtonsoft.Json": "9.0.1-beta1", "Microsoft.CodeAnalysis.Analyzers": { diff --git a/TestAssets/TestProjects/PortableApp/project.json b/TestAssets/TestProjects/PortableApp/project.json index c7490479..01cbfa32 100644 --- a/TestAssets/TestProjects/PortableApp/project.json +++ b/TestAssets/TestProjects/PortableApp/project.json @@ -9,7 +9,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-beta-*" + "version": "2.0.0-preview1-*" }, "Newtonsoft.Json": "9.0.1-beta1", "Microsoft.CodeAnalysis.Analyzers": { diff --git a/TestAssets/TestProjects/PortableTestApp/project.json b/TestAssets/TestProjects/PortableTestApp/project.json index d1086be5..45d6ad60 100644 --- a/TestAssets/TestProjects/PortableTestApp/project.json +++ b/TestAssets/TestProjects/PortableTestApp/project.json @@ -12,7 +12,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-beta-*" + "version": "2.0.0-preview1-*" }, "Newtonsoft.Json": "9.0.1-beta1", "xunit": "2.1.0", diff --git a/TestAssets/TestProjects/SharedFxLookupPortableApp/project.json b/TestAssets/TestProjects/SharedFxLookupPortableApp/project.json index c7490479..01cbfa32 100644 --- a/TestAssets/TestProjects/SharedFxLookupPortableApp/project.json +++ b/TestAssets/TestProjects/SharedFxLookupPortableApp/project.json @@ -9,7 +9,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-beta-*" + "version": "2.0.0-preview1-*" }, "Newtonsoft.Json": "9.0.1-beta1", "Microsoft.CodeAnalysis.Analyzers": { diff --git a/TestAssets/TestProjects/StandaloneApp/project.json.template b/TestAssets/TestProjects/StandaloneApp/project.json.template index ac959a16..ea0e4679 100644 --- a/TestAssets/TestProjects/StandaloneApp/project.json.template +++ b/TestAssets/TestProjects/StandaloneApp/project.json.template @@ -5,7 +5,7 @@ "frameworks": { "netcoreapp2.0": { "dependencies": { - "Microsoft.NETCore.App": "2.0.0-beta-*", + "Microsoft.NETCore.App": "2.0.0-preview1-*", "Newtonsoft.Json": "9.0.1-beta1", "Microsoft.CodeAnalysis.Analyzers": { diff --git a/TestAssets/TestProjects/StandaloneTestApp/project.json.template b/TestAssets/TestProjects/StandaloneTestApp/project.json.template index 09a882ae..a34d0e33 100644 --- a/TestAssets/TestProjects/StandaloneTestApp/project.json.template +++ b/TestAssets/TestProjects/StandaloneTestApp/project.json.template @@ -9,7 +9,7 @@ "portable-net451+win8" ], "dependencies": { - "Microsoft.NETCore.App": "2.0.0-beta-*", + "Microsoft.NETCore.App": "2.0.0-preview1-*", "Newtonsoft.Json": "9.0.1-beta1", "xunit": "2.1.0", "xunit.netcore.extensions": "1.0.0-prerelease-00206", diff --git a/branchinfo.txt b/branchinfo.txt index 0d7251bd..21e76bf0 100644 --- a/branchinfo.txt +++ b/branchinfo.txt @@ -6,6 +6,6 @@ MINOR_VERSION=0 PATCH_VERSION=0 STABILIZE_PACKAGE_VERSION=false LOCK_HOST_VERSION=false -RELEASE_SUFFIX=beta +RELEASE_SUFFIX=preview1 CHANNEL=master BRANCH_NAME=master diff --git a/packaging/windows/host/variables.wxi b/packaging/windows/host/variables.wxi index 00b6db46..3022464e 100644 --- a/packaging/windows/host/variables.wxi +++ b/packaging/windows/host/variables.wxi @@ -1,9 +1,6 @@ - - - diff --git a/packaging/windows/hostfxr/variables.wxi b/packaging/windows/hostfxr/variables.wxi index 16670f79..b0d4e682 100644 --- a/packaging/windows/hostfxr/variables.wxi +++ b/packaging/windows/hostfxr/variables.wxi @@ -1,9 +1,6 @@ - - - diff --git a/packaging/windows/sharedframework/variables.wxi b/packaging/windows/sharedframework/variables.wxi index e4abbccb..5cfd9ce6 100644 --- a/packaging/windows/sharedframework/variables.wxi +++ b/packaging/windows/sharedframework/variables.wxi @@ -1,9 +1,6 @@ - - - diff --git a/src/Microsoft.Extensions.DependencyModel/project.json b/src/Microsoft.Extensions.DependencyModel/project.json index 87225bf9..33ebb0ad 100644 --- a/src/Microsoft.Extensions.DependencyModel/project.json +++ b/src/Microsoft.Extensions.DependencyModel/project.json @@ -1,6 +1,6 @@ { "description": "Abstractions for reading `.deps` files.", - "version": "2.0.0-beta-*", + "version": "2.0.0-preview1-*", "buildOptions": { "warningsAsErrors": true, "keyFile": "../../setuptools/Key.snk" From 0264079e6e14eabe1f6a2938d3bc1ea98556df6e Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Wed, 29 Mar 2017 17:35:30 -0700 Subject: [PATCH 076/625] Exclude symbols from runtime packages --- pkg/projects/dir.props | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkg/projects/dir.props b/pkg/projects/dir.props index be4c6fb0..97a0951e 100644 --- a/pkg/projects/dir.props +++ b/pkg/projects/dir.props @@ -49,6 +49,11 @@ + + + + + $(DistroRid) osx.10.12-$(Platform) From 4d68b490bdbedbcb33a1b145107fcd6e2d868ae7 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Wed, 29 Mar 2017 18:21:24 -0700 Subject: [PATCH 077/625] Updating CoreClr to preview1-25130-01 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index e18456a0..0e44c9f9 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-beta-25129-05"; - public static readonly string JitVersion = "2.0.0-beta-25129-05"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25130-01"; + public static readonly string JitVersion = "2.0.0-preview1-25130-01"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index f49fa2c4..ebca6b17 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25129-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-beta-25129-05", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25130-01", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25129-02", "NETStandard.Library": "2.0.0-beta-25129-01" From 03b8644db9fe11c26bec2740e92715f9f44b134c Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Wed, 29 Mar 2017 18:35:00 -0700 Subject: [PATCH 078/625] Fix PlatformAbstractions --- src/Microsoft.DotNet.PlatformAbstractions/project.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Microsoft.DotNet.PlatformAbstractions/project.json b/src/Microsoft.DotNet.PlatformAbstractions/project.json index 319a9e4c..fb404957 100644 --- a/src/Microsoft.DotNet.PlatformAbstractions/project.json +++ b/src/Microsoft.DotNet.PlatformAbstractions/project.json @@ -1,6 +1,6 @@ { "description": "Abstractions for making code that uses file system and environment testable.", - "version": "2.0.0-beta-*", + "version": "2.0.0-preview1-*", "buildOptions": { "warningsAsErrors": true, "keyFile": "../../setuptools/Key.snk", From d9d0d01f614600e9f33d320f56d29ad7dc818453 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Thu, 30 Mar 2017 02:21:18 -0700 Subject: [PATCH 079/625] Updating CoreClr to preview1-25130-03 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 0e44c9f9..d51f1c65 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25130-01"; - public static readonly string JitVersion = "2.0.0-preview1-25130-01"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25130-03"; + public static readonly string JitVersion = "2.0.0-preview1-25130-03"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index ebca6b17..f5696036 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25129-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25130-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25130-03", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25129-02", "NETStandard.Library": "2.0.0-beta-25129-01" From c52be313e5e45ced7496cc9334222cbf70122653 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Thu, 30 Mar 2017 06:18:30 -0700 Subject: [PATCH 080/625] Updating CoreClr, Standard to preview1-25130-03, beta-25130-01 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 0e44c9f9..d51f1c65 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25130-01"; - public static readonly string JitVersion = "2.0.0-preview1-25130-01"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25130-03"; + public static readonly string JitVersion = "2.0.0-preview1-25130-03"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index ebca6b17..726ec17c 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25129-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25130-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25130-03", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-beta-25129-02", - "NETStandard.Library": "2.0.0-beta-25129-01" + "NETStandard.Library": "2.0.0-beta-25130-01" }, "frameworks": { "netcoreapp2.0": {} From 6aa5b84b5443395e2b94cacbebd1a40a525a7890 Mon Sep 17 00:00:00 2001 From: Davis Goodin Date: Thu, 30 Mar 2017 12:17:54 -0500 Subject: [PATCH 081/625] Dummy commit to kick off a build (#1895) --- Documentation/dummy.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/dummy.txt b/Documentation/dummy.txt index efb87735..15ecef62 100644 --- a/Documentation/dummy.txt +++ b/Documentation/dummy.txt @@ -1 +1 @@ -3/22/2017 +3/30/2017 12:12:53 PM From a6e01d90dc1fd0a98d1396d779d5c3a5049c449c Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 30 Mar 2017 13:18:05 -0500 Subject: [PATCH 082/625] Return null from DependencyContext.Default when Assembly.GetEntryAssembly returns null. Fix #1017 --- global.json | 3 ++- .../DependencyContext.cs | 8 +++++++- .../DependencyContextLoader.cs | 4 ++-- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/global.json b/global.json index 31b863c3..30ce72c4 100644 --- a/global.json +++ b/global.json @@ -1,3 +1,4 @@ { - "projects": [ "src", "test", "setuptools", "build_projects" ] + "projects": [ "src", "test", "setuptools", "build_projects" ], + "sdk": { "version": "1.0.0-preview2-003121" } } diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContext.cs b/src/Microsoft.Extensions.DependencyModel/DependencyContext.cs index 18cc251a..4942e6a3 100644 --- a/src/Microsoft.Extensions.DependencyModel/DependencyContext.cs +++ b/src/Microsoft.Extensions.DependencyModel/DependencyContext.cs @@ -81,7 +81,13 @@ namespace Microsoft.Extensions.DependencyModel #if !NETSTANDARD1_3 private static DependencyContext LoadDefault() { - return DependencyContextLoader.Default.Load(Assembly.GetEntryAssembly()); + var entryAssembly = Assembly.GetEntryAssembly(); + if (entryAssembly == null) + { + return null; + } + + return Load(entryAssembly); } public static DependencyContext Load(Assembly assembly) diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs b/src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs index 8db8004e..4ebac1da 100644 --- a/src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs +++ b/src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs @@ -41,12 +41,12 @@ namespace Microsoft.Extensions.DependencyModel public static DependencyContextLoader Default { get; } = new DependencyContextLoader(); - internal virtual bool IsEntryAssembly(Assembly assembly) + private static bool IsEntryAssembly(Assembly assembly) { return assembly.Equals(Assembly.GetEntryAssembly()); } - internal virtual Stream GetResourceStream(Assembly assembly, string name) + private static Stream GetResourceStream(Assembly assembly, string name) { return assembly.GetManifestResourceStream(name); } From 30b4d309c0b12e2949f35f1c3550f057a5d84b60 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 30 Mar 2017 16:32:46 -0500 Subject: [PATCH 083/625] Remove legacy, unused properties. Fix #617 --- src/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs b/src/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs index bf9342eb..bf44b670 100644 --- a/src/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs +++ b/src/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs @@ -67,15 +67,8 @@ namespace Microsoft.Extensions.DependencyModel RuntimeAssemblyGroups = runtimeAssemblyGroups; ResourceAssemblies = resourceAssemblies.ToArray(); NativeLibraryGroups = nativeLibraryGroups; - - Assemblies = new RuntimeAssembly[0]; - NativeLibraries = new string[0]; } - // Temporary (legacy) properties: https://github.com/dotnet/cli/issues/1998 - public IReadOnlyList Assemblies { get; } - public IReadOnlyList NativeLibraries { get; } - public IReadOnlyList RuntimeAssemblyGroups { get; } public IReadOnlyList NativeLibraryGroups { get; } From 5d6b1ec088a0fcc98816859d663cd548b6ee75ce Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 30 Mar 2017 17:13:31 -0500 Subject: [PATCH 084/625] Use correct package cache environment variable name. Fix #622. Also remove hash check for loading assemblies from the package cache. This matches the 2.0 dotnet host behavior changed in #1330. --- ...icrosoft.DotNet.PlatformAbstractions.xproj | 4 +-- ...PackageCacheCompilationAssemblyResolver.cs | 27 +++--------------- .../PackageCacheResolverTest.cs | 28 +++++++++++++------ 3 files changed, 25 insertions(+), 34 deletions(-) diff --git a/src/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.xproj b/src/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.xproj index a98926c4..6d9fb1e6 100644 --- a/src/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.xproj +++ b/src/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.xproj @@ -8,8 +8,8 @@ 2ccdcd52-50d0-47aa-8f37-15a1ef3ec04a Microsoft.DotNet.PlatformAbstractions - .\obj - .\bin\ + ..\..\artifacts\obj\$(MSBuildProjectName) + ..\..\artifacts\bin diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/PackageCacheCompilationAssemblyResolver.cs b/src/Microsoft.Extensions.DependencyModel/Resolution/PackageCacheCompilationAssemblyResolver.cs index 6b5d4554..148544be 100644 --- a/src/Microsoft.Extensions.DependencyModel/Resolution/PackageCacheCompilationAssemblyResolver.cs +++ b/src/Microsoft.Extensions.DependencyModel/Resolution/PackageCacheCompilationAssemblyResolver.cs @@ -3,11 +3,10 @@ using System; using System.Collections.Generic; -using System.IO; namespace Microsoft.Extensions.DependencyModel.Resolution { - public class PackageCacheCompilationAssemblyResolver: ICompilationAssemblyResolver + public class PackageCacheCompilationAssemblyResolver : ICompilationAssemblyResolver { private readonly IFileSystem _fileSystem; private readonly string _packageCacheDirectory; @@ -42,29 +41,11 @@ namespace Microsoft.Extensions.DependencyModel.Resolution if (!string.IsNullOrEmpty(_packageCacheDirectory)) { - var hashSplitterPos = library.Hash.IndexOf('-'); - if (hashSplitterPos <= 0 || hashSplitterPos == library.Hash.Length - 1) - { - throw new InvalidOperationException($"Invalid hash entry '{library.Hash}' for package '{library.Name}'"); - } - string packagePath; if (ResolverUtils.TryResolvePackagePath(_fileSystem, library, _packageCacheDirectory, out packagePath)) { - string cacheHashFileName = library.HashPath; - if (string.IsNullOrEmpty(cacheHashFileName)) - { - var hashAlgorithm = library.Hash.Substring(0, hashSplitterPos); - cacheHashFileName = $"{library.Name}.{library.Version}.nupkg.{hashAlgorithm}"; - } - var cacheHashPath = Path.Combine(packagePath, cacheHashFileName); - - if (_fileSystem.File.Exists(cacheHashPath) && - _fileSystem.File.ReadAllText(cacheHashPath) == library.Hash.Substring(hashSplitterPos + 1)) - { - assemblies.AddRange(ResolverUtils.ResolveFromPackagePath(_fileSystem, library, packagePath)); - return true; - } + assemblies.AddRange(ResolverUtils.ResolveFromPackagePath(_fileSystem, library, packagePath)); + return true; } } return false; @@ -72,7 +53,7 @@ namespace Microsoft.Extensions.DependencyModel.Resolution internal static string GetDefaultPackageCacheDirectory(IEnvironment environment) { - return environment.GetEnvironmentVariable("DOTNET_PACKAGES_CACHE"); + return environment.GetEnvironmentVariable("DOTNET_HOSTING_OPTIMIZATION_CACHE"); } } } \ No newline at end of file diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/PackageCacheResolverTest.cs b/test/Microsoft.Extensions.DependencyModel.Tests/PackageCacheResolverTest.cs index 3eac5e6e..524d455d 100644 --- a/test/Microsoft.Extensions.DependencyModel.Tests/PackageCacheResolverTest.cs +++ b/test/Microsoft.Extensions.DependencyModel.Tests/PackageCacheResolverTest.cs @@ -40,19 +40,28 @@ namespace Microsoft.Extensions.DependencyModel.Tests [InlineData("INVALIDHASHVALUE")] [InlineData("INVALIDHASHVALUE-")] [InlineData("-INVALIDHASHVALUE")] - public void FailsOnInvalidHash(string hash) + public void IgnoresInvalidHash(string hash) { - var resolver = new PackageCacheCompilationAssemblyResolver(FileSystemMockBuilder.Empty, CachePath); + var packagePath = GetPackagesPath(F.DefaultPackageName, F.DefaultVersion); + var fileSystem = FileSystemMockBuilder.Create() + .AddFile( + GetHashFilePath(packagePath), + F.DefaultHashValue + ) + .AddFiles(packagePath, F.DefaultAssemblies) + .Build(); + + var resolver = new PackageCacheCompilationAssemblyResolver(fileSystem, CachePath); + var assemblies = new List(); var library = F.Create(hash: hash); - var exception = Assert.Throws(() => resolver.TryResolveAssemblyPaths(library, null)); - exception.Message.Should() - .Contain(library.Hash) - .And.Contain(library.Name); + resolver.TryResolveAssemblyPaths(library, assemblies) + .Should().BeTrue(); + assemblies.Should().NotBeEmpty(); } [Fact] - public void ChecksHashFile() + public void IgnoresHashFile() { var packagePath = GetPackagesPath(F.DefaultPackageName, F.DefaultVersion); var fileSystem = FileSystemMockBuilder.Create() @@ -67,7 +76,8 @@ namespace Microsoft.Extensions.DependencyModel.Tests var assemblies = new List(); var result = resolver.TryResolveAssemblyPaths(F.Create(), assemblies); - result.Should().BeFalse(); + result.Should().BeTrue(); + assemblies.Should().NotBeEmpty(); } [Fact] @@ -171,7 +181,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests private IEnvironment GetDefaultEnvironment() { return EnvironmentMockBuilder.Create() - .AddVariable("DOTNET_PACKAGES_CACHE", CachePath) + .AddVariable("DOTNET_HOSTING_OPTIMIZATION_CACHE", CachePath) .Build(); } From 262df6165829969a0afc95c2ce96e160ea439bed Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Fri, 31 Mar 2017 10:23:48 -0500 Subject: [PATCH 085/625] DependencyContextLoader should load all dependency files given to it After dotnet/sdk#1053 is merged, it is possible for an app to run on the shared framework, but not be "portable". DependencyContextLoader should always load the "runtime" context, if it is present. Also, with #1597, there may be other deps files for the app. It should load those as well. Fix #1886 --- .../DependencyContextLoader.cs | 43 ++-- .../DependencyContextPaths.cs | 32 ++- .../AppBaseResolverTests.cs | 5 +- .../DependencyContextLoaderTests.cs | 236 +++++------------- .../DependencyContextPathsTests.cs | 65 +++++ .../DependencyContextTests.cs | 186 +++++++++++++- 6 files changed, 364 insertions(+), 203 deletions(-) create mode 100644 test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextPathsTests.cs diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs b/src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs index 4ebac1da..2cdeb53e 100644 --- a/src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs +++ b/src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs @@ -1,10 +1,11 @@ -using System; +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; -using System.Linq; using System.Reflection; -using System.Threading.Tasks; #if !NETSTANDARD1_3 @@ -16,12 +17,14 @@ namespace Microsoft.Extensions.DependencyModel private readonly string _entryPointDepsLocation; private readonly string _runtimeDepsLocation; + private readonly IEnumerable _extraDepsLocations; private readonly IFileSystem _fileSystem; private readonly Func _jsonReaderFactory; public DependencyContextLoader() : this( DependencyContextPaths.Current.Application, DependencyContextPaths.Current.SharedRuntime, + DependencyContextPaths.Current.ExtraPaths, FileSystemWrapper.Default, () => new DependencyContextJsonReader()) { @@ -30,11 +33,13 @@ namespace Microsoft.Extensions.DependencyModel internal DependencyContextLoader( string entryPointDepsLocation, string runtimeDepsLocation, + IEnumerable extraDepsLocations, IFileSystem fileSystem, Func jsonReaderFactory) { _entryPointDepsLocation = entryPointDepsLocation; _runtimeDepsLocation = runtimeDepsLocation; + _extraDepsLocations = extraDepsLocations; _fileSystem = fileSystem; _jsonReaderFactory = jsonReaderFactory; } @@ -71,13 +76,22 @@ namespace Microsoft.Extensions.DependencyModel context = LoadAssemblyContext(assembly, reader); } - if (context?.Target.IsPortable == true) + if (context != null) { var runtimeContext = LoadRuntimeContext(reader); if (runtimeContext != null) { context = context.Merge(runtimeContext); } + + foreach (var extraPath in _extraDepsLocations) + { + var extraContext = LoadContext(reader, extraPath); + if (extraContext != null) + { + context = context.Merge(extraContext); + } + } } } return context; @@ -85,23 +99,20 @@ namespace Microsoft.Extensions.DependencyModel private DependencyContext LoadEntryAssemblyContext(IDependencyContextReader reader) { - if (!string.IsNullOrEmpty(_entryPointDepsLocation)) - { - Debug.Assert(File.Exists(_entryPointDepsLocation)); - using (var stream = _fileSystem.File.OpenRead(_entryPointDepsLocation)) - { - return reader.Read(stream); - } - } - return null; + return LoadContext(reader, _entryPointDepsLocation); } private DependencyContext LoadRuntimeContext(IDependencyContextReader reader) { - if (!string.IsNullOrEmpty(_runtimeDepsLocation)) + return LoadContext(reader, _runtimeDepsLocation); + } + + private DependencyContext LoadContext(IDependencyContextReader reader, string location) + { + if (!string.IsNullOrEmpty(location)) { - Debug.Assert(File.Exists(_runtimeDepsLocation)); - using (var stream = _fileSystem.File.OpenRead(_runtimeDepsLocation)) + Debug.Assert(_fileSystem.File.Exists(location)); + using (var stream = _fileSystem.File.OpenRead(location)) { return reader.Read(stream); } diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs b/src/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs index 6ea5b63e..938dd366 100644 --- a/src/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs +++ b/src/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs @@ -1,4 +1,9 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + using System; +using System.Collections.Generic; +using System.Linq; #if !NETSTANDARD1_3 @@ -7,6 +12,7 @@ namespace Microsoft.Extensions.DependencyModel internal class DependencyContextPaths { private static readonly string DepsFilesProperty = "APP_CONTEXT_DEPS_FILES"; + private static readonly string FxDepsFileProperty = "FX_DEPS_FILE"; public static DependencyContextPaths Current { get; } = GetCurrent(); @@ -14,25 +20,41 @@ namespace Microsoft.Extensions.DependencyModel public string SharedRuntime { get; } - public DependencyContextPaths(string application, string sharedRuntime) + public IEnumerable ExtraPaths { get; } + + public DependencyContextPaths(string application, string sharedRuntime, IEnumerable extraPaths) { Application = application; SharedRuntime = sharedRuntime; + ExtraPaths = extraPaths ?? Enumerable.Empty(); } private static DependencyContextPaths GetCurrent() { #if NETSTANDARD1_6 var deps = AppContext.GetData(DepsFilesProperty); + var fxDeps = AppContext.GetData(FxDepsFileProperty); #else var deps = AppDomain.CurrentDomain.GetData(DepsFilesProperty); + var fxDeps = AppDomain.CurrentDomain.GetData(FxDepsFileProperty); #endif - var files = (deps as string)?.Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); + return Create(deps as string, fxDeps as string); + } + + internal static DependencyContextPaths Create(string depsFiles, string sharedRuntime) + { + var files = depsFiles?.Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); + var application = files != null && files.Length > 0 ? files[0] : null; + + var extraPaths = files? + .Skip(1) // the application path + .Where(path => path != sharedRuntime) + .ToArray(); return new DependencyContextPaths( - files != null && files.Length > 0 ? files[0] : null, - files != null && files.Length > 1 ? files[1] : null - ); + application, + sharedRuntime, + extraPaths); } } } diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs b/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs index c3fd2558..f9336276 100644 --- a/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs +++ b/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs @@ -4,12 +4,10 @@ using System; using System.Collections.Generic; using System.IO; -using Microsoft.Extensions.EnvironmentAbstractions; using Microsoft.Extensions.DependencyModel.Resolution; using Xunit; using FluentAssertions; - namespace Microsoft.Extensions.DependencyModel.Tests { public class AppBaseResolverTests @@ -20,7 +18,8 @@ namespace Microsoft.Extensions.DependencyModel.Tests private static string SharedFxPath = Path.Combine("shared", "fx"); private static string SharedFxPathRefs = Path.Combine(SharedFxPath, "refs"); - private static DependencyContextPaths DependencyContextPaths = new DependencyContextPaths(null, Path.Combine(SharedFxPath, "deps.json")); + private static DependencyContextPaths DependencyContextPaths = + new DependencyContextPaths(null, Path.Combine(SharedFxPath, "deps.json"), null); [Fact] public void ResolvesProjectType() diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextLoaderTests.cs b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextLoaderTests.cs index 10897a1c..47662337 100644 --- a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextLoaderTests.cs +++ b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextLoaderTests.cs @@ -1,10 +1,8 @@ -using System; -using System.Collections.Generic; -using System.Globalization; -using System.Linq; -using System.Threading.Tasks; -using Microsoft.Extensions.DependencyModel; +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + using FluentAssertions; +using System.Reflection; using Xunit; namespace Microsoft.Extensions.DependencyModel.Tests @@ -12,179 +10,69 @@ namespace Microsoft.Extensions.DependencyModel.Tests public class DependencyContextLoaderTests { [Fact] - public void MergeMergesLibraries() + public void LoadLoadsExtraPaths() { - var compilationLibraries = new[] - { - CreateCompilation("PackageA"), - CreateCompilation("PackageB"), - }; + string appDepsPath = "appPath.deps.json"; + string fxDepsPath = "fxPath.deps.json"; + string extraDepsPath = "extra1.deps.json"; - var runtimeLibraries = new[] - { - CreateRuntime("PackageA"), - CreateRuntime("PackageB"), - }; + var fileSystem = FileSystemMockBuilder.Create() + .AddFile( + appDepsPath, +@"{ + ""runtimeTarget"": { + ""name"":"".NETCoreApp,Version=v1.0/osx.10.10-x64"", + ""signature"":""target-signature"" + }, + ""targets"": { + "".NETCoreApp,Version=v1.0/osx.10.10-x64"": {}, + } +}") + .AddFile( + fxDepsPath, +@"{ + ""targets"": { + "".NETCoreApp,Version=v1.0/osx.10.10-x64"": { + + }, + } +}") + .AddFile( + extraDepsPath, +@" + { + ""targets"": { + "".NETStandard,Version=v1.5"": { + ""System.Banana/1.0.0"": { + ""runtimeTargets"": { + ""runtimes/unix/Banana.dll"": { ""rid"": ""unix"", ""assetType"": ""runtime"" }, + ""runtimes/win7/Banana.dll"": { ""rid"": ""win7"", ""assetType"": ""runtime"" }, - var compilationLibrariesRedist = new[] - { - CreateCompilation("PackageB"), - CreateCompilation("PackageC"), - }; + ""runtimes/native/win7/Apple.dll"": { ""rid"": ""win7"", ""assetType"": ""native"" }, + ""runtimes/native/unix/libapple.so"": { ""rid"": ""unix"", ""assetType"": ""native"" } + } + } + } + }, + ""libraries"": { + ""System.Banana/1.0.0"": { + ""type"": ""package"", + ""serviceable"": false, + ""sha512"": ""HASH-System.Banana"" + }, + } + }") + .Build(); - var runtimeLibrariesRedist = new[] - { - CreateRuntime("PackageB"), - CreateRuntime("PackageC"), - }; + var loader = new DependencyContextLoader( + appDepsPath, + fxDepsPath, + new[] { extraDepsPath }, + fileSystem, + () => new DependencyContextJsonReader()); - var context = new DependencyContext( - CreateTargetInfo(), - CompilationOptions.Default, - compilationLibraries, - runtimeLibraries, - new RuntimeFallbacks[] { }); - - var contextRedist = new DependencyContext( - CreateTargetInfo(), - CompilationOptions.Default, - compilationLibrariesRedist, - runtimeLibrariesRedist, - new RuntimeFallbacks[] { }); - - var result = context.Merge(contextRedist); - - result.CompileLibraries.Should().BeEquivalentTo(new[] - { - compilationLibraries[0], - compilationLibraries[1], - compilationLibrariesRedist[1], - }); - - result.RuntimeLibraries.Should().BeEquivalentTo(new[] - { - runtimeLibraries[0], - runtimeLibraries[1], - runtimeLibrariesRedist[1], - }); - } - - [Fact] - public void MergeMergesLibrariesWithDifferentCasing() - { - var compilationLibraries = new[] - { - CreateCompilation("PaCkAgEA"), - }; - - var runtimeLibraries = new[] - { - CreateRuntime("PaCkAgEA"), - }; - - var compilationLibrariesRedist = new[] - { - CreateCompilation("PackageA"), - }; - - var runtimeLibrariesRedist = new[] - { - CreateRuntime("PackageA"), - }; - - var context = new DependencyContext( - CreateTargetInfo(), - CompilationOptions.Default, - compilationLibraries, - runtimeLibraries, - new RuntimeFallbacks[] { }); - - var contextRedist = new DependencyContext( - CreateTargetInfo(), - CompilationOptions.Default, - compilationLibrariesRedist, - runtimeLibrariesRedist, - new RuntimeFallbacks[] { }); - - var result = context.Merge(contextRedist); - - result.CompileLibraries.Should().BeEquivalentTo(new[] - { - compilationLibraries[0] - }); - - result.RuntimeLibraries.Should().BeEquivalentTo(new[] - { - runtimeLibraries[0] - }); - } - - public void MergeMergesRuntimeGraph() - { - var context = new DependencyContext( - CreateTargetInfo(), - CompilationOptions.Default, - Enumerable.Empty(), - Enumerable.Empty(), - new RuntimeFallbacks[] - { - new RuntimeFallbacks("win8-x64", new [] { "win8" }), - }); - - var contextRedist = new DependencyContext( - CreateTargetInfo(), - CompilationOptions.Default, - Enumerable.Empty(), - Enumerable.Empty(), - new RuntimeFallbacks[] - { - new RuntimeFallbacks("win8", new [] { "win7-x64", "win7-x86" }), - }); - - var result = context.Merge(contextRedist); - result.RuntimeGraph.Should().Contain(g => g.Runtime == "win8-x64"). - Subject.Fallbacks.Should().BeEquivalentTo("win8"); - result.RuntimeGraph.Should().Contain(g => g.Runtime == "win8"). - Subject.Fallbacks.Should().BeEquivalentTo("win7-x64", "win7-x86"); - } - - private TargetInfo CreateTargetInfo() - { - return new TargetInfo( - "Framework", - "runtime", - "runtimeSignature", - true); - } - - private CompilationLibrary CreateCompilation(string name) - { - return new CompilationLibrary( - "project", - name, - "1.1.1", - "HASH", - new string[] { }, - new Dependency[] { }, - false, - "path", - "hashPath"); - } - - private RuntimeLibrary CreateRuntime(string name) - { - return new RuntimeLibrary( - "project", - name, - "1.1.1", - "HASH", - new RuntimeAssetGroup[] { }, - new RuntimeAssetGroup[] { }, - new ResourceAssembly[] { }, - new Dependency[] {}, - false, - "path", - "hashPath"); + var context = loader.Load(Assembly.GetEntryAssembly()); + context.RuntimeLibraries.Should().Contain(l => l.Name == "System.Banana"); } } } diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextPathsTests.cs b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextPathsTests.cs new file mode 100644 index 00000000..a498a31d --- /dev/null +++ b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextPathsTests.cs @@ -0,0 +1,65 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using FluentAssertions; +using Xunit; + +namespace Microsoft.Extensions.DependencyModel.Tests +{ + public class DependencyContextPathsTests + { + [Fact] + public void CreateWithNulls() + { + var paths = DependencyContextPaths.Create(null, null); + + paths.Application.Should().BeNull(); + paths.SharedRuntime.Should().BeNull(); + paths.ExtraPaths.Should().BeEmpty(); + } + + [Fact] + public void CreateWithNullFxDeps() + { + var paths = DependencyContextPaths.Create("foo.deps.json", null); + + paths.Application.Should().Be("foo.deps.json"); + paths.SharedRuntime.Should().BeNull(); + paths.ExtraPaths.Should().BeEmpty(); + } + + [Fact] + public void CreateWithDepsFilesContainingFxDeps() + { + var paths = DependencyContextPaths.Create("foo.deps.json;fx.deps.json", "fx.deps.json"); + + paths.Application.Should().Be("foo.deps.json"); + paths.SharedRuntime.Should().Be("fx.deps.json"); + paths.ExtraPaths.Should().BeEmpty(); + } + + [Fact] + public void CreateWithExtraContainingFxDeps() + { + var paths = DependencyContextPaths.Create( + "foo.deps.json;fx.deps.json;extra.deps.json;extra2.deps.json", + "fx.deps.json"); + + paths.Application.Should().Be("foo.deps.json"); + paths.SharedRuntime.Should().Be("fx.deps.json"); + paths.ExtraPaths.Should().BeEquivalentTo("extra.deps.json", "extra2.deps.json"); + } + + [Fact] + public void CreateWithExtraNotContainingFxDeps() + { + var paths = DependencyContextPaths.Create( + "foo.deps.json;extra.deps.json;extra2.deps.json", + "fx.deps.json"); + + paths.Application.Should().Be("foo.deps.json"); + paths.SharedRuntime.Should().Be("fx.deps.json"); + paths.ExtraPaths.Should().BeEquivalentTo("extra.deps.json", "extra2.deps.json"); + } + } +} diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextTests.cs b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextTests.cs index b4f6320d..a86d4584 100644 --- a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextTests.cs +++ b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextTests.cs @@ -1,10 +1,9 @@ -using FluentAssertions; -using System; -using System.Collections.Generic; +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using FluentAssertions; using System.IO; using System.Linq; -using System.Reflection; -using System.Threading.Tasks; using Xunit; namespace Microsoft.Extensions.DependencyModel.Tests @@ -139,5 +138,182 @@ namespace Microsoft.Extensions.DependencyModel.Tests new RuntimeFallbacks("osx-x64", "osx", "unix", "any", "base"), }); } + + [Fact] + public void MergeMergesLibraries() + { + var compilationLibraries = new[] + { + CreateCompilation("PackageA"), + CreateCompilation("PackageB"), + }; + + var runtimeLibraries = new[] + { + CreateRuntime("PackageA"), + CreateRuntime("PackageB"), + }; + + var compilationLibrariesRedist = new[] + { + CreateCompilation("PackageB"), + CreateCompilation("PackageC"), + }; + + var runtimeLibrariesRedist = new[] + { + CreateRuntime("PackageB"), + CreateRuntime("PackageC"), + }; + + var context = new DependencyContext( + CreateTargetInfo(), + CompilationOptions.Default, + compilationLibraries, + runtimeLibraries, + new RuntimeFallbacks[] { }); + + var contextRedist = new DependencyContext( + CreateTargetInfo(), + CompilationOptions.Default, + compilationLibrariesRedist, + runtimeLibrariesRedist, + new RuntimeFallbacks[] { }); + + var result = context.Merge(contextRedist); + + result.CompileLibraries.Should().BeEquivalentTo(new[] + { + compilationLibraries[0], + compilationLibraries[1], + compilationLibrariesRedist[1], + }); + + result.RuntimeLibraries.Should().BeEquivalentTo(new[] + { + runtimeLibraries[0], + runtimeLibraries[1], + runtimeLibrariesRedist[1], + }); + } + + [Fact] + public void MergeMergesLibrariesWithDifferentCasing() + { + var compilationLibraries = new[] + { + CreateCompilation("PaCkAgEA"), + }; + + var runtimeLibraries = new[] + { + CreateRuntime("PaCkAgEA"), + }; + + var compilationLibrariesRedist = new[] + { + CreateCompilation("PackageA"), + }; + + var runtimeLibrariesRedist = new[] + { + CreateRuntime("PackageA"), + }; + + var context = new DependencyContext( + CreateTargetInfo(), + CompilationOptions.Default, + compilationLibraries, + runtimeLibraries, + new RuntimeFallbacks[] { }); + + var contextRedist = new DependencyContext( + CreateTargetInfo(), + CompilationOptions.Default, + compilationLibrariesRedist, + runtimeLibrariesRedist, + new RuntimeFallbacks[] { }); + + var result = context.Merge(contextRedist); + + result.CompileLibraries.Should().BeEquivalentTo(new[] + { + compilationLibraries[0] + }); + + result.RuntimeLibraries.Should().BeEquivalentTo(new[] + { + runtimeLibraries[0] + }); + } + + [Fact] + public void MergeMergesRuntimeGraph() + { + var context = new DependencyContext( + CreateTargetInfo(), + CompilationOptions.Default, + Enumerable.Empty(), + Enumerable.Empty(), + new RuntimeFallbacks[] + { + new RuntimeFallbacks("win8-x64", new [] { "win8" }), + }); + + var contextRedist = new DependencyContext( + CreateTargetInfo(), + CompilationOptions.Default, + Enumerable.Empty(), + Enumerable.Empty(), + new RuntimeFallbacks[] + { + new RuntimeFallbacks("win8", new [] { "win7-x64", "win7-x86" }), + }); + + var result = context.Merge(contextRedist); + result.RuntimeGraph.Should().Contain(g => g.Runtime == "win8-x64"). + Subject.Fallbacks.Should().BeEquivalentTo("win8"); + result.RuntimeGraph.Should().Contain(g => g.Runtime == "win8"). + Subject.Fallbacks.Should().BeEquivalentTo("win7-x64", "win7-x86"); + } + + private TargetInfo CreateTargetInfo() + { + return new TargetInfo( + "Framework", + "runtime", + "runtimeSignature", + true); + } + + private CompilationLibrary CreateCompilation(string name) + { + return new CompilationLibrary( + "project", + name, + "1.1.1", + "HASH", + new string[] { }, + new Dependency[] { }, + false, + "path", + "hashPath"); + } + + private RuntimeLibrary CreateRuntime(string name) + { + return new RuntimeLibrary( + "project", + name, + "1.1.1", + "HASH", + new RuntimeAssetGroup[] { }, + new RuntimeAssetGroup[] { }, + new ResourceAssembly[] { }, + new Dependency[] { }, + false, + "path", + "hashPath"); + } } } From bdf83e3b633f837131a41ce007c20c2c642202a5 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Fri, 31 Mar 2017 09:22:14 -0700 Subject: [PATCH 086/625] Extract ID and VersionID independent of their order --- src/corehost/common/pal.unix.cpp | 32 +++++++++++++++++++++++--------- 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/src/corehost/common/pal.unix.cpp b/src/corehost/common/pal.unix.cpp index 5e749efe..622c60dd 100644 --- a/src/corehost/common/pal.unix.cpp +++ b/src/corehost/common/pal.unix.cpp @@ -347,7 +347,9 @@ pal::string_t pal::get_current_os_rid_platform() { pal::string_t line; pal::string_t strID(_X("ID=")); + pal::string_t valID; pal::string_t strVersionID(_X("VERSION_ID=")); + pal::string_t valVersionID; bool fFoundID = false, fFoundVersion = false; @@ -357,23 +359,35 @@ pal::string_t pal::get_current_os_rid_platform() // Loop until we are at the end of file while (!fsVersionFile.eof()) { - size_t pos = line.find(strID); - if ((pos != std::string::npos) && (pos == 0)) + // Look for ID if we have not found it already + if (!fFoundID) { - ridOS.append(line.substr(3)); - ridOS.append(_X(".")); - fFoundID = true; + size_t pos = line.find(strID); + if ((pos != std::string::npos) && (pos == 0)) + { + valID.append(line.substr(3)); + fFoundID = true; + } } - pos = line.find(strVersionID); - if ((pos != std::string::npos) && (pos == 0)) + // Look for VersionID if we have not found it already + if (!fFoundVersion) { - ridOS.append(line.substr(11)); - fFoundVersion = true; + size_t pos = line.find(strVersionID); + if ((pos != std::string::npos) && (pos == 0)) + { + valVersionID.append(line.substr(11)); + fFoundVersion = true; + } } if (fFoundID && fFoundVersion) { + // Form the RID using the values we got + ridOS.append(valID); + ridOS.append(_X(".")); + ridOS.append(valVersionID); + // Remove any double-quotes ridOS = trim_quotes(ridOS); break; From a08aa7df7631b138539dce49e87ac8b360adddf1 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 31 Mar 2017 11:16:38 -0700 Subject: [PATCH 087/625] Push symbols packages to a separate symbols feed --- build_projects/dotnet-host-build/NugetUtil.cs | 23 ++++---- .../dotnet-host-build/PublishTargets.cs | 19 ++++++- buildpipeline/Core-Setup-CrossBuild.json | 16 +++++- buildpipeline/Core-Setup-Linux.json | 9 ++- buildpipeline/Core-Setup-OSX-x64.json | 9 ++- .../Core-Setup-PortableLinux-x64.json | 11 +++- buildpipeline/Core-Setup-RHEL7-x64.json | 7 ++- .../Core-Setup-Signing-Windows-x64.json | 56 +++++++++++-------- .../Core-Setup-Signing-Windows-x86.json | 16 +++++- buildpipeline/Core-Setup-Windows-arm32.json | 9 ++- buildpipeline/Core-Setup-Windows-arm64.json | 9 ++- buildpipeline/pipeline.json | 1 + scripts/dockerrun.sh | 2 + 13 files changed, 134 insertions(+), 53 deletions(-) diff --git a/build_projects/dotnet-host-build/NugetUtil.cs b/build_projects/dotnet-host-build/NugetUtil.cs index 63cbca91..bebe79eb 100644 --- a/build_projects/dotnet-host-build/NugetUtil.cs +++ b/build_projects/dotnet-host-build/NugetUtil.cs @@ -1,3 +1,4 @@ +using System.Collections.Generic; using System.IO; using System.Linq; using System.Reflection; @@ -8,25 +9,25 @@ namespace Microsoft.DotNet.Cli.Build { public static class NuGetUtil { + public enum NuGetIncludePackageType + { + Standard = 1, + Symbols + } public static void PushPackages( string packageDirPath, string destinationUrl, string apiKey, - bool includeSymbolPackages) + NuGetIncludePackageType includePackageTypes) { - string[] paths; - if (includeSymbolPackages) + List paths = new List(); + if ((includePackageTypes & NuGetIncludePackageType.Standard) != 0) { - paths = new[] - { - Path.Combine(packageDirPath, "*.nupkg") - }; + paths.AddRange(Directory.GetFiles(packageDirPath, "*.nupkg").Where(p => !p.EndsWith(".symbols.nupkg"))); } - else + if ((includePackageTypes & NuGetIncludePackageType.Symbols) != 0) { - paths = Directory.GetFiles(packageDirPath, "*.nupkg") - .Where(path => !path.EndsWith(".symbols.nupkg")) - .ToArray(); + paths.AddRange(Directory.GetFiles(packageDirPath, "*.symbols.nupkg")); } foreach (var path in paths) diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index 46f48e7f..4efe8426 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -63,9 +63,15 @@ namespace Microsoft.DotNet.Host.Build [BuildArchitectures(BuildArchitecture.x64)] public static BuildTargetResult PublishDotnetDebToolPackage(BuildTargetContext c) { - string nugetFeedUrl = EnvVars.EnsureVariable("CLI_NUGET_FEED_URL"); string apiKey = EnvVars.EnsureVariable("CLI_NUGET_API_KEY"); - NuGetUtil.PushPackages(Dirs.Packages, nugetFeedUrl, apiKey, IncludeSymbolPackages); + + string nugetFeedUrl = EnvVars.EnsureVariable("CLI_NUGET_FEED_URL"); + NuGetUtil.PushPackages(Dirs.Packages, nugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Standard); + if(IncludeSymbolPackages) + { + string symbolsNugetFeedUrl = EnvVars.EnsureVariable("CLI_NUGET_SYMBOLS_FEED_URL"); + NuGetUtil.PushPackages(Dirs.PackagesNoRID, symbolsNugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Symbols); + } return c.Success(); } @@ -177,8 +183,15 @@ namespace Microsoft.DotNet.Host.Build AzurePublisherTool.DownloadFilesWithExtension(hostBlob, ".nupkg", Dirs.PackagesNoRID); string nugetFeedUrl = EnvVars.EnsureVariable("NUGET_FEED_URL"); + string apiKey = EnvVars.EnsureVariable("NUGET_API_KEY"); - NuGetUtil.PushPackages(Dirs.PackagesNoRID, nugetFeedUrl, apiKey, IncludeSymbolPackages); + NuGetUtil.PushPackages(Dirs.PackagesNoRID, nugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Standard); + + if(IncludeSymbolPackages) + { + string symbolsNugetFeedUrl = EnvVars.EnsureVariable("NUGET_SYMBOLS_FEED_URL"); + NuGetUtil.PushPackages(Dirs.PackagesNoRID, symbolsNugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Symbols); + } string githubAuthToken = EnvVars.EnsureVariable("GITHUB_PASSWORD"); VersionRepoUpdater repoUpdater = new VersionRepoUpdater(githubAuthToken); diff --git a/buildpipeline/Core-Setup-CrossBuild.json b/buildpipeline/Core-Setup-CrossBuild.json index 401f9c45..fc33a7ef 100644 --- a/buildpipeline/Core-Setup-CrossBuild.json +++ b/buildpipeline/Core-Setup-CrossBuild.json @@ -125,7 +125,7 @@ }, "inputs": { "scriptPath": "$(PB_RepoName)/scripts/docker-as-current-user.sh", - "args": "run --name $(PB_DockerContainerName) --rm --privileged -v $(System.DefaultWorkingDirectory)/$(PB_RepoName):$(PB_GitDirectory) -w $(PB_GitDirectory) -e HOME -e ROOTFS_DIR -e PUBLISH_TO_AZURE_BLOB -e CONNECTION_STRING -e CLI_NUGET_FEED_URL -e CLI_NUGET_API_KEY -e NUGET_FEED_URL -e NUGET_API_KEY -e GITHUB_PASSWORD $(PB_DockerImageName) ./build.sh $(CommonArguments) $(BuildArguments) $(portableLinux) --env-vars \"DISABLE_CROSSGEN=1,TARGETPLATFORM=$(PB_Architecture),TARGETRID=$(TargetRid),CROSS=1\"", + "args": "run --name $(PB_DockerContainerName) --rm --privileged -v $(System.DefaultWorkingDirectory)/$(PB_RepoName):$(PB_GitDirectory) -w $(PB_GitDirectory) -e HOME -e ROOTFS_DIR -e PUBLISH_TO_AZURE_BLOB -e CONNECTION_STRING -e CLI_NUGET_FEED_URL -e CLI_NUGET_SYMBOLS_FEED_URL -e CLI_NUGET_API_KEY -e NUGET_FEED_URL -e NUGET_SYMBOLS_FEED_URL -e NUGET_API_KEY -e GITHUB_PASSWORD $(PB_DockerImageName) ./build.sh $(CommonArguments) $(BuildArguments) $(portableLinux) --env-vars \"DISABLE_CROSSGEN=1,TARGETPLATFORM=$(PB_Architecture),TARGETRID=$(TargetRid),CROSS=1\"", "disableAutoCwd": "false", "cwd": "", "failOnStandardError": "false" @@ -169,6 +169,15 @@ } ], "options": [ + { + "enabled": false, + "definition": { + "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" + }, + "inputs": { + "additionalFields": "{}" + } + }, { "enabled": false, "definition": { @@ -297,6 +306,9 @@ }, "PB_CleanAgent": { "value": "true" + }, + "NUGET_SYMBOLS_FEED_URL": { + "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" } }, "demands": [ @@ -361,6 +373,6 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097529 + "revision": 418097620 } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Linux.json b/buildpipeline/Core-Setup-Linux.json index b7317ff4..d42d73c9 100644 --- a/buildpipeline/Core-Setup-Linux.json +++ b/buildpipeline/Core-Setup-Linux.json @@ -234,6 +234,9 @@ }, "DockerHost_ToolsDirectory": { "value": "$(DockerHost_Sandbox)/Tools" + }, + "NUGET_SYMBOLS_FEED_URL": { + "value": " https://dotnet.myget.org/F/dotnet-core/api/v2/package" } }, "demands": [ @@ -267,7 +270,9 @@ "cloneUrl": "https://github.com/dotnet/core-setup.git", "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", "gitLfsSupport": "false", - "fetchDepth": "0" + "skipSyncSource": "false", + "fetchDepth": "0", + "cleanOptions": "0" }, "id": "https://github.com/dotnet/core-setup.git", "type": "GitHub", @@ -296,6 +301,6 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097459 + "revision": 418097620 } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-OSX-x64.json b/buildpipeline/Core-Setup-OSX-x64.json index ceeaca3e..985e12bf 100644 --- a/buildpipeline/Core-Setup-OSX-x64.json +++ b/buildpipeline/Core-Setup-OSX-x64.json @@ -142,6 +142,9 @@ }, "GITHUB_PASSWORD": { "value": "PassedViaPipeBuild" + }, + "NUGET_SYMBOLS_FEED_URL": { + "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" } }, "demands": [ @@ -175,7 +178,9 @@ "cloneUrl": "https://github.com/dotnet/core-setup.git", "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", "gitLfsSupport": "false", - "fetchDepth": "0" + "skipSyncSource": "false", + "fetchDepth": "0", + "cleanOptions": "0" }, "id": "https://github.com/dotnet/core-setup.git", "type": "GitHub", @@ -204,6 +209,6 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097459 + "revision": 418097620 } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-PortableLinux-x64.json b/buildpipeline/Core-Setup-PortableLinux-x64.json index a9447ba5..2f3fc1bb 100644 --- a/buildpipeline/Core-Setup-PortableLinux-x64.json +++ b/buildpipeline/Core-Setup-PortableLinux-x64.json @@ -215,6 +215,9 @@ }, "DockerHost_ToolsDirectory": { "value": "$(DockerHost_Sandbox)/Tools" + }, + "NUGET_SYMBOLS_FEED_URL": { + "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" } }, "demands": [ @@ -225,7 +228,7 @@ "branches": [ "+refs/heads/*" ], - "artifacts": [ ], + "artifacts": [], "artifactTypesToDelete": [ "FilePath", "SymbolStore" @@ -248,7 +251,9 @@ "cloneUrl": "https://github.com/dotnet/core-setup.git", "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", "gitLfsSupport": "false", - "fetchDepth": "0" + "skipSyncSource": "false", + "fetchDepth": "0", + "cleanOptions": "0" }, "id": "https://github.com/dotnet/core-setup.git", "type": "GitHub", @@ -277,6 +282,6 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097459 + "revision": 418097620 } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-RHEL7-x64.json b/buildpipeline/Core-Setup-RHEL7-x64.json index 67a31b84..6ba86c9b 100644 --- a/buildpipeline/Core-Setup-RHEL7-x64.json +++ b/buildpipeline/Core-Setup-RHEL7-x64.json @@ -215,6 +215,9 @@ }, "DockerHost_ToolsDirectory": { "value": "$(DockerHost_Sandbox)/Tools" + }, + "NUGET_SYMBOLS_FEED_URL": { + "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" } }, "demands": [ @@ -225,7 +228,7 @@ "branches": [ "+refs/heads/*" ], - "artifacts": [ ], + "artifacts": [], "artifactTypesToDelete": [ "FilePath", "SymbolStore" @@ -279,6 +282,6 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097568 + "revision": 418097620 } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Signing-Windows-x64.json b/buildpipeline/Core-Setup-Signing-Windows-x64.json index 5b664cc6..fb2f1edb 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x64.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x64.json @@ -102,26 +102,6 @@ "msbuildLocation": "" } }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "PackagePkgProjects", - "timeoutInMinutes": 0, - "task": { - "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "scriptType": "filePath", - "scriptName": "build_projects/dotnet-host-build/build.ps1", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,PackagePkgProjects,BuildProjectsForNuGetPackages", - "inlineScript": "# You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host \"Hello World\"", - "workingFolder": "", - "failOnStandardError": "true" - } - }, { "enabled": true, "continueOnError": false, @@ -195,6 +175,26 @@ "msbuildLocation": "" } }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "PackagePkgProjects", + "timeoutInMinutes": 0, + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "filePath", + "scriptName": "build_projects/dotnet-host-build/build.ps1", + "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,PackagePkgProjects,BuildProjectsForNuGetPackages", + "inlineScript": "# You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host \"Hello World\"", + "workingFolder": "", + "failOnStandardError": "true" + } + }, { "enabled": true, "continueOnError": false, @@ -386,6 +386,15 @@ } ], "options": [ + { + "enabled": false, + "definition": { + "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" + }, + "inputs": { + "additionalFields": "{}" + } + }, { "enabled": false, "definition": { @@ -466,6 +475,9 @@ }, "system.debug": { "value": "false" + }, + "NUGET_SYMBOLS_FEED_URL": { + "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" } }, "demands": [ @@ -476,7 +488,7 @@ "branches": [ "+refs/heads/*" ], - "artifacts": [ ], + "artifacts": [], "artifactTypesToDelete": [ "FilePath", "SymbolStore" @@ -530,6 +542,6 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097471 + "revision": 418097620 } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Signing-Windows-x86.json b/buildpipeline/Core-Setup-Signing-Windows-x86.json index acad1c37..11ebf4d7 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x86.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x86.json @@ -359,6 +359,15 @@ } ], "options": [ + { + "enabled": false, + "definition": { + "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" + }, + "inputs": { + "additionalFields": "{}" + } + }, { "enabled": false, "definition": { @@ -439,6 +448,9 @@ }, "system.debug": { "value": "false" + }, + "NUGET_SYMBOLS_FEED_URL": { + "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" } }, "demands": [ @@ -449,7 +461,7 @@ "branches": [ "+refs/heads/*" ], - "artifacts": [ ], + "artifacts": [], "artifactTypesToDelete": [ "FilePath", "SymbolStore" @@ -503,6 +515,6 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097471 + "revision": 418097620 } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Windows-arm32.json b/buildpipeline/Core-Setup-Windows-arm32.json index c19ba678..6bf3832b 100644 --- a/buildpipeline/Core-Setup-Windows-arm32.json +++ b/buildpipeline/Core-Setup-Windows-arm32.json @@ -106,6 +106,9 @@ "PUBLISH_TO_AZURE_BLOB": { "value": "true", "allowOverride": true + }, + "NUGET_SYMBOLS_FEED_URL": { + "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" } }, "demands": [ @@ -141,7 +144,9 @@ "cloneUrl": "https://github.com/dotnet/core-setup.git", "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", "gitLfsSupport": "false", - "fetchDepth": "0" + "skipSyncSource": "false", + "fetchDepth": "0", + "cleanOptions": "0" }, "id": "https://github.com/dotnet/core-setup.git", "type": "GitHub", @@ -170,6 +175,6 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097459 + "revision": 418097620 } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Windows-arm64.json b/buildpipeline/Core-Setup-Windows-arm64.json index 947a4c74..a04da4db 100644 --- a/buildpipeline/Core-Setup-Windows-arm64.json +++ b/buildpipeline/Core-Setup-Windows-arm64.json @@ -106,6 +106,9 @@ "PUBLISH_TO_AZURE_BLOB": { "value": "true", "allowOverride": true + }, + "NUGET_SYMBOLS_FEED_URL": { + "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" } }, "demands": [ @@ -141,7 +144,9 @@ "cloneUrl": "https://github.com/dotnet/core-setup.git", "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", "gitLfsSupport": "false", - "fetchDepth": "0" + "skipSyncSource": "false", + "fetchDepth": "0", + "cleanOptions": "0" }, "id": "https://github.com/dotnet/core-setup.git", "type": "GitHub", @@ -170,6 +175,6 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097459 + "revision": 418097620 } } \ No newline at end of file diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 8d08e316..fe8fb133 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -81,6 +81,7 @@ "REPO_USER": "dotnet", "REPO_SERVER": "azure-apt-cat.cloudapp.net", "CLI_NUGET_FEED_URL": "https://dotnet.myget.org/F/cli-deps", + "CLI_NUGET_SYMBOLS_FEED_URL": "https://dotnet.myget.org/F/cli-deps/symbols" }, "ReportingParameters": { "OperatingSystem": "Ubuntu 14.04", diff --git a/scripts/dockerrun.sh b/scripts/dockerrun.sh index a9e89f4d..80f3d089 100755 --- a/scripts/dockerrun.sh +++ b/scripts/dockerrun.sh @@ -146,9 +146,11 @@ docker run $INTERACTIVE -t --rm --sig-proxy=true \ -e DOCKER_HUB_REPO \ -e DOCKER_HUB_TRIGGER_TOKEN \ -e NUGET_FEED_URL \ + -e NUGET_SYMBOLS_FEED_URL \ -e NUGET_API_KEY \ -e GITHUB_PASSWORD \ -e CLI_NUGET_FEED_URL \ + -e CLI_NUGET_SYMBOLS_FEED_URL \ -e CLI_NUGET_API_KEY \ $DOTNET_BUILD_CONTAINER_TAG \ $BUILD_COMMAND "$@" From 10fc1ee3cce378db9ded5f7ca315a68482c3e955 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 31 Mar 2017 11:21:00 -0700 Subject: [PATCH 088/625] Fix ordering of variables --- build_projects/dotnet-host-build/PublishTargets.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index 4efe8426..5b12f333 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -182,9 +182,9 @@ namespace Microsoft.DotNet.Host.Build Directory.CreateDirectory(Dirs.PackagesNoRID); AzurePublisherTool.DownloadFilesWithExtension(hostBlob, ".nupkg", Dirs.PackagesNoRID); - string nugetFeedUrl = EnvVars.EnsureVariable("NUGET_FEED_URL"); - string apiKey = EnvVars.EnsureVariable("NUGET_API_KEY"); + + string nugetFeedUrl = EnvVars.EnsureVariable("NUGET_FEED_URL"); NuGetUtil.PushPackages(Dirs.PackagesNoRID, nugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Standard); if(IncludeSymbolPackages) From d9deede60a65eb8ef907a9fbc22b013a642e1b0d Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Fri, 31 Mar 2017 11:22:08 -0700 Subject: [PATCH 089/625] Remove Fedora 23 support --- README.md | 7 +-- .../StandaloneApp/project.json.template | 40 ---------------- .../StandaloneTestApp/project.json.template | 40 ---------------- .../dotnet-host-build/CompileTargets.cs | 1 - .../dotnet-host-build/PublishTargets.cs | 2 - .../Utils/Monikers.cs | 4 +- buildpipeline/pipeline.json | 11 ----- netci.groovy | 2 +- pkg/init-tools.sh | 4 -- scripts/docker/fedora.23/Dockerfile | 46 ------------------- .../DependencyContextTests.cs | 1 - 11 files changed, 3 insertions(+), 155 deletions(-) delete mode 100644 scripts/docker/fedora.23/Dockerfile diff --git a/README.md b/README.md index 2519bbc7..0fb71da4 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ Daily Builds | **Debian 8.2 (x64)** | [![][debian-8.2-badge-master]][debian-8.2-version-master]
[Host][debian-8.2-host-master]
[Host FX Resolver][debian-8.2-hostfxr-master]
[Shared Framework][debian-8.2-sharedfx-master]
[tar.gz][debian-8.2-targz-master]
[Symbols (tar.gz)][debian-8.2-symbols-targz-master] | [![][debian-8.2-badge-1.1.X]][debian-8.2-version-1.1.X]
[Host][debian-8.2-host-1.1.X]
[Host FX Resolver][debian-8.2-hostfxr-1.1.X]
[Shared Framework][debian-8.2-sharedfx-1.1.X]
[tar.gz][debian-8.2-targz-1.1.X] | [![][debian-8.2-badge-preview]][debian-8.2-version-preview]
[Host][debian-8.2-host-preview]
[Host FX Resolver][debian-8.2-hostfxr-preview]
[Shared Framework][debian-8.2-sharedfx-preview]
[tar.gz][debian-8.2-targz-preview] | | **CentOS 7.1 (x64)** | [![][centos-badge-master]][centos-version-master]
[tar.gz][centos-targz-master]
[Symbols (tar.gz)][centos-symbols-targz-master] | [![][centos-badge-1.1.X]][centos-version-1.1.X]
[tar.gz][centos-targz-1.1.X] | [![][centos-badge-preview]][centos-version-preview]
[tar.gz][centos-targz-preview] | | **RHEL 7.2 (x64)** | [![][rhel-badge-master]][rhel-version-master]
[tar.gz][rhel-targz-master]
[Symbols (tar.gz)][rhel-symbols-targz-master] | [![][rhel-badge-1.1.X]][rhel-version-1.1.X]
[tar.gz][rhel-targz-1.1.X] | [![][rhel-badge-preview]][rhel-version-preview]
[tar.gz][rhel-targz-preview] | -| **Fedora 23 (x64)** | [![][fedora-23-badge-master]][fedora-23-version-master]
[tar.gz][fedora-23-targz-master]
[Symbols (tar.gz)][fedora-23-symbols-targz-master] | [![][fedora-23-badge-1.1.X]][fedora-23-version-1.1.X]
[tar.gz][fedora-23-targz-1.1.X] | [![][fedora-23-badge-preview]][fedora-23-version-preview]
[tar.gz][fedora-23-targz-preview] | +| **Fedora 23 (x64)** | N/A | [![][fedora-23-badge-1.1.X]][fedora-23-version-1.1.X]
[tar.gz][fedora-23-targz-1.1.X] | [![][fedora-23-badge-preview]][fedora-23-version-preview]
[tar.gz][fedora-23-targz-preview] | | **Fedora 24 (x64)** | [![][fedora-24-badge-master]][fedora-24-version-master]
[tar.gz][fedora-24-targz-master]
[Symbols (tar.gz)][fedora-24-symbols-targz-master] | [![][fedora-24-badge-1.1.X]][fedora-24-version-1.1.X]
[tar.gz][fedora-24-targz-1.1.X] | N/A | | **OpenSUSE 42.1 (x64)** | [![][opensuse-42.1-badge-master]][opensuse-42.1-version-master]
[tar.gz][opensuse-42.1-targz-master]
[Symbols (tar.gz)][opensuse-42.1-symbols-targz-master] | [![][opensuse-42.1-badge-1.1.X]][opensuse-42.1-version-1.1.X]
[tar.gz][opensuse-42.1-targz-1.1.X] | N/A | @@ -253,11 +253,6 @@ Daily Builds [rhel-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-rhel-x64.latest.tar.gz -[fedora-23-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Fedora_23_x64_Release_version_badge.svg -[fedora-23-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.fedora.23.x64.version -[fedora-23-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-fedora.23-x64.latest.tar.gz -[fedora-23-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-fedora.23-x64.latest.tar.gz - [fedora-23-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Fedora_23_x64_Release_version_badge.svg [fedora-23-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.fedora.23.x64.version [fedora-23-targz-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/dotnet-fedora.23-x64.latest.tar.gz diff --git a/TestAssets/TestProjects/StandaloneApp/project.json.template b/TestAssets/TestProjects/StandaloneApp/project.json.template index ea0e4679..8d6afbeb 100644 --- a/TestAssets/TestProjects/StandaloneApp/project.json.template +++ b/TestAssets/TestProjects/StandaloneApp/project.json.template @@ -485,46 +485,6 @@ "version": "4.3.0", "exclude": "all" }, - "runtime.fedora.23-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, "runtime.fedora.24-x64.Microsoft.NETCore.DotNetHost": { "version": "1.1.0", "exclude": "all" diff --git a/TestAssets/TestProjects/StandaloneTestApp/project.json.template b/TestAssets/TestProjects/StandaloneTestApp/project.json.template index a34d0e33..1b5a4784 100644 --- a/TestAssets/TestProjects/StandaloneTestApp/project.json.template +++ b/TestAssets/TestProjects/StandaloneTestApp/project.json.template @@ -492,46 +492,6 @@ "version": "4.3.0", "exclude": "all" }, - "runtime.fedora.23-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, "runtime.fedora.24-x64.Microsoft.NETCore.DotNetHost": { "version": "1.1.0", "exclude": "all" diff --git a/build_projects/dotnet-host-build/CompileTargets.cs b/build_projects/dotnet-host-build/CompileTargets.cs index 98796d87..330064bf 100644 --- a/build_projects/dotnet-host-build/CompileTargets.cs +++ b/build_projects/dotnet-host-build/CompileTargets.cs @@ -43,7 +43,6 @@ namespace Microsoft.DotNet.Host.Build { "rhel.7.3-x64", "rhel.7-x64" }, { "debian.8-armel", "debian.8-armel" }, { "debian.8-x64", "debian.8-x64" }, - { "fedora.23-x64", "fedora.23-x64" }, { "fedora.24-x64", "fedora.24-x64" }, { "opensuse.42.1-x64", "opensuse.42.1-x64" }, { "tizen.4.0.0-armel", "tizen.4.0.0-armel" } diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index 46f48e7f..077fdd98 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -134,7 +134,6 @@ namespace Microsoft.DotNet.Host.Build "debian.8.armel.version", "debian.x64.version", "centos.x64.version", - "fedora.23.x64.version", "fedora.24.x64.version", "opensuse.42.1.x64.version" }; @@ -204,7 +203,6 @@ namespace Microsoft.DotNet.Host.Build // { "sharedfx_Debian_8_armel", false }, { "sharedfx_Debian_x64", false }, { "sharedfx_CentOS_x64", false }, - { "sharedfx_Fedora_23_x64", false }, { "sharedfx_Fedora_24_x64", false }, { "sharedfx_openSUSE_42_1_x64", false } }; diff --git a/build_projects/shared-build-targets-utils/Utils/Monikers.cs b/build_projects/shared-build-targets-utils/Utils/Monikers.cs index 1c8a35c8..94dd32b5 100644 --- a/build_projects/shared-build-targets-utils/Utils/Monikers.cs +++ b/build_projects/shared-build-targets-utils/Utils/Monikers.cs @@ -38,7 +38,7 @@ namespace Microsoft.DotNet.Cli.Build string rid = Environment.GetEnvironmentVariable("TARGETRID") ?? RuntimeEnvironment.GetRuntimeIdentifier(); // Look for expected RIDs, including Portable one, for Linux - if (rid.StartsWith("linux-") || rid == "ubuntu.16.04-x64" || rid == "ubuntu.16.04-arm" || rid == "ubuntu.16.10-x64" || rid == "fedora.23-x64" || rid == "fedora.24-x64" || rid == "opensuse.42.1-x64" || rid == "debian.8-armel" || rid == "tizen.4.0.0-armel") + if (rid.StartsWith("linux-") || rid == "ubuntu.16.04-x64" || rid == "ubuntu.16.04-arm" || rid == "ubuntu.16.10-x64" || rid == "fedora.24-x64" || rid == "opensuse.42.1-x64" || rid == "debian.8-armel" || rid == "tizen.4.0.0-armel") { return $"{artifactPrefix}-{rid}.{version}"; } @@ -66,8 +66,6 @@ namespace Microsoft.DotNet.Cli.Build return "Ubuntu_16_04_arm"; case "ubuntu.16.10-x64": return "Ubuntu_16_10_x64"; - case "fedora.23-x64": - return "Fedora_23_x64"; case "fedora.24-x64": return "Fedora_24_x64"; case "opensuse.42.1-x64": diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 8d08e316..62ad8071 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -40,17 +40,6 @@ "Platform": "x64" } }, - { - "Name": "Core-Setup-Linux", - "Parameters": { - "PB_DockerOS": "fedora.23" - }, - "ReportingParameters": { - "OperatingSystem": "Fedora 23", - "Type": "build/product/", - "Platform": "x64" - } - }, { "Name": "Core-Setup-Linux", "Parameters": { diff --git a/netci.groovy b/netci.groovy index d8590ae5..5fb1c3c0 100644 --- a/netci.groovy +++ b/netci.groovy @@ -10,7 +10,7 @@ def project = GithubProject def branch = GithubBranchName def isPR = true -def platformList = ['Debian8.2:x64:Debug', 'PortableLinux:x64:Release', 'Ubuntu:arm:Release', 'Ubuntu:x64:Release', 'Ubuntu16.04:arm:Release', 'Ubuntu16.04:x64:Release', 'Ubuntu16.10:x64:Release', 'OSX10.12:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Windows_NT:arm:Debug', 'RHEL7.2:x64:Release', 'CentOS7.1:x64:Debug', 'Fedora23:x64:Debug', 'OpenSUSE42.1:x64:Debug'] +def platformList = ['Debian8.2:x64:Debug', 'PortableLinux:x64:Release', 'Ubuntu:arm:Release', 'Ubuntu:x64:Release', 'Ubuntu16.04:arm:Release', 'Ubuntu16.04:x64:Release', 'Ubuntu16.10:x64:Release', 'OSX10.12:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Windows_NT:arm:Debug', 'RHEL7.2:x64:Release', 'CentOS7.1:x64:Debug', 'OpenSUSE42.1:x64:Debug'] def static getBuildJobName(def configuration, def os, def architecture) { return configuration.toLowerCase() + '_' + os.toLowerCase() + '_' + architecture.toLowerCase() diff --git a/pkg/init-tools.sh b/pkg/init-tools.sh index 70a54953..fc196c97 100755 --- a/pkg/init-tools.sh +++ b/pkg/init-tools.sh @@ -43,10 +43,6 @@ get_current_linux_name() { echo "debian" return 0 elif [ "$(cat /etc/*-release | grep -cim1 fedora)" -eq 1 ]; then - if [ "$(cat /etc/*-release | grep -cim1 23)" -eq 1 ]; then - echo "fedora.23" - return 0 - fi if [ "$(cat /etc/*-release | grep -cim1 24)" -eq 1 ]; then echo "fedora.24" return 0 diff --git a/scripts/docker/fedora.23/Dockerfile b/scripts/docker/fedora.23/Dockerfile deleted file mode 100644 index 92a1f458..00000000 --- a/scripts/docker/fedora.23/Dockerfile +++ /dev/null @@ -1,46 +0,0 @@ -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -# Dockerfile that creates a container suitable to build dotnet-cli -FROM fedora:23 - -# Install the base toolchain we need to build anything (clang, cmake, make and the like) -# this does not include libraries that we need to compile different projects, we'd like -# them in a different layer. -RUN dnf install -y cmake \ - clang \ - make \ - which \ - tar \ - git \ - findutils && \ - dnf clean all - -# Dependencies of CoreCLR and CoreFX. -RUN dnf install -y libicu \ - libuuid \ - libcurl \ - openssl-libs \ - libunwind \ - lttng-ust - -RUN dnf upgrade -y nss - -RUN dnf clean all - -# Setup User to match Host User, and give superuser permissions -ARG USER_ID=0 -RUN useradd -m code_executor -u ${USER_ID} -g wheel -RUN echo 'code_executor ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers - -# With the User Change, we need to change permissions on these directories -RUN chmod -R a+rwx /usr/local -RUN chmod -R a+rwx /home - -# Set user to the one we just created -USER ${USER_ID} - -# Set working directory -WORKDIR /opt/code diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextTests.cs b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextTests.cs index b4f6320d..577499eb 100644 --- a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextTests.cs +++ b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextTests.cs @@ -135,7 +135,6 @@ namespace Microsoft.Extensions.DependencyModel.Tests new RuntimeFallbacks("ubuntu-x64", "ubuntu", "linux-x64", "linux", "unix", "any", "base"), new RuntimeFallbacks("ubuntu.16.04-x64", "ubuntu", "linux-x64", "linux", "unix", "any", "base"), new RuntimeFallbacks("rhel-x64", "rhel", "linux-x64", "linux", "unix", "any", "base"), - new RuntimeFallbacks("fedora.23-x64", "fedora", "linux-x64", "linux", "unix", "any", "base"), new RuntimeFallbacks("osx-x64", "osx", "unix", "any", "base"), }); } From 7498f93fd7f98e8356e01755dc27496682fe904a Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 31 Mar 2017 11:49:27 -0700 Subject: [PATCH 090/625] PR feedback --- build_projects/dotnet-host-build/NugetUtil.cs | 7 ++-- .../dotnet-host-build/PublishTargets.cs | 6 +-- .../Core-Setup-Signing-Windows-x64.json | 40 +++++++++---------- 3 files changed, 27 insertions(+), 26 deletions(-) diff --git a/build_projects/dotnet-host-build/NugetUtil.cs b/build_projects/dotnet-host-build/NugetUtil.cs index bebe79eb..8c633a27 100644 --- a/build_projects/dotnet-host-build/NugetUtil.cs +++ b/build_projects/dotnet-host-build/NugetUtil.cs @@ -9,10 +9,11 @@ namespace Microsoft.DotNet.Cli.Build { public static class NuGetUtil { + [Flags] public enum NuGetIncludePackageType { Standard = 1, - Symbols + Symbols = 2 } public static void PushPackages( string packageDirPath, @@ -21,11 +22,11 @@ namespace Microsoft.DotNet.Cli.Build NuGetIncludePackageType includePackageTypes) { List paths = new List(); - if ((includePackageTypes & NuGetIncludePackageType.Standard) != 0) + if ((includePackageTypes.HasFlag(NuGetIncludePackageType.Standard))) { paths.AddRange(Directory.GetFiles(packageDirPath, "*.nupkg").Where(p => !p.EndsWith(".symbols.nupkg"))); } - if ((includePackageTypes & NuGetIncludePackageType.Symbols) != 0) + if ((includePackageTypes.HasFlag(NuGetIncludePackageType.Symbols))) { paths.AddRange(Directory.GetFiles(packageDirPath, "*.symbols.nupkg")); } diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index 5b12f333..feb3d24a 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -67,10 +67,10 @@ namespace Microsoft.DotNet.Host.Build string nugetFeedUrl = EnvVars.EnsureVariable("CLI_NUGET_FEED_URL"); NuGetUtil.PushPackages(Dirs.Packages, nugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Standard); - if(IncludeSymbolPackages) + if (IncludeSymbolPackages) { string symbolsNugetFeedUrl = EnvVars.EnsureVariable("CLI_NUGET_SYMBOLS_FEED_URL"); - NuGetUtil.PushPackages(Dirs.PackagesNoRID, symbolsNugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Symbols); + NuGetUtil.PushPackages(Dirs.Packages, symbolsNugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Symbols); } return c.Success(); @@ -187,7 +187,7 @@ namespace Microsoft.DotNet.Host.Build string nugetFeedUrl = EnvVars.EnsureVariable("NUGET_FEED_URL"); NuGetUtil.PushPackages(Dirs.PackagesNoRID, nugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Standard); - if(IncludeSymbolPackages) + if (IncludeSymbolPackages) { string symbolsNugetFeedUrl = EnvVars.EnsureVariable("NUGET_SYMBOLS_FEED_URL"); NuGetUtil.PushPackages(Dirs.PackagesNoRID, symbolsNugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Symbols); diff --git a/buildpipeline/Core-Setup-Signing-Windows-x64.json b/buildpipeline/Core-Setup-Signing-Windows-x64.json index fb2f1edb..87678f09 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x64.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x64.json @@ -102,6 +102,26 @@ "msbuildLocation": "" } }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "PackagePkgProjects", + "timeoutInMinutes": 0, + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "filePath", + "scriptName": "build_projects/dotnet-host-build/build.ps1", + "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,PackagePkgProjects,BuildProjectsForNuGetPackages", + "inlineScript": "# You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host \"Hello World\"", + "workingFolder": "", + "failOnStandardError": "true" + } + }, { "enabled": true, "continueOnError": false, @@ -175,26 +195,6 @@ "msbuildLocation": "" } }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "PackagePkgProjects", - "timeoutInMinutes": 0, - "task": { - "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "scriptType": "filePath", - "scriptName": "build_projects/dotnet-host-build/build.ps1", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,PackagePkgProjects,BuildProjectsForNuGetPackages", - "inlineScript": "# You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host \"Hello World\"", - "workingFolder": "", - "failOnStandardError": "true" - } - }, { "enabled": true, "continueOnError": false, From 320688652c586cfd5016efca50f06da7a625a0a3 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 31 Mar 2017 11:54:01 -0700 Subject: [PATCH 091/625] Remove redundant wrapping --- build_projects/dotnet-host-build/NugetUtil.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build_projects/dotnet-host-build/NugetUtil.cs b/build_projects/dotnet-host-build/NugetUtil.cs index 8c633a27..f8e71254 100644 --- a/build_projects/dotnet-host-build/NugetUtil.cs +++ b/build_projects/dotnet-host-build/NugetUtil.cs @@ -22,11 +22,11 @@ namespace Microsoft.DotNet.Cli.Build NuGetIncludePackageType includePackageTypes) { List paths = new List(); - if ((includePackageTypes.HasFlag(NuGetIncludePackageType.Standard))) + if (includePackageTypes.HasFlag(NuGetIncludePackageType.Standard)) { paths.AddRange(Directory.GetFiles(packageDirPath, "*.nupkg").Where(p => !p.EndsWith(".symbols.nupkg"))); } - if ((includePackageTypes.HasFlag(NuGetIncludePackageType.Symbols))) + if (includePackageTypes.HasFlag(NuGetIncludePackageType.Symbols)) { paths.AddRange(Directory.GetFiles(packageDirPath, "*.symbols.nupkg")); } From 4f3f80a3a4a8cbd533405855f6d6268ac6abe258 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 31 Mar 2017 11:57:28 -0700 Subject: [PATCH 092/625] add system reference for flags attribute --- build_projects/dotnet-host-build/NugetUtil.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/build_projects/dotnet-host-build/NugetUtil.cs b/build_projects/dotnet-host-build/NugetUtil.cs index f8e71254..13a7d30a 100644 --- a/build_projects/dotnet-host-build/NugetUtil.cs +++ b/build_projects/dotnet-host-build/NugetUtil.cs @@ -1,3 +1,4 @@ +using System; using System.Collections.Generic; using System.IO; using System.Linq; From 79be395ec631d7cd0304bb2c85b677131760142b Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Fri, 31 Mar 2017 13:01:03 -0700 Subject: [PATCH 093/625] Mimic native computation of RID --- src/corehost/common/pal.unix.cpp | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/src/corehost/common/pal.unix.cpp b/src/corehost/common/pal.unix.cpp index 622c60dd..6c3af3f5 100644 --- a/src/corehost/common/pal.unix.cpp +++ b/src/corehost/common/pal.unix.cpp @@ -383,13 +383,7 @@ pal::string_t pal::get_current_os_rid_platform() if (fFoundID && fFoundVersion) { - // Form the RID using the values we got - ridOS.append(valID); - ridOS.append(_X(".")); - ridOS.append(valVersionID); - - // Remove any double-quotes - ridOS = trim_quotes(ridOS); + // We have everything we need to form the RID - break out of the loop. break; } @@ -399,6 +393,23 @@ pal::string_t pal::get_current_os_rid_platform() // Close the file now that we are done with it. fsVersionFile.close(); + + if (fFoundID) + { + ridOS.append(valID); + } + + if (fFoundVersion) + { + ridOS.append(_X(".")); + ridOS.append(valVersionID); + } + + if (fFoundID || fFoundVersion) + { + // Remove any double-quotes + ridOS = trim_quotes(ridOS); + } } } From fa31877f0fcfc23ec399deb6f5b80e27011fbde9 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Fri, 31 Mar 2017 15:14:08 -0500 Subject: [PATCH 094/625] Remove PackageCacheCompilationAssemblyResolver The optimization package cache feature is no longer available in .NET Core 2.0. This resolver is no longer needed, since assemblies can no longer be resolved from this environment variable. --- .../CompilationLibrary.cs | 1 - ...PackageCacheCompilationAssemblyResolver.cs | 59 ------ .../PackageCacheResolverTest.cs | 200 ------------------ 3 files changed, 260 deletions(-) delete mode 100644 src/Microsoft.Extensions.DependencyModel/Resolution/PackageCacheCompilationAssemblyResolver.cs delete mode 100644 test/Microsoft.Extensions.DependencyModel.Tests/PackageCacheResolverTest.cs diff --git a/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs b/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs index 4ef22d45..987deee7 100644 --- a/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs +++ b/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs @@ -44,7 +44,6 @@ namespace Microsoft.Extensions.DependencyModel #if !NETSTANDARD1_3 internal static ICompilationAssemblyResolver DefaultResolver { get; } = new CompositeCompilationAssemblyResolver(new ICompilationAssemblyResolver[] { - new PackageCacheCompilationAssemblyResolver(), new AppBaseCompilationAssemblyResolver(), new ReferenceAssemblyPathResolver(), new PackageCompilationAssemblyResolver() diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/PackageCacheCompilationAssemblyResolver.cs b/src/Microsoft.Extensions.DependencyModel/Resolution/PackageCacheCompilationAssemblyResolver.cs deleted file mode 100644 index 148544be..00000000 --- a/src/Microsoft.Extensions.DependencyModel/Resolution/PackageCacheCompilationAssemblyResolver.cs +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using System; -using System.Collections.Generic; - -namespace Microsoft.Extensions.DependencyModel.Resolution -{ - public class PackageCacheCompilationAssemblyResolver : ICompilationAssemblyResolver - { - private readonly IFileSystem _fileSystem; - private readonly string _packageCacheDirectory; - - public PackageCacheCompilationAssemblyResolver() - : this(FileSystemWrapper.Default, EnvironmentWrapper.Default) - { - } - - public PackageCacheCompilationAssemblyResolver(string packageCacheDirectory) - : this(FileSystemWrapper.Default, packageCacheDirectory) - { - } - - internal PackageCacheCompilationAssemblyResolver(IFileSystem fileSystem, IEnvironment environment) - : this(fileSystem, GetDefaultPackageCacheDirectory(environment)) - { - } - - internal PackageCacheCompilationAssemblyResolver(IFileSystem fileSystem, string packageCacheDirectory) - { - _packageCacheDirectory = packageCacheDirectory; - _fileSystem = fileSystem; - } - - public bool TryResolveAssemblyPaths(CompilationLibrary library, List assemblies) - { - if (!string.Equals(library.Type, "package", StringComparison.OrdinalIgnoreCase)) - { - return false; - } - - if (!string.IsNullOrEmpty(_packageCacheDirectory)) - { - string packagePath; - if (ResolverUtils.TryResolvePackagePath(_fileSystem, library, _packageCacheDirectory, out packagePath)) - { - assemblies.AddRange(ResolverUtils.ResolveFromPackagePath(_fileSystem, library, packagePath)); - return true; - } - } - return false; - } - - internal static string GetDefaultPackageCacheDirectory(IEnvironment environment) - { - return environment.GetEnvironmentVariable("DOTNET_HOSTING_OPTIMIZATION_CACHE"); - } - } -} \ No newline at end of file diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/PackageCacheResolverTest.cs b/test/Microsoft.Extensions.DependencyModel.Tests/PackageCacheResolverTest.cs deleted file mode 100644 index 524d455d..00000000 --- a/test/Microsoft.Extensions.DependencyModel.Tests/PackageCacheResolverTest.cs +++ /dev/null @@ -1,200 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using System; -using System.Collections.Generic; -using System.IO; -using FluentAssertions; -using Microsoft.Extensions.DependencyModel.Resolution; -using Xunit; -using F = Microsoft.Extensions.DependencyModel.Tests.TestLibraryFactory; - -namespace Microsoft.Extensions.DependencyModel.Tests -{ - public class PackageCacheResolverTest - { - private static string CachePath = Path.Combine("cache", "directory", "location"); - - [Fact] - public void SholdUseEnvironmentVariableToGetDefaultLocation() - { - var result = PackageCacheCompilationAssemblyResolver.GetDefaultPackageCacheDirectory(GetDefaultEnvironment()); - - result.Should().Be(CachePath); - } - - [Fact] - public void SkipsNonPackage() - { - var resolver = new PackageCacheCompilationAssemblyResolver(); - var library = F.Create( - F.PackageType, - assemblies: F.EmptyAssemblies); - - var result = resolver.TryResolveAssemblyPaths(library, null); - - result.Should().BeFalse(); - } - - [Theory] - [InlineData("INVALIDHASHVALUE")] - [InlineData("INVALIDHASHVALUE-")] - [InlineData("-INVALIDHASHVALUE")] - public void IgnoresInvalidHash(string hash) - { - var packagePath = GetPackagesPath(F.DefaultPackageName, F.DefaultVersion); - var fileSystem = FileSystemMockBuilder.Create() - .AddFile( - GetHashFilePath(packagePath), - F.DefaultHashValue - ) - .AddFiles(packagePath, F.DefaultAssemblies) - .Build(); - - var resolver = new PackageCacheCompilationAssemblyResolver(fileSystem, CachePath); - var assemblies = new List(); - var library = F.Create(hash: hash); - - resolver.TryResolveAssemblyPaths(library, assemblies) - .Should().BeTrue(); - assemblies.Should().NotBeEmpty(); - } - - [Fact] - public void IgnoresHashFile() - { - var packagePath = GetPackagesPath(F.DefaultPackageName, F.DefaultVersion); - var fileSystem = FileSystemMockBuilder.Create() - .AddFile( - GetHashFilePath(packagePath), - "WRONGHASH" - ) - .AddFiles(packagePath, F.DefaultAssemblies) - .Build(); - - var resolver = new PackageCacheCompilationAssemblyResolver(fileSystem, CachePath); - var assemblies = new List(); - - var result = resolver.TryResolveAssemblyPaths(F.Create(), assemblies); - result.Should().BeTrue(); - assemblies.Should().NotBeEmpty(); - } - - [Fact] - public void ResolvesAllAssemblies() - { - var packagePath = GetPackagesPath(F.DefaultPackageName, F.DefaultVersion); - var fileSystem = FileSystemMockBuilder.Create() - .AddFile( - GetHashFilePath(packagePath), - F.DefaultHashValue - ) - .AddFiles(packagePath, F.TwoAssemblies) - .Build(); - var library = F.Create(assemblies: F.TwoAssemblies); - - var resolver = new PackageCacheCompilationAssemblyResolver(fileSystem, CachePath); - var assemblies = new List(); - - var result = resolver.TryResolveAssemblyPaths(library, assemblies); - - assemblies.Should().HaveCount(2); - assemblies.Should().Contain(Path.Combine(packagePath, F.DefaultAssemblyPath)); - assemblies.Should().Contain(Path.Combine(packagePath, F.SecondAssemblyPath)); - } - - - [Fact] - public void FailsWhenOneOfAssembliesNotFound() - { - var packagePath = GetPackagesPath(F.DefaultPackageName, F.DefaultVersion); - var fileSystem = FileSystemMockBuilder.Create() - .AddFile( - GetHashFilePath(packagePath), - F.DefaultHashValue - ) - .AddFiles(packagePath, F.DefaultAssemblyPath) - .Build(); - var library = F.Create(assemblies: F.TwoAssemblies); - - var resolver = new PackageCacheCompilationAssemblyResolver(fileSystem, CachePath); - var assemblies = new List(); - - var exception = Assert.Throws(() => resolver.TryResolveAssemblyPaths(library, assemblies)); - exception.Message.Should() - .Contain(F.SecondAssemblyPath) - .And.Contain(library.Name); - } - - [Fact] - public void UsesHashPathProperty() - { - var hashFileName = "myFunkyHashPath.sha29"; - var packagePath = GetPackagesPath(F.DefaultPackageName, F.DefaultVersion); - var fileSystem = FileSystemMockBuilder.Create() - .AddFile( - Path.Combine(packagePath, hashFileName), - F.DefaultHashValue - ) - .AddFiles(packagePath, F.TwoAssemblies) - .Build(); - - var library = F.Create(assemblies: F.TwoAssemblies, hashPath: hashFileName); - - var resolver = new PackageCacheCompilationAssemblyResolver(fileSystem, CachePath); - var assemblies = new List(); - - var result = resolver.TryResolveAssemblyPaths(library, assemblies); - - result.Should().BeTrue(); - assemblies.Should().HaveCount(2); - assemblies.Should().Contain(Path.Combine(packagePath, F.DefaultAssemblyPath)); - assemblies.Should().Contain(Path.Combine(packagePath, F.SecondAssemblyPath)); - } - - [Fact] - public void UsesPathProperty() - { - var testPathValue = "NotPackageId"; - var packagePath = Path.Combine(CachePath, testPathValue); - var fileSystem = FileSystemMockBuilder.Create() - .AddFile( - GetHashFilePath(packagePath), - F.DefaultHashValue - ) - .AddFiles(packagePath, F.TwoAssemblies) - .Build(); - - var library = F.Create(assemblies: F.TwoAssemblies, path: testPathValue); - - var resolver = new PackageCacheCompilationAssemblyResolver(fileSystem, CachePath); - var assemblies = new List(); - - var result = resolver.TryResolveAssemblyPaths(library, assemblies); - - result.Should().BeTrue(); - assemblies.Should().HaveCount(2); - assemblies.Should().Contain(Path.Combine(packagePath, F.DefaultAssemblyPath)); - assemblies.Should().Contain(Path.Combine(packagePath, F.SecondAssemblyPath)); - } - - private IEnvironment GetDefaultEnvironment() - { - return EnvironmentMockBuilder.Create() - .AddVariable("DOTNET_HOSTING_OPTIMIZATION_CACHE", CachePath) - .Build(); - } - - private static string GetPackagesPath(string id, string version) - { - return PackageResolverTest.GetPackagesPath(CachePath, id, version); - } - - private static string GetHashFilePath(string packagePath) - { - return Path.Combine( - packagePath, - $"{F.DefaultPackageName}.{F.DefaultVersion}.nupkg.{F.DefaultHashAlgoritm}"); - } - } -} From f50a51e97a8f3060679630835bdb2d529aa927e9 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 31 Mar 2017 13:52:54 -0700 Subject: [PATCH 095/625] Fix nuget package push feed url --- buildpipeline/Core-Setup-CrossBuild.json | 4 ++-- buildpipeline/Core-Setup-Linux.json | 4 ++-- buildpipeline/Core-Setup-OSX-x64.json | 4 ++-- buildpipeline/Core-Setup-PortableLinux-x64.json | 4 ++-- buildpipeline/Core-Setup-RHEL7-x64.json | 4 ++-- buildpipeline/Core-Setup-Signing-Windows-x64.json | 4 ++-- buildpipeline/Core-Setup-Signing-Windows-x86.json | 4 ++-- buildpipeline/Core-Setup-Windows-arm32.json | 4 ++-- buildpipeline/Core-Setup-Windows-arm64.json | 4 ++-- buildpipeline/pipeline.json | 4 ++-- 10 files changed, 20 insertions(+), 20 deletions(-) diff --git a/buildpipeline/Core-Setup-CrossBuild.json b/buildpipeline/Core-Setup-CrossBuild.json index fc33a7ef..0fc48685 100644 --- a/buildpipeline/Core-Setup-CrossBuild.json +++ b/buildpipeline/Core-Setup-CrossBuild.json @@ -248,7 +248,7 @@ "value": "azure-apt-cat.cloudapp.net" }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -308,7 +308,7 @@ "value": "true" }, "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-Linux.json b/buildpipeline/Core-Setup-Linux.json index d42d73c9..2de3dea3 100644 --- a/buildpipeline/Core-Setup-Linux.json +++ b/buildpipeline/Core-Setup-Linux.json @@ -211,7 +211,7 @@ "allowOverride": true }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -236,7 +236,7 @@ "value": "$(DockerHost_Sandbox)/Tools" }, "NUGET_SYMBOLS_FEED_URL": { - "value": " https://dotnet.myget.org/F/dotnet-core/api/v2/package" + "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-OSX-x64.json b/buildpipeline/Core-Setup-OSX-x64.json index 985e12bf..ac476d5c 100644 --- a/buildpipeline/Core-Setup-OSX-x64.json +++ b/buildpipeline/Core-Setup-OSX-x64.json @@ -135,7 +135,7 @@ "allowOverride": true }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -144,7 +144,7 @@ "value": "PassedViaPipeBuild" }, "NUGET_SYMBOLS_FEED_URL": { - "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-PortableLinux-x64.json b/buildpipeline/Core-Setup-PortableLinux-x64.json index 2f3fc1bb..dd074add 100644 --- a/buildpipeline/Core-Setup-PortableLinux-x64.json +++ b/buildpipeline/Core-Setup-PortableLinux-x64.json @@ -199,7 +199,7 @@ "allowOverride": true }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -217,7 +217,7 @@ "value": "$(DockerHost_Sandbox)/Tools" }, "NUGET_SYMBOLS_FEED_URL": { - "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-RHEL7-x64.json b/buildpipeline/Core-Setup-RHEL7-x64.json index 6ba86c9b..abbfbb77 100644 --- a/buildpipeline/Core-Setup-RHEL7-x64.json +++ b/buildpipeline/Core-Setup-RHEL7-x64.json @@ -199,7 +199,7 @@ "allowOverride": true }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -217,7 +217,7 @@ "value": "$(DockerHost_Sandbox)/Tools" }, "NUGET_SYMBOLS_FEED_URL": { - "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-Signing-Windows-x64.json b/buildpipeline/Core-Setup-Signing-Windows-x64.json index 87678f09..73c5654c 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x64.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x64.json @@ -450,7 +450,7 @@ "value": "true" }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -477,7 +477,7 @@ "value": "false" }, "NUGET_SYMBOLS_FEED_URL": { - "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-Signing-Windows-x86.json b/buildpipeline/Core-Setup-Signing-Windows-x86.json index 11ebf4d7..f642cc33 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x86.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x86.json @@ -423,7 +423,7 @@ "value": "true" }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -450,7 +450,7 @@ "value": "false" }, "NUGET_SYMBOLS_FEED_URL": { - "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-Windows-arm32.json b/buildpipeline/Core-Setup-Windows-arm32.json index 6bf3832b..b934a95d 100644 --- a/buildpipeline/Core-Setup-Windows-arm32.json +++ b/buildpipeline/Core-Setup-Windows-arm32.json @@ -83,7 +83,7 @@ ], "variables": { "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -108,7 +108,7 @@ "allowOverride": true }, "NUGET_SYMBOLS_FEED_URL": { - "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-Windows-arm64.json b/buildpipeline/Core-Setup-Windows-arm64.json index a04da4db..da015674 100644 --- a/buildpipeline/Core-Setup-Windows-arm64.json +++ b/buildpipeline/Core-Setup-Windows-arm64.json @@ -83,7 +83,7 @@ ], "variables": { "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -108,7 +108,7 @@ "allowOverride": true }, "NUGET_SYMBOLS_FEED_URL": { - "value": " https://dotnet.myget.org/F/dotnet-core/symbols/api/v2" + "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } }, "demands": [ diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 0041e828..c9890342 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -69,8 +69,8 @@ "REPO_ID": "562fbfe0b2d7d0e0a43780c4", "REPO_USER": "dotnet", "REPO_SERVER": "azure-apt-cat.cloudapp.net", - "CLI_NUGET_FEED_URL": "https://dotnet.myget.org/F/cli-deps", - "CLI_NUGET_SYMBOLS_FEED_URL": "https://dotnet.myget.org/F/cli-deps/symbols" + "CLI_NUGET_FEED_URL": "https://dotnet.myget.org/F/cli-deps/api/v2/package", + "CLI_NUGET_SYMBOLS_FEED_URL": "https://dotnet.myget.org/F/cli-deps/symbols/api/v2/package" }, "ReportingParameters": { "OperatingSystem": "Ubuntu 14.04", From 4b4b8a0cae8d6a633a24d6dee6cf00a500855c24 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Fri, 31 Mar 2017 15:55:24 -0500 Subject: [PATCH 096/625] Address PR feedback --- .../DependencyContextLoader.cs | 25 ++++--------------- .../DependencyContextPaths.cs | 14 ++++++----- .../DependencyContextLoaderTests.cs | 3 +-- .../DependencyContextPathsTests.cs | 10 ++++---- 4 files changed, 19 insertions(+), 33 deletions(-) diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs b/src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs index 2cdeb53e..6d96e6a8 100644 --- a/src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs +++ b/src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs @@ -16,15 +16,13 @@ namespace Microsoft.Extensions.DependencyModel private const string DepsJsonExtension = ".deps.json"; private readonly string _entryPointDepsLocation; - private readonly string _runtimeDepsLocation; - private readonly IEnumerable _extraDepsLocations; + private readonly IEnumerable _nonEntryPointDepsPaths; private readonly IFileSystem _fileSystem; private readonly Func _jsonReaderFactory; public DependencyContextLoader() : this( DependencyContextPaths.Current.Application, - DependencyContextPaths.Current.SharedRuntime, - DependencyContextPaths.Current.ExtraPaths, + DependencyContextPaths.Current.NonApplicationPaths, FileSystemWrapper.Default, () => new DependencyContextJsonReader()) { @@ -32,14 +30,12 @@ namespace Microsoft.Extensions.DependencyModel internal DependencyContextLoader( string entryPointDepsLocation, - string runtimeDepsLocation, - IEnumerable extraDepsLocations, + IEnumerable nonEntryPointDepsPaths, IFileSystem fileSystem, Func jsonReaderFactory) { _entryPointDepsLocation = entryPointDepsLocation; - _runtimeDepsLocation = runtimeDepsLocation; - _extraDepsLocations = extraDepsLocations; + _nonEntryPointDepsPaths = nonEntryPointDepsPaths; _fileSystem = fileSystem; _jsonReaderFactory = jsonReaderFactory; } @@ -78,13 +74,7 @@ namespace Microsoft.Extensions.DependencyModel if (context != null) { - var runtimeContext = LoadRuntimeContext(reader); - if (runtimeContext != null) - { - context = context.Merge(runtimeContext); - } - - foreach (var extraPath in _extraDepsLocations) + foreach (var extraPath in _nonEntryPointDepsPaths) { var extraContext = LoadContext(reader, extraPath); if (extraContext != null) @@ -102,11 +92,6 @@ namespace Microsoft.Extensions.DependencyModel return LoadContext(reader, _entryPointDepsLocation); } - private DependencyContext LoadRuntimeContext(IDependencyContextReader reader) - { - return LoadContext(reader, _runtimeDepsLocation); - } - private DependencyContext LoadContext(IDependencyContextReader reader, string location) { if (!string.IsNullOrEmpty(location)) diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs b/src/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs index 938dd366..e8791304 100644 --- a/src/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs +++ b/src/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs @@ -20,13 +20,16 @@ namespace Microsoft.Extensions.DependencyModel public string SharedRuntime { get; } - public IEnumerable ExtraPaths { get; } + public IEnumerable NonApplicationPaths { get; } - public DependencyContextPaths(string application, string sharedRuntime, IEnumerable extraPaths) + public DependencyContextPaths( + string application, + string sharedRuntime, + IEnumerable nonApplicationPaths) { Application = application; SharedRuntime = sharedRuntime; - ExtraPaths = extraPaths ?? Enumerable.Empty(); + NonApplicationPaths = nonApplicationPaths ?? Enumerable.Empty(); } private static DependencyContextPaths GetCurrent() @@ -46,15 +49,14 @@ namespace Microsoft.Extensions.DependencyModel var files = depsFiles?.Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); var application = files != null && files.Length > 0 ? files[0] : null; - var extraPaths = files? + var nonApplicationPaths = files? .Skip(1) // the application path - .Where(path => path != sharedRuntime) .ToArray(); return new DependencyContextPaths( application, sharedRuntime, - extraPaths); + nonApplicationPaths); } } } diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextLoaderTests.cs b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextLoaderTests.cs index 47662337..3e2982f5 100644 --- a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextLoaderTests.cs +++ b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextLoaderTests.cs @@ -66,8 +66,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests var loader = new DependencyContextLoader( appDepsPath, - fxDepsPath, - new[] { extraDepsPath }, + new[] { fxDepsPath, extraDepsPath }, fileSystem, () => new DependencyContextJsonReader()); diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextPathsTests.cs b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextPathsTests.cs index a498a31d..65aac2f8 100644 --- a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextPathsTests.cs +++ b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextPathsTests.cs @@ -15,7 +15,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests paths.Application.Should().BeNull(); paths.SharedRuntime.Should().BeNull(); - paths.ExtraPaths.Should().BeEmpty(); + paths.NonApplicationPaths.Should().BeEmpty(); } [Fact] @@ -25,7 +25,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests paths.Application.Should().Be("foo.deps.json"); paths.SharedRuntime.Should().BeNull(); - paths.ExtraPaths.Should().BeEmpty(); + paths.NonApplicationPaths.Should().BeEmpty(); } [Fact] @@ -35,7 +35,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests paths.Application.Should().Be("foo.deps.json"); paths.SharedRuntime.Should().Be("fx.deps.json"); - paths.ExtraPaths.Should().BeEmpty(); + paths.NonApplicationPaths.Should().BeEquivalentTo("fx.deps.json"); } [Fact] @@ -47,7 +47,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests paths.Application.Should().Be("foo.deps.json"); paths.SharedRuntime.Should().Be("fx.deps.json"); - paths.ExtraPaths.Should().BeEquivalentTo("extra.deps.json", "extra2.deps.json"); + paths.NonApplicationPaths.Should().BeEquivalentTo("fx.deps.json", "extra.deps.json", "extra2.deps.json"); } [Fact] @@ -59,7 +59,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests paths.Application.Should().Be("foo.deps.json"); paths.SharedRuntime.Should().Be("fx.deps.json"); - paths.ExtraPaths.Should().BeEquivalentTo("extra.deps.json", "extra2.deps.json"); + paths.NonApplicationPaths.Should().BeEquivalentTo("extra.deps.json", "extra2.deps.json"); } } } From 658096180c7ac6b386efe5db655fe50e5ebe2704 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Mon, 3 Apr 2017 07:14:41 -0700 Subject: [PATCH 097/625] Updating CoreFx, CoreClr, Standard to preview1-25203-01, preview1-25203-02, preview1-25203-01 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 8 ++++---- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index d51f1c65..cb34466b 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25130-03"; - public static readonly string JitVersion = "2.0.0-preview1-25130-03"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25203-02"; + public static readonly string JitVersion = "2.0.0-preview1-25203-02"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index 88db9911..280f01f4 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-beta-25129-02" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25203-01" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 132dd288..83dd5ada 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-beta-25129-02\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25203-01\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 726ec17c..80652267 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-beta-25129-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25130-03", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25203-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25203-02", "Microsoft.DiaSymReader.Native": "1.4.0", - "Microsoft.NETCore.Platforms": "2.0.0-beta-25129-02", - "NETStandard.Library": "2.0.0-beta-25130-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25203-01", + "NETStandard.Library": "2.0.0-preview1-25203-01" }, "frameworks": { "netcoreapp2.0": {} From 7482454c1b64f9c1a7db0286fb6c83b22d443ff2 Mon Sep 17 00:00:00 2001 From: Davis Goodin Date: Mon, 3 Apr 2017 10:25:19 -0500 Subject: [PATCH 098/625] Upgrade WindowsAzure.Storage to 8.1.1 --- build_projects/dotnet-host-build/project.json | 3 ++- .../shared-build-targets-utils/Publishing/AzurePublisher.cs | 2 +- build_projects/shared-build-targets-utils/project.json | 3 ++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/build_projects/dotnet-host-build/project.json b/build_projects/dotnet-host-build/project.json index e3593054..832ed0b5 100644 --- a/build_projects/dotnet-host-build/project.json +++ b/build_projects/dotnet-host-build/project.json @@ -11,8 +11,9 @@ "System.Dynamic.Runtime": "4.0.11", "System.Reflection.Metadata": "1.3.0", "System.Runtime.Serialization.Primitives": "4.1.1", + "System.Threading.Thread": "4.0.0", "System.Xml.XmlSerializer": "4.0.11", - "WindowsAzure.Storage": "6.2.2-preview", + "WindowsAzure.Storage": "8.1.1", "NuGet.CommandLine.XPlat": "4.0.0-rc3-2140", "Microsoft.DotNet.Cli.Build.Framework": { "target": "project" diff --git a/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs b/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs index b2d36451..fc6f67ab 100644 --- a/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs +++ b/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs @@ -55,7 +55,7 @@ namespace Microsoft.DotNet.Cli.Build public void PublishFile(string blob, string file) { CloudBlockBlob blockBlob = _blobContainer.GetBlockBlobReference(blob); - blockBlob.UploadFromFileAsync(file, FileMode.Open).Wait(); + blockBlob.UploadFromFileAsync(file).Wait(); SetBlobPropertiesBasedOnFileType(blockBlob); } diff --git a/build_projects/shared-build-targets-utils/project.json b/build_projects/shared-build-targets-utils/project.json index 8e0ba5dd..66cae121 100644 --- a/build_projects/shared-build-targets-utils/project.json +++ b/build_projects/shared-build-targets-utils/project.json @@ -7,8 +7,9 @@ "System.Dynamic.Runtime": "4.0.11", "System.Reflection.Metadata": "1.3.0", "System.Runtime.Serialization.Primitives": "4.1.1", + "System.Threading.Thread": "4.0.0", "System.Xml.XmlSerializer": "4.0.11", - "WindowsAzure.Storage": "6.2.2-preview", + "WindowsAzure.Storage": "8.1.1", "Microsoft.DotNet.Cli.Build.Framework": { "target": "project" } From 23c877143de8fc0856c543ad7e1c10b3ae5e80f7 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 3 Apr 2017 13:35:46 -0500 Subject: [PATCH 099/625] Add SelfContained check to PackageConflictPlatformManifests. This is necessary for https://github.com/dotnet/sdk/pull/1053 --- pkg/tasks/GenerateFileVersionProps.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkg/tasks/GenerateFileVersionProps.cs b/pkg/tasks/GenerateFileVersionProps.cs index 1d14dc71..83c3c455 100644 --- a/pkg/tasks/GenerateFileVersionProps.cs +++ b/pkg/tasks/GenerateFileVersionProps.cs @@ -83,8 +83,8 @@ namespace Microsoft.DotNet.Build.Tasks var props = ProjectRootElement.Create(); var itemGroup = props.AddItemGroup(); - // only set the platform manifest when our RID-specific packages aren't in scope - itemGroup.Condition = "'$(RuntimeIdentifier)' == ''"; + // set the platform manifest when the platform is not being published as part of the app + itemGroup.Condition = "'$(RuntimeIdentifier)' == '' or '$(SelfContained)' != 'true'"; var manifestFileName = Path.GetFileName(PlatformManifestFile); itemGroup.AddItem(PlatformManifestsItem, $"$(MSBuildThisFileDirectory){manifestFileName}"); From defdf399ca438beb8bbcbf0b3b21440eeb3f60d2 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Mon, 3 Apr 2017 13:17:29 -0700 Subject: [PATCH 100/625] Updating CoreClr to preview1-25203-04 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index cb34466b..c55bf704 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25203-02"; - public static readonly string JitVersion = "2.0.0-preview1-25203-02"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25203-04"; + public static readonly string JitVersion = "2.0.0-preview1-25203-04"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 80652267..162dfc10 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25203-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25203-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25203-04", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25203-01", "NETStandard.Library": "2.0.0-preview1-25203-01" From 0a48216ffacdac85703fc09b0c3d06ffc1723607 Mon Sep 17 00:00:00 2001 From: Davis Goodin Date: Mon, 3 Apr 2017 15:58:33 -0500 Subject: [PATCH 101/625] Update Newtonsoft.Json for WindowsAzure.Storage Resolve a conflict that started when upgrading WindowsAzure.Storage to 8.1.1. --- build_projects/update-dependencies/project.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build_projects/update-dependencies/project.json b/build_projects/update-dependencies/project.json index 053f6f38..160ada3a 100644 --- a/build_projects/update-dependencies/project.json +++ b/build_projects/update-dependencies/project.json @@ -16,7 +16,7 @@ "target": "project" }, "NuGet.Versioning": "3.5.0-rc-1285", - "Newtonsoft.Json": "7.0.1", + "Newtonsoft.Json": "9.0.1", "Octokit": "0.18.0", "Microsoft.Net.Http": "2.2.29" }, From 0b6908c7ba95c30519098f556d3fa6faefec1334 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Mon, 3 Apr 2017 15:13:56 -0700 Subject: [PATCH 102/625] Updating CoreClr to preview1-25203-05 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index c55bf704..3de5d09a 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25203-04"; - public static readonly string JitVersion = "2.0.0-preview1-25203-04"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25203-05"; + public static readonly string JitVersion = "2.0.0-preview1-25203-05"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 162dfc10..70ceec45 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25203-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25203-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25203-05", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25203-01", "NETStandard.Library": "2.0.0-preview1-25203-01" From bfc2e8a5e8b55f284c8521738402a6c118aa8651 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Mon, 3 Apr 2017 19:14:16 -0700 Subject: [PATCH 103/625] Updating CoreFx, CoreClr to preview1-25204-01, preview1-25204-01 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 6 +++--- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 3de5d09a..d1e6ef33 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25203-05"; - public static readonly string JitVersion = "2.0.0-preview1-25203-05"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25204-01"; + public static readonly string JitVersion = "2.0.0-preview1-25204-01"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index 280f01f4..06d098f7 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25203-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25204-01" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 83dd5ada..2751a6b0 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25203-01\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25204-01\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 70ceec45..bbe74b22 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25203-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25203-05", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25204-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25204-01", "Microsoft.DiaSymReader.Native": "1.4.0", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25203-01", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25204-01", "NETStandard.Library": "2.0.0-preview1-25203-01" }, "frameworks": { From ae29e162d4e9c5b8ae24ff744cdf94594fb55f83 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Tue, 4 Apr 2017 07:15:25 -0700 Subject: [PATCH 104/625] Updating CoreFx, CoreClr, Standard to preview1-25204-02, preview1-25204-02, preview1-25204-01 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 8 ++++---- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index d1e6ef33..3be17c5e 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25204-01"; - public static readonly string JitVersion = "2.0.0-preview1-25204-01"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25204-02"; + public static readonly string JitVersion = "2.0.0-preview1-25204-02"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index 06d098f7..411b943e 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25204-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25204-02" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 2751a6b0..b4325059 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25204-01\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25204-02\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index bbe74b22..d8eeec2c 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25204-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25204-01", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25204-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25204-02", "Microsoft.DiaSymReader.Native": "1.4.0", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25204-01", - "NETStandard.Library": "2.0.0-preview1-25203-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25204-02", + "NETStandard.Library": "2.0.0-preview1-25204-01" }, "frameworks": { "netcoreapp2.0": {} From 5deff252af0de7b6d1f8fc5945bf58d6c527e26c Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Thu, 30 Mar 2017 20:00:50 -0700 Subject: [PATCH 105/625] remove SHGetKnownFolderPath --- src/corehost/common/pal.windows.cpp | 66 +++++++++++++++-------------- 1 file changed, 34 insertions(+), 32 deletions(-) diff --git a/src/corehost/common/pal.windows.cpp b/src/corehost/common/pal.windows.cpp index a2ba2e75..b4f730b4 100644 --- a/src/corehost/common/pal.windows.cpp +++ b/src/corehost/common/pal.windows.cpp @@ -134,36 +134,19 @@ void pal::unload_library(dll_t library) // No-op. On windows, we pin the library, so it can't be unloaded. } -bool pal::get_default_breadcrumb_store(string_t* recv) -{ - recv->clear(); - - pal::char_t* prog_dat; - HRESULT hr = ::SHGetKnownFolderPath(FOLDERID_ProgramData, 0, NULL, &prog_dat); - if (hr != S_OK) - { - trace::verbose(_X("Failed to read default breadcrumb store 0x%X"), hr); - return false; - } - recv->assign(prog_dat); - append_path(recv, _X("Microsoft")); - append_path(recv, _X("NetFramework")); - append_path(recv, _X("BreadcrumbStore")); - return true; -} - static -bool get_program_files_by_id(KNOWNFOLDERID kfid, pal::string_t* recv) +bool get_file_path_from_env(const pal::char_t* env_key, pal::string_t* recv) { recv->clear(); - pal::char_t* prog_files; - HRESULT hr = ::SHGetKnownFolderPath(kfid, 0, NULL, &prog_files); - if (hr != S_OK) + pal::string_t file_path; + if (!(pal::getenv(env_key, &file_path) && pal::realpath(&file_path))) { - trace::verbose(_X("Failed to obtain Program Files directory, HRESULT: 0x%X"), hr); + // We should have the path in file_path. + trace::verbose(_X("Failed to obtain [%s] directory,[%s]"),env_key, file_path.c_str()); return false; } - recv->assign(prog_files); + + recv->assign(file_path); return true; } @@ -171,11 +154,30 @@ static bool get_wow_mode_program_files(pal::string_t* recv) { #if defined(_TARGET_AMD64_) - KNOWNFOLDERID kfid = FOLDERID_ProgramFilesX86; + pal::char_t* env_key = _X("ProgramFiles(x86)"); #else - KNOWNFOLDERID kfid = FOLDERID_ProgramFiles; + pal::char_t* env_key = _X("ProgramFiles"); #endif - return get_program_files_by_id(kfid, recv); + + return get_file_path_from_env(env_key,recv); +} + +bool pal::get_default_breadcrumb_store(string_t* recv) +{ + recv->clear(); + + pal::string_t prog_dat; + if (!get_file_path_from_env(_X("ProgramData"), &prog_dat)) + { + // We should have the path in prog_dat. + trace::verbose(_X("Failed to read default breadcrumb store [%s]"), prog_dat.c_str()); + return false; + } + recv->assign(prog_dat); + append_path(recv, _X("Microsoft")); + append_path(recv, _X("NetFramework")); + append_path(recv, _X("BreadcrumbStore")); + return true; } bool pal::get_default_servicing_directory(string_t* recv) @@ -190,7 +192,7 @@ bool pal::get_default_servicing_directory(string_t* recv) bool pal::get_global_dotnet_dir(pal::string_t* dir) { - if (!get_program_files_by_id(FOLDERID_ProgramFiles, dir)) + if (!get_file_path_from_env(_X("ProgramFiles"), dir)) { return false; } @@ -201,11 +203,11 @@ bool pal::get_global_dotnet_dir(pal::string_t* dir) bool pal::get_local_dotnet_dir(pal::string_t* dir) { - pal::char_t* profile; - HRESULT hr = ::SHGetKnownFolderPath(FOLDERID_Profile, 0, NULL, &profile); - if (hr != S_OK) + pal::string_t profile; + if (!get_file_path_from_env(_X("USERPROFILE"), &profile)) { - trace::verbose(_X("Failed to obtain user profile directory, HRESULT: 0x%X"), hr); + // We should have the path in profile. + trace::verbose(_X("Failed to obtain user profile directory,[%s]"), profile.c_str()); return false; } From 766def1beadb804e4798b87f980e3927f497d182 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Wed, 29 Mar 2017 15:31:54 -0700 Subject: [PATCH 106/625] Lockdown dotnet.exe when no args are specified --- src/corehost/cli/fxr/fx_muxer.cpp | 2 +- src/corehost/corehost.cpp | 30 +++++++++++++++---- ...enThatICareAboutStandaloneAppActivation.cs | 4 +-- 3 files changed, 27 insertions(+), 9 deletions(-) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index 33c7badd..3c4ceac6 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -1004,7 +1004,7 @@ int fx_muxer_t::execute(const int argc, const pal::char_t* argv[]) trace::verbose(_X("--- Executing in muxer mode...")); - if (argc <= 1) + if (pal::strcasecmp(_X("--help-host"), argv[1]) == 0) { return muxer_usage(!is_sdk_dir_present(own_dir)); } diff --git a/src/corehost/corehost.cpp b/src/corehost/corehost.cpp index 486e4fc8..114ebcee 100644 --- a/src/corehost/corehost.cpp +++ b/src/corehost/corehost.cpp @@ -126,12 +126,7 @@ pal::string_t resolve_fxr_path(const pal::string_t& own_dir) return ret_path; } } - - pal::string_t fxr_path; - if (library_exists_in_dir(own_dir, LIBFXR_NAME, &fxr_path)) - { - trace::error(_X("A fatal error was encountered. This executable cannot be used to activate a standalone app")); - } + return pal::string_t(); #endif } @@ -151,6 +146,29 @@ int run(const int argc, const pal::char_t* argv[]) trace::error(_X("A fatal error was encountered. This executable was not bound to load a managed DLL.")); return StatusCode::AppHostExeNotBoundFailure; } +#else + pal::string_t own_name = get_executable(get_filename(own_path)); + + if (pal::strcasecmp(own_name.c_str(), CURHOST_TYPE) != 0) + { + trace::error(_X("A fatal error :Cannot execute %s when renamed to %s."), CURHOST_TYPE,own_name.c_str()); + return StatusCode::CoreHostEntryPointFailure; + } + + if (argc <= 1) + { + trace::println(); + trace::println(_X("Usage: dotnet [options]")); + trace::println(_X("Usage: dotnet [path-to-application]")); + trace::println(); + trace::println(_X("Options:")); + trace::println(_X(" -h|--help Display help.")); + trace::println(_X(" --version Display version.")); + trace::println(); + trace::println(_X("path-to-application:")); + trace::println(_X(" The path to an application .dll file to execute.")); + return StatusCode::InvalidArgFailure; + } #endif pal::dll_t fxr; diff --git a/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs b/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs index 7a6f982e..9996720c 100644 --- a/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs +++ b/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs @@ -126,12 +126,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.StandaloneApp if (CurrentPlatform.IsWindows) { - exitCode.Should().Be(-2147450749); + exitCode.Should().Be(-2147450748); } else { // Some Unix flavors filter exit code to ubyte. - (exitCode & 0xFF).Should().Be(0x83); + (exitCode & 0xFF).Should().Be(0x84); } } From 8a378626c810a84d5a1131ab335d4f879d4a369c Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Wed, 5 Apr 2017 02:39:21 -0700 Subject: [PATCH 107/625] Updating CoreFx, CoreClr to preview1-25205-01, preview1-25205-03 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 6 +++--- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 3be17c5e..52eec7e0 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25204-02"; - public static readonly string JitVersion = "2.0.0-preview1-25204-02"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25205-03"; + public static readonly string JitVersion = "2.0.0-preview1-25205-03"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index 411b943e..ac669231 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25204-02" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25205-01" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index b4325059..c7bcc4b3 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25204-02\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25205-01\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index d8eeec2c..6b457133 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25204-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25204-02", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25205-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25205-03", "Microsoft.DiaSymReader.Native": "1.4.0", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25204-02", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25205-01", "NETStandard.Library": "2.0.0-preview1-25204-01" }, "frameworks": { From 6f16f808152608fa316bc7f1f618e5db7812d0d9 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Wed, 5 Apr 2017 10:11:26 -0700 Subject: [PATCH 108/625] Updating CoreClr, Standard to preview1-25205-04, preview1-25205-01 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 52eec7e0..c07708bb 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25205-03"; - public static readonly string JitVersion = "2.0.0-preview1-25205-03"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25205-04"; + public static readonly string JitVersion = "2.0.0-preview1-25205-04"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 6b457133..d892da6b 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25205-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25205-03", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25205-04", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25205-01", - "NETStandard.Library": "2.0.0-preview1-25204-01" + "NETStandard.Library": "2.0.0-preview1-25205-01" }, "frameworks": { "netcoreapp2.0": {} From 683b32ab432a68afd3a8077e0908e62bd7ea2623 Mon Sep 17 00:00:00 2001 From: William Godbe Date: Wed, 5 Apr 2017 13:00:29 -0700 Subject: [PATCH 109/625] Add Fedora24 to netci.groovy --- netci.groovy | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/netci.groovy b/netci.groovy index 5fb1c3c0..2d11ec93 100644 --- a/netci.groovy +++ b/netci.groovy @@ -10,7 +10,7 @@ def project = GithubProject def branch = GithubBranchName def isPR = true -def platformList = ['Debian8.2:x64:Debug', 'PortableLinux:x64:Release', 'Ubuntu:arm:Release', 'Ubuntu:x64:Release', 'Ubuntu16.04:arm:Release', 'Ubuntu16.04:x64:Release', 'Ubuntu16.10:x64:Release', 'OSX10.12:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Windows_NT:arm:Debug', 'RHEL7.2:x64:Release', 'CentOS7.1:x64:Debug', 'OpenSUSE42.1:x64:Debug'] +def platformList = ['Debian8.2:x64:Debug', 'PortableLinux:x64:Release', 'Ubuntu:arm:Release', 'Ubuntu:x64:Release', 'Ubuntu16.04:arm:Release', 'Ubuntu16.04:x64:Release', 'Ubuntu16.10:x64:Release', 'OSX10.12:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Windows_NT:arm:Debug', 'RHEL7.2:x64:Release', 'CentOS7.1:x64:Debug', 'Fedora24:x64:Debug', 'OpenSUSE42.1:x64:Debug'] def static getBuildJobName(def configuration, def os, def architecture) { return configuration.toLowerCase() + '_' + os.toLowerCase() + '_' + architecture.toLowerCase() From f6f90ebb63afeeec170fc8f41ffb9229a03d15cd Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Thu, 30 Mar 2017 17:27:36 -0700 Subject: [PATCH 110/625] Format Host Help Arguments --- src/corehost/cli/fxr/fx_muxer.cpp | 115 ++++++++++++++++++------------ src/corehost/cli/fxr/fx_muxer.h | 1 + src/corehost/common/utils.cpp | 7 +- src/corehost/common/utils.h | 8 ++- 4 files changed, 82 insertions(+), 49 deletions(-) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index 3c4ceac6..e4e3059f 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -711,7 +711,7 @@ bool is_sdk_dir_present(const pal::string_t& own_dir) return pal::directory_exists(sdk_path); } -int muxer_usage(bool is_sdk_present) +int muxer_info() { trace::println(); trace::println(_X("Microsoft .NET Core Shared Framework Host")); @@ -719,30 +719,40 @@ int muxer_usage(bool is_sdk_present) trace::println(_X(" Version : %s"), _STRINGIFY(HOST_FXR_PKG_VER)); trace::println(_X(" Build : %s"), _STRINGIFY(REPO_COMMIT_HASH)); trace::println(); - trace::println(_X("Usage: dotnet [common-options] [[options] path-to-application]")); + + return StatusCode::Success; +} + +int muxer_usage(bool is_sdk_present) +{ + + std::vector known_opts = fx_muxer_t::get_known_opts(true, host_mode_t::invalid, true); + + if (!is_sdk_present) + { + trace::println(); + trace::println(_X("Usage: dotnet [host-options] [path-to-application]")); + trace::println(); + trace::println(_X("path-to-application:")); + trace::println(_X(" The path to an application .dll file to execute.")); + } trace::println(); - trace::println(_X("Common Options:")); - trace::println(_X(" --help Display .NET Core Shared Framework Host help.")); - trace::println(_X(" --version Display .NET Core Shared Framework Host version.")); - trace::println(); - trace::println(_X("Options:")); - trace::println(_X(" --fx-version Version of the installed Shared Framework to use to run the application.")); - trace::println(_X(" --additionalprobingpath Path containing probing policy and assemblies to probe for.")); - trace::println(); - trace::println(_X("Path to Application:")); - trace::println(_X(" The path to a .NET Core managed application, dll or exe file to execute.")); - trace::println(); - trace::println(_X("If you are debugging the Shared Framework Host, set 'COREHOST_TRACE' to '1' in your environment.")); + trace::println(_X("host-options:")); + + for (const auto& arg : known_opts) + { + trace::println(_X(" %-34s %s"), (arg.option + _X(" ") + arg.argument).c_str(), arg.description.c_str()); + } trace::println(); - if (is_sdk_present) + + trace::println(); + if (!is_sdk_present) { - trace::println(_X("Use dotnet --help to get help with the SDK")); - } - else - { - trace::println(_X("To get started on developing applications for .NET Core, install the SDK from:")); - trace::println(_X(" %s"), DOTNET_CORE_URL); + trace::println(_X("Common Options:")); + trace::println(_X(" -h|--help Displays this help.")); + trace::println(_X(" --info Displays the host information")); + trace::println(); } @@ -759,6 +769,25 @@ void append_realpath(const pal::string_t& path, std::vector* real } } +std::vector fx_muxer_t::get_known_opts(bool exec_mode, host_mode_t mode, bool get_all_options) +{ + std::vector known_opts = { { _X("--additionalprobingpath"), _X(""), _X("Path containing probing policy and assemblies to probe for") } }; + if (get_all_options || exec_mode || mode == host_mode_t::split_fx || mode == host_mode_t::standalone) + { + known_opts.push_back({ _X("--depsfile"), _X(""), _X("Path to .deps.json file") }); + known_opts.push_back({ _X("--runtimeconfig"), _X(""), _X("Path to .runtimeconfig.json file") }); + } + + if (get_all_options || mode == host_mode_t::muxer) + { + known_opts.push_back({ _X("--fx-version"), _X(""), _X("Version of the installed Shared Framework to use to run the application.") }); + known_opts.push_back({ _X("--roll-forward-on-no-candidate-fx"), _X(""), _X("Roll forward on no candidate shared framework is enabled") }); + known_opts.push_back({ _X("--additional-deps"), _X(""), _X("Path to additonal deps.json file") }); + } + + return known_opts; +} + int fx_muxer_t::parse_args_and_execute( const pal::string_t& own_dir, const pal::string_t& own_dll, @@ -766,19 +795,7 @@ int fx_muxer_t::parse_args_and_execute( { *is_an_app = true; - std::vector known_opts = { _X("--additionalprobingpath") }; - if (exec_mode || mode == host_mode_t::split_fx || mode == host_mode_t::standalone) - { - known_opts.push_back(_X("--depsfile")); - known_opts.push_back(_X("--runtimeconfig")); - } - - if (mode == host_mode_t::muxer) - { - known_opts.push_back(_X("--fx-version")); - known_opts.push_back(_X("--roll-forward-on-no-candidate-fx")); - known_opts.push_back(_X("--additional-deps")); - } + std::vector known_opts = get_known_opts(exec_mode, mode); // Parse the known arguments if any. int num_parsed = 0; @@ -788,7 +805,7 @@ int fx_muxer_t::parse_args_and_execute( trace::error(_X("Failed to parse supported options or their values:")); for (const auto& arg : known_opts) { - trace::error(_X(" %s"), arg.c_str()); + trace::error(_X(" %s"), arg.option.c_str()); } return InvalidArgFailure; } @@ -1004,17 +1021,14 @@ int fx_muxer_t::execute(const int argc, const pal::char_t* argv[]) trace::verbose(_X("--- Executing in muxer mode...")); - if (pal::strcasecmp(_X("--help-host"), argv[1]) == 0) - { - return muxer_usage(!is_sdk_dir_present(own_dir)); - } - if (pal::strcasecmp(_X("exec"), argv[1]) == 0) { return parse_args_and_execute(own_dir, own_dll, 2, argc, argv, true, host_mode_t::muxer, &is_an_app); // arg offset 2 for dotnet, exec } int result = parse_args_and_execute(own_dir, own_dll, 1, argc, argv, false, host_mode_t::muxer, &is_an_app); // arg offset 1 for dotnet + + if (is_an_app) { return result; @@ -1028,12 +1042,14 @@ int fx_muxer_t::execute(const int argc, const pal::char_t* argv[]) if (!resolve_sdk_dotnet_path(own_dir, &sdk_dotnet)) { assert(argc > 1); - if (pal::strcasecmp(_X("--help"), argv[1]) == 0 || - pal::strcasecmp(_X("--version"), argv[1]) == 0 || - pal::strcasecmp(_X("-h"), argv[1]) == 0 || - pal::strcasecmp(_X("-v"), argv[1]) == 0) + if ( pal::strcasecmp(_X("-h"), argv[1]) == 0 || + pal::strcasecmp(_X("--help"), argv[1]) == 0 ) { - return muxer_usage(true); + return muxer_usage(false); + } + else if (pal::strcasecmp(_X("--info"), argv[1]) == 0) + { + return muxer_info(); } trace::error(_X("Did you mean to run dotnet SDK commands? Please install dotnet SDK from: ")); trace::error(_X(" %s"), DOTNET_CORE_URL); @@ -1055,7 +1071,14 @@ int fx_muxer_t::execute(const int argc, const pal::char_t* argv[]) new_argv[1] = sdk_dotnet.c_str(); trace::verbose(_X("Using dotnet SDK dll=[%s]"), sdk_dotnet.c_str()); - return parse_args_and_execute(own_dir, own_dll, 1, new_argv.size(), new_argv.data(), false, host_mode_t::muxer, &is_an_app); + result = parse_args_and_execute(own_dir, own_dll, 1, new_argv.size(), new_argv.data(), false, host_mode_t::muxer, &is_an_app); + + if (pal::strcasecmp(_X("--info"), argv[1]) == 0) + { + muxer_info(); + } + + return result; } diff --git a/src/corehost/cli/fxr/fx_muxer.h b/src/corehost/cli/fxr/fx_muxer.h index 1473af2d..7a7e960e 100644 --- a/src/corehost/cli/fxr/fx_muxer.h +++ b/src/corehost/cli/fxr/fx_muxer.h @@ -17,6 +17,7 @@ class fx_muxer_t { public: static int execute(const int argc, const pal::char_t* argv[]); + static std::vector get_known_opts(bool exec_mode, host_mode_t mode, bool get_all_options = false); private: static int read_config_and_execute( const pal::string_t& own_dir, diff --git a/src/corehost/common/utils.cpp b/src/corehost/common/utils.cpp index b9e7b55f..9ac0f675 100644 --- a/src/corehost/common/utils.cpp +++ b/src/corehost/common/utils.cpp @@ -190,7 +190,7 @@ pal::string_t get_last_known_arg( bool parse_known_args( const int argc, const pal::char_t* argv[], - const std::vector& known_opts, + const std::vector& known_opts, // Although multimap would provide this functionality the order of kv, values are // not preserved in C++ < C++0x std::unordered_map>* opts, @@ -201,7 +201,10 @@ bool parse_known_args( { pal::string_t arg = argv[arg_i]; pal::string_t arg_lower = pal::to_lower(arg); - if (std::find(known_opts.begin(), known_opts.end(), arg_lower) == known_opts.end()) + if (std::find_if(known_opts.begin(), known_opts.end(), + [&value_to_look = arg_lower] + (const host_option& hostoption) -> bool { return value_to_look == hostoption.option; }) + == known_opts.end()) { // Unknown argument. break; diff --git a/src/corehost/common/utils.h b/src/corehost/common/utils.h index c8f4bad0..40e0375e 100644 --- a/src/corehost/common/utils.h +++ b/src/corehost/common/utils.h @@ -5,6 +5,12 @@ #define UTILS_H #include "pal.h" +struct host_option +{ + pal::string_t option; + pal::string_t argument; + pal::string_t description; +}; #define _STRINGIFY(s) _X(s) #define DOTNET_CORE_URL _X("http://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409") @@ -28,7 +34,7 @@ pal::string_t get_last_known_arg( bool parse_known_args( const int argc, const pal::char_t* argv[], - const std::vector& known_opts, + const std::vector& known_opts, std::unordered_map>* opts, int* num_args); bool skip_utf8_bom(pal::ifstream_t* stream); From 1dcf7742873c9697978d79c2ab349d07e0034258 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Thu, 6 Apr 2017 06:18:10 -0700 Subject: [PATCH 111/625] Updating CoreClr, Standard to preview1-25206-02, preview1-25206-01 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index c07708bb..55b2e58f 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25205-04"; - public static readonly string JitVersion = "2.0.0-preview1-25205-04"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25206-02"; + public static readonly string JitVersion = "2.0.0-preview1-25206-02"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index d892da6b..efbcb74f 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25205-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25205-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25206-02", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25205-01", - "NETStandard.Library": "2.0.0-preview1-25205-01" + "NETStandard.Library": "2.0.0-preview1-25206-01" }, "frameworks": { "netcoreapp2.0": {} From b97a2305f1c7b271c1ee26a65aa83daa2430272e Mon Sep 17 00:00:00 2001 From: wtgodbe Date: Wed, 5 Apr 2017 10:39:23 -0700 Subject: [PATCH 112/625] Remove dependency on VC Redist from Core-Setup installers --- packaging/windows/inc/crtvariables.wxi | 26 --------------- packaging/windows/sharedframework/bundle.wxs | 34 -------------------- 2 files changed, 60 deletions(-) delete mode 100644 packaging/windows/inc/crtvariables.wxi diff --git a/packaging/windows/inc/crtvariables.wxi b/packaging/windows/inc/crtvariables.wxi deleted file mode 100644 index ee414f61..00000000 --- a/packaging/windows/inc/crtvariables.wxi +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/packaging/windows/sharedframework/bundle.wxs b/packaging/windows/sharedframework/bundle.wxs index 7e7f7a2a..a1a15011 100644 --- a/packaging/windows/sharedframework/bundle.wxs +++ b/packaging/windows/sharedframework/bundle.wxs @@ -4,7 +4,6 @@ xmlns:swid="http://schemas.microsoft.com/wix/TagExtension" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension"> - - - - @@ -56,23 +39,6 @@ - - - From 3633e88852d0b6ba7826e489d7a40d52b10a75da Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Thu, 6 Apr 2017 13:11:38 -0700 Subject: [PATCH 113/625] Updating Standard to preview1-25206-02 --- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index efbcb74f..a8b8bf5f 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -4,7 +4,7 @@ "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25206-02", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25205-01", - "NETStandard.Library": "2.0.0-preview1-25206-01" + "NETStandard.Library": "2.0.0-preview1-25206-02" }, "frameworks": { "netcoreapp2.0": {} From 69eeba979b44cee29b84cfd64193d838eb572c09 Mon Sep 17 00:00:00 2001 From: Jose Perez Rodriguez Date: Thu, 6 Apr 2017 13:30:22 -0700 Subject: [PATCH 114/625] Generating UAP Metapackage for the new framework (#1967) Generating UAP Metapackage for the new framework --- ...ft.NETCore.UniversalWindowsPlatform.builds | 6 +- ...t.NETCore.UniversalWindowsPlatform.depproj | 121 ++++++++++++++++++ ...t.NETCore.UniversalWindowsPlatform.pkgproj | 77 +++++++---- .../dir.props | 7 + .../netcore50.props | 116 +++++++++++++++++ .../project.json | 43 ------- .../project.json.template | 20 +++ .../uapRIDs.props | 27 ++++ .../Microsoft.NETCore.builds | 14 -- .../Microsoft.NETCore.pkgproj | 33 ----- pkg/projects/Microsoft.NETCore/project.json | 62 --------- pkg/projects/dir.props | 36 +----- pkg/projects/netcoreappRIDs.props | 38 ++++++ 13 files changed, 387 insertions(+), 213 deletions(-) create mode 100644 pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj create mode 100644 pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/dir.props create mode 100644 pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/netcore50.props delete mode 100644 pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json create mode 100644 pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template create mode 100644 pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/uapRIDs.props delete mode 100644 pkg/projects/Microsoft.NETCore/Microsoft.NETCore.builds delete mode 100644 pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj delete mode 100644 pkg/projects/Microsoft.NETCore/project.json create mode 100644 pkg/projects/netcoreappRIDs.props diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds index e1eb74e0..df002a8a 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds @@ -1,10 +1,6 @@ - - false - - - + diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj new file mode 100644 index 00000000..e342a09a --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj @@ -0,0 +1,121 @@ + + + + + + unused + + unused + UAP,Version=v10.1 + uap10.1 + Microsoft.Private.CoreFx.UAP + + + + + + + + + + + + + + + + <_runtimeCLR Include="@(ReferenceCopyLocalPaths)" Condition="'%(ReferenceCopyLocalPaths.FileName)' == 'coreclr' OR '%(ReferenceCopyLocalPaths.FileName)' == 'libcoreclr'" /> + + + + <_FilesToPackage Include="@(ReferenceCopyLocalPaths)"> + + true + + true + + <_FilesToPackage> + runtimes/$(NuGetRuntimeIdentifier)/lib/$(PackageTargetFramework) + runtimes/$(NuGetRuntimeIdentifier)/native + + + + + + <_FilesToPackage Include="@(Reference)"> + ref/$(PackageTargetFramework) + + + + + + <_FilesToPackage> + %(Identity) + %(TargetPath)/%(FileName)%(Extension) + + + + <_primaryFilesByPackagePath Include="@(_FilesToPackage->'%(PackagePath)')" Condition="$([System.String]::new('%(NuGetPackageId)').EndsWith('$(PrimaryPackage)'))"/> + <_secondaryFilesByPackagePath Include="@(_FilesToPackage->'%(PackagePath)')" Condition="!$([System.String]::new('%(NuGetPackageId)').EndsWith('$(PrimaryPackage)'))"/> + + + <_secondaryFilesByPackagePath Remove="@(_primaryFilesByPackagePath)" /> + + <_filesByPackagePath Include="@(_primaryFilesByPackagePath);@(_secondaryFilesByPackagePath)" /> + + + + + + + + + + + + + + <_secondarySystemPackages Include="@(_secondaryFilesByPackagePath->'%(NuGetPackageId)')" + Condition="$([System.String]::new('%(NuGetPackageId)').Contains('System.'))" /> + <_secondarySystemPackages Remove="@(PermittedSystemPackages)" /> + + + + + + + + + + + + + + + $([System.Text.RegularExpressions.Regex]::Match('%(Identity)', '(\w[^:"]*)')) + $([System.Text.RegularExpressions.Regex]::Match('%(Identity)', '(\d+\.\d+.\d+[^"]*)')) + + + + %(PackageMatch.PackageVersion) + + + + <_DependenciesToPackageWithVersion Include="@(ReferencedPackage)" Condition="'@(ReferencedPackage)' == '@(DependenciesToPackage)' AND '%(Identity)' != ''"> + $(PackageTargetFramework) + + + + + + + + + + + + diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj index 3f53d681..de4f9bf8 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj @@ -1,39 +1,68 @@  - + 5.3.0 - AnyCPU - false - false + true + true + false + $(IntermediateOutputPath)$(MSBuildProjectName).props + $(IntermediateOutputPath)$(MSBuildProjectName).PlatformManifest.txt + true + + true + + + - - - 5.0.3 + + + + + + + + .NETCore50 + + + + ref/netcore50 + + + + + + + + NuGetRuntimeIdentifier=$(PackageTargetRuntime) + - - - - - - - - $([System.Text.RegularExpressions.Regex]::Match('%(Identity)', '(\w[^:"]*)')) - $([System.Text.RegularExpressions.Regex]::Match('%(Identity)', '(\d+\.\d+.\d+[^"]*)')) - - - - %(PackageMatch.PackageVersion) - - + + + + + + + - - + diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/dir.props b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/dir.props new file mode 100644 index 00000000..91279a8f --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/dir.props @@ -0,0 +1,7 @@ + + + + $(MSBuildThisFileDirectory)\uapRIDs.props + + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/netcore50.props b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/netcore50.props new file mode 100644 index 00000000..fbee88e1 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/netcore50.props @@ -0,0 +1,116 @@ + + + + + 5.0.2 + + + 1.6.0 + + + 1.0.2 + + + 1.0.3 + + + 1.0.2 + + + 4.0.1 + + + 4.0.1 + + + 4.0.1 + + + 4.0.11 + + + 4.1.0 + + + 4.0.1 + + + 4.0.2 + + + 4.0.1 + + + 4.0.1 + + + 4.0.0 + + + 4.0.11 + + + 4.1.0 + + + 4.0.1 + + + 4.0.0 + + + 4.0.0 + + + 4.0.1 + + + 4.0.1 + + + 4.0.1 + + + 4.0.3 + + + 4.1.1 + + + 4.1.2 + + + 4.0.11 + + + 4.0.1 + + + 4.0.1 + + + 4.1.0 + + + 4.1.0 + + + 4.1.0 + + + 4.0.1 + + + 4.0.1 + + + 4.0.1 + + + 4.0.1 + + + 4.0.11 + + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json deleted file mode 100644 index 20997913..00000000 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "dependencies": { - "Microsoft.Net.Native.Compiler": "1.6.0", - "Microsoft.NETCore.Portable.Compatibility": "1.0.2", - "Microsoft.NETCore.Runtime.CoreCLR": "1.0.3", - "Microsoft.NETCore.Targets": "1.0.2", - "Microsoft.Win32.Primitives": "4.0.1", - "System.Collections.NonGeneric": "4.0.1", - "System.Collections.Specialized": "4.0.1", - "System.ComponentModel.EventBasedAsync": "4.0.11", - "System.Data.Common": "4.1.0", - "System.Diagnostics.Contracts": "4.0.1", - "System.Diagnostics.StackTrace": "4.0.2", - "System.IO.IsolatedStorage": "4.0.1", - "System.Net.Http.Rtc": "4.0.1", - "System.Net.NameResolution": "4.0.0", - "System.Net.Requests": "4.0.11", - "System.Net.Sockets": "4.1.0", - "System.Net.WebHeaderCollection": "4.0.1", - "System.Net.WebSockets": "4.0.0", - "System.Net.WebSockets.Client": "4.0.0", - "System.Numerics.Vectors.WindowsRuntime": "4.0.1", - "System.Reflection.Context": "4.0.1", - "System.Runtime.InteropServices.WindowsRuntime": "4.0.1", - "System.Runtime.Serialization.Json": "4.0.3", - "System.Runtime.Serialization.Primitives": "4.1.1", - "System.Runtime.Serialization.Xml": "4.1.2", - "System.Runtime.WindowsRuntime": "4.0.11", - "System.Runtime.WindowsRuntime.UI.Xaml": "4.0.1", - "System.ServiceModel.Duplex": "4.0.1", - "System.ServiceModel.Http": "4.1.0", - "System.ServiceModel.NetTcp": "4.1.0", - "System.ServiceModel.Primitives": "4.1.0", - "System.ServiceModel.Security": "4.0.1", - "System.Text.Encoding.CodePages": "4.0.1", - "System.Threading.Overlapped": "4.0.1", - "System.Xml.XmlDocument": "4.0.1", - "System.Xml.XmlSerializer": "4.0.11" - }, - "frameworks": { - "netstandard1.5": {} - } -} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template new file mode 100644 index 00000000..85bbb15d --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -0,0 +1,20 @@ +{ + "dependencies": { + "Microsoft.Net.Native.Compiler": "1.6.0", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25205-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25205-03", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25205-01", + "NETStandard.Library": "2.0.0-preview1-25204-01", + "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", + "System.ServiceModel.Http": "4.4.0-beta-25205-01", + "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", + "System.ServiceModel.Primitives": "4.4.0-beta-25205-01", + "System.ServiceModel.Security": "4.4.0-beta-25205-01" + }, + "frameworks": { + "uap10.1": {} + }, + "runtimes": { + "{RID}": {} + } +} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/uapRIDs.props b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/uapRIDs.props new file mode 100644 index 00000000..f75d0cb6 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/uapRIDs.props @@ -0,0 +1,27 @@ + + + + win10-$(Platform) + + + + + x86 + + + + arm + + + win10-x86 + x86 + + + win10-x64 + + + win10-arm + arm + + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.builds b/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.builds deleted file mode 100644 index ad850492..00000000 --- a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.builds +++ /dev/null @@ -1,14 +0,0 @@ - - - - false - - - - - - - - - - diff --git a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj b/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj deleted file mode 100644 index 9db08b5d..00000000 --- a/pkg/projects/Microsoft.NETCore/Microsoft.NETCore.pkgproj +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - 5.0.3 - AnyCPU - false - false - - - - - - - - - - $([System.Text.RegularExpressions.Regex]::Match('%(Identity)', '(\w[^:"]*)')) - $([System.Text.RegularExpressions.Regex]::Match('%(Identity)', '(\d+\.\d+.\d+[^"]*)')) - - - - %(PackageMatch.PackageVersion) - - - - - - - - - \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore/project.json b/pkg/projects/Microsoft.NETCore/project.json deleted file mode 100644 index 6b278715..00000000 --- a/pkg/projects/Microsoft.NETCore/project.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "dependencies": { - "Microsoft.CSharp": "4.0.1", - "Microsoft.NETCore.Platforms": "1.0.2-preview1-24508-08", - "Microsoft.VisualBasic": "10.0.1", - "System.AppContext": "4.1.0", - "System.Collections": "4.0.11", - "System.Collections.Concurrent": "4.0.12", - "System.Collections.Immutable": "1.2.0", - "System.ComponentModel": "4.0.1", - "System.ComponentModel.Annotations": "4.1.0", - "System.Diagnostics.Debug": "4.0.11", - "System.Diagnostics.Tools": "4.0.1", - "System.Diagnostics.Tracing": "4.1.0", - "System.Dynamic.Runtime": "4.0.11", - "System.Globalization": "4.0.11", - "System.Globalization.Calendars": "4.0.1", - "System.Globalization.Extensions": "4.0.1", - "System.IO": "4.1.0", - "System.IO.Compression": "4.1.0", - "System.IO.Compression.ZipFile": "4.0.1", - "System.IO.FileSystem": "4.0.1", - "System.IO.FileSystem.Primitives": "4.0.1", - "System.IO.UnmanagedMemoryStream": "4.0.1", - "System.Linq": "4.1.0", - "System.Linq.Expressions": "4.1.0", - "System.Linq.Parallel": "4.0.1", - "System.Linq.Queryable": "4.0.1", - "System.Net.Http": "4.1.0", - "System.Net.NetworkInformation": "4.1.0", - "System.Net.Primitives": "4.0.11", - "System.Numerics.Vectors": "4.1.1", - "System.ObjectModel": "4.0.12", - "System.Reflection": "4.1.0", - "System.Reflection.DispatchProxy": "4.0.1", - "System.Reflection.Extensions": "4.0.1", - "System.Reflection.Metadata": "1.3.0", - "System.Reflection.Primitives": "4.0.1", - "System.Reflection.TypeExtensions": "4.1.0", - "System.Resources.ResourceManager": "4.0.1", - "System.Runtime": "4.1.0", - "System.Runtime.Extensions": "4.1.0", - "System.Runtime.Handles": "4.0.1", - "System.Runtime.InteropServices": "4.1.0", - "System.Runtime.Numerics": "4.0.1", - "System.Security.Claims": "4.0.1", - "System.Security.Principal": "4.0.1", - "System.Text.Encoding": "4.0.11", - "System.Text.Encoding.Extensions": "4.0.11", - "System.Text.RegularExpressions": "4.1.0", - "System.Threading": "4.0.11", - "System.Threading.Tasks": "4.0.11", - "System.Threading.Tasks.Dataflow": "4.6.0", - "System.Threading.Tasks.Parallel": "4.0.1", - "System.Threading.Timer": "4.0.1", - "System.Xml.ReaderWriter": "4.0.11", - "System.Xml.XDocument": "4.0.11" - }, - "frameworks": { - "netstandard1.5": {} - } -} diff --git a/pkg/projects/dir.props b/pkg/projects/dir.props index 97a0951e..4c1afbb4 100644 --- a/pkg/projects/dir.props +++ b/pkg/projects/dir.props @@ -54,41 +54,13 @@ - - $(DistroRid) - osx.10.12-$(Platform) - win7-$(Platform) - win8-$(Platform) - win10-$(Platform) + + $(MSBuildThisFileDirectory)\netcoreappRIDs.props - - - - armel - - - - - x86 - - - - arm - - - arm64 - - - arm - - - arm - - - armel - + + diff --git a/pkg/projects/netcoreappRIDs.props b/pkg/projects/netcoreappRIDs.props new file mode 100644 index 00000000..1cb65ed9 --- /dev/null +++ b/pkg/projects/netcoreappRIDs.props @@ -0,0 +1,38 @@ + + + + $(DistroRid) + osx.10.12-$(Platform) + win7-$(Platform) + win8-$(Platform) + win10-$(Platform) + + + + + + armel + + + + + x86 + + + + arm + + + arm64 + + + arm + + + arm + + + armel + + + \ No newline at end of file From 62c26d8405661d0bae21ad78544e7681644ab08b Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Mon, 3 Apr 2017 22:05:11 -0700 Subject: [PATCH 115/625] Initial PortableBuild support --- README.md | 52 +++++++++--- .../ArgumentEscaper.cs | 2 +- .../dotnet-host-build/CompileTargets.cs | 37 ++++++--- .../dotnet-host-build/PrepareTargets.cs | 24 +++++- .../dotnet-host-build/PublishTargets.cs | 16 +++- .../dotnet-host-build/TestTargets.cs | 15 +--- build_projects/dotnet-host-build/build.ps1 | 13 ++- build_projects/dotnet-host-build/build.sh | 11 +-- .../Utils/Crossgen.cs | 8 +- .../Utils/Monikers.cs | 10 ++- .../Utils/SharedFrameworkPublisher.cs | 3 +- .../shared-build-targets-utils/Utils/Utils.cs | 41 ++++++++++ buildpipeline/Core-Setup-CrossBuild.json | 4 +- buildpipeline/Core-Setup-OSX-x64.json | 6 +- .../Core-Setup-PortableLinux-x64.json | 6 +- .../Core-Setup-Signing-Windows-x64.json | 20 +++-- .../Core-Setup-Signing-Windows-x86.json | 20 +++-- buildpipeline/Core-Setup-Windows-arm32.json | 6 +- buildpipeline/Core-Setup-Windows-arm64.json | 6 +- buildpipeline/pipeline.json | 81 ++++++++++++++++++- pkg/pack.cmd | 10 ++- pkg/pack.sh | 7 +- pkg/projects/netcoreappRIDs.props | 26 +++++- src/corehost/build.sh | 18 +++-- src/corehost/cli/setup.cmake | 4 + 25 files changed, 352 insertions(+), 94 deletions(-) diff --git a/README.md b/README.md index 0fb71da4..4fd0fe45 100644 --- a/README.md +++ b/README.md @@ -32,12 +32,13 @@ Daily Builds | Platform | Master
[![][build-badge-master]][build-master] | Release/1.1.X
[![][build-badge-1.X.X]][build-1.X.X] | Release/1.0.X
[![][build-badge-1.0.X]][build-1.0.X] | |---------|:----------:|:----------:|:----------:| -| **Windows (x64)** | [![][win-x64-badge-master]][win-x64-version-master]
[Installer][win-x64-installer-master]
[zip][win-x64-zip-master]
[Symbols (zip)][win-x64-symbols-zip-master] | [![][win-x64-badge-1.1.X]][win-x64-version-1.1.X]
[Installer][win-x64-installer-1.1.X]
[zip][win-x64-zip-1.1.X] | [![][win-x64-badge-preview]][win-x64-version-preview]
[Installer][win-x64-installer-preview]
[zip][win-x64-zip-preview] | -| **Windows (x86)** | [![][win-x86-badge-master]][win-x86-version-master]
[Installer][win-x86-installer-master]
[zip][win-x86-zip-master]
[Symbols (zip)][win-x86-symbols-zip-master] | [![][win-x86-badge-1.1.X]][win-x86-version-1.1.X]
[Installer][win-x86-installer-1.1.X]
[zip][win-x86-zip-1.1.X] | [![][win-x86-badge-preview]][win-x86-version-preview]
[Installer][win-x86-installer-preview]
[zip][win-x86-zip-preview] | -| **Windows (arm32)** | [![][win-arm-badge-master]][win-arm-version-master]
[zip][win-arm-zip-master]
[Symbols (zip)][win-arm-symbols-zip-master] | N/A | N/A | -| **Windows (arm64)** | [![][win-arm64-badge-master]][win-arm64-version-master]
[zip][win-arm64-zip-master]
[Symbols (zip)][win-arm64-symbols-zip-master] | N/A | N/A | -| **Mac OS X (x64)** | [![][osx-badge-master]][osx-version-master]
[Installer][osx-installer-master]
[tar.gz][osx-targz-master]
[Symbols (tar.gz)][osx-symbols-targz-master] | [![][osx-badge-1.1.X]][osx-version-1.1.X]
[Installer][osx-installer-1.1.X]
[tar.gz][osx-targz-1.1.X] | [![][osx-badge-preview]][osx-version-preview]
[Installer][osx-installer-preview]
[tar.gz][osx-targz-preview] | -| **Linux (x64)** (for glibc based OS) | [![][linux-x64-badge-master]][linux-x64-version-master]
[tar.gz][linux-x64-targz-master]
[Symbols (tar.gz)][linux-x64-symbols-targz-master] | N/A | N/A | +| **Windows (x64)** | [![][win-x64-badge-master]][win-x64-version-master]
[Installer][win-x64-installer-master]
[zip][win-x64-zip-master]
[Symbols (zip)][win-x64-symbols-zip-master]
Portable Build
[Installer][win-x64-installer-master]
[zip][win-x64-zip-master]
[Symbols (zip)][win-x64-symbols-zip-master] | [![][win-x64-badge-1.1.X]][win-x64-version-1.1.X]
[Installer][win-x64-installer-1.1.X]
[zip][win-x64-zip-1.1.X] | [![][win-x64-badge-preview]][win-x64-version-preview]
[Installer][win-x64-installer-preview]
[zip][win-x64-zip-preview] | +| **Windows (x86)** | [![][win-x86-badge-master]][win-x86-version-master]
[Installer][win-x86-installer-master]
[zip][win-x86-zip-master]
[Symbols (zip)][win-x86-symbols-zip-master]
Portable Build
[Installer][win-x86-installer-master]
[zip][win-x86-zip-master]
[Symbols (zip)][win-x86-symbols-zip-master] | [![][win-x86-badge-1.1.X]][win-x86-version-1.1.X]
[Installer][win-x86-installer-1.1.X]
[zip][win-x86-zip-1.1.X] | [![][win-x86-badge-preview]][win-x86-version-preview]
[Installer][win-x86-installer-preview]
[zip][win-x86-zip-preview] | +| **Windows (arm32)** | [![][win-arm-badge-master]][win-arm-version-master]
[zip][win-arm-zip-master]
[Symbols (zip)][win-arm-symbols-zip-master]
Portable Build
[zip][win-arm-zip-master]
[Symbols (zip)][win-arm-symbols-zip-master] | N/A | N/A | +| **Windows (arm64)** | [![][win-arm64-badge-master]][win-arm64-version-master]
[zip][win-arm64-zip-master]
[Symbols (zip)][win-arm64-symbols-zip-master]
Portable Build
[zip][win-arm64-zip-master]
[Symbols (zip)][win-arm64-symbols-zip-master] | N/A | N/A | +| **Mac OS X (x64)** | [![][osx-badge-master]][osx-version-master]
[Installer][osx-installer-master]
[tar.gz][osx-targz-master]
[Symbols (tar.gz)][osx-symbols-targz-master]
Portable Build
[Installer][osx-installer-master]
[tar.gz][osx-targz-master]
[Symbols (tar.gz)][osx-symbols-targz-master] | [![][osx-badge-1.1.X]][osx-version-1.1.X]
[Installer][osx-installer-1.1.X]
[tar.gz][osx-targz-1.1.X] | [![][osx-badge-preview]][osx-version-preview]
[Installer][osx-installer-preview]
[tar.gz][osx-targz-preview] | +| **Linux (x64)** (for glibc based OS) | [![][linux-x64-badge-master-portable]][linux-x64-version-master-portable]
[tar.gz][linux-x64-targz-master-portable]
[Symbols (tar.gz)][linux-x64-symbols-targz-master-portable] | N/A | N/A | +| **Linux (arm)** (for glibc based OS) | [![][linux-arm-badge-master-portable]][linux-arm-version-master-portable]
[tar.gz][linux-arm-targz-master-portable]
[Symbols (tar.gz)][linux-arm-symbols-targz-master-portable] | N/A | N/A | | **Ubuntu 14.04 (x64)** | [![][ubuntu-14.04-badge-master]][ubuntu-14.04-version-master]
[Host][ubuntu-14.04-host-master]
[Host FX Resolver][ubuntu-14.04-hostfxr-master]
[Shared Framework][ubuntu-14.04-sharedfx-master]
[tar.gz][ubuntu-14.04-targz-master]
[Symbols (tar.gz)][ubuntu-14.04-symbols-targz-master] | [![][ubuntu-14.04-badge-1.1.X]][ubuntu-14.04-version-1.1.X]
[Host][ubuntu-14.04-host-1.1.X]
[Host FX Resolver][ubuntu-14.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-14.04-sharedfx-1.1.X]
[tar.gz][ubuntu-14.04-targz-1.1.X] | [![][ubuntu-14.04-badge-preview]][ubuntu-14.04-version-preview]
[Host][ubuntu-14.04-host-preview]
[Host FX Resolver][ubuntu-14.04-hostfxr-preview]
[Shared Framework][ubuntu-14.04-sharedfx-preview]
[tar.gz][ubuntu-14.04-targz-preview] | | **Ubuntu 14.04 (arm32)** | [![][ubuntu-14.04-arm-badge-master]][ubuntu-14.04-arm-version-master]
[tar.gz][ubuntu-14.04-arm-targz-master]
[Symbols (tar.gz)][ubuntu-14.04-arm-symbols-targz-master] | N/A | N/A | | **Ubuntu 16.04 (x64)** | [![][ubuntu-16.04-badge-master]][ubuntu-16.04-version-master]
[Host][ubuntu-16.04-host-master]
[Host FX Resolver][ubuntu-16.04-hostfxr-master]
[Shared Framework][ubuntu-16.04-sharedfx-master]
[tar.gz][ubuntu-16.04-targz-master]
[Symbols (tar.gz)][ubuntu-16.04-symbols-targz-master] | [![][ubuntu-16.04-badge-1.1.X]][ubuntu-16.04-version-1.1.X]
[Host][ubuntu-16.04-host-1.1.X]
[Host FX Resolver][ubuntu-16.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.04-sharedfx-1.1.X]
[tar.gz][ubuntu-16.04-targz-1.1.X] | [![][ubuntu-16.04-badge-preview]][ubuntu-16.04-version-preview]
[Host][ubuntu-16.04-host-preview]
[Host FX Resolver][ubuntu-16.04-hostfxr-preview]
[Shared Framework][ubuntu-16.04-sharedfx-preview]
[tar.gz][ubuntu-16.04-targz-preview] | @@ -68,6 +69,12 @@ Daily Builds [win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest.zip [win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest.zip +[win-x64-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_x64_Release_version_badge.svg +[win-x64-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x64.portable.version +[win-x64-installer-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64.latest-portable.exe +[win-x64-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest-portable.zip +[win-x64-symbols-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest-portable.zip + [win-x64-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x64_Release_version_badge.svg [win-x64-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x64.version [win-x64-installer-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Installers/Latest/dotnet-win-x64.latest.exe @@ -84,6 +91,12 @@ Daily Builds [win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest.zip [win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest.zip +[win-x86-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_x86_Release_version_badge.svg +[win-x86-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x86.portable.version +[win-x86-installer-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86.latest-portable.exe +[win-x86-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest-portable.zip +[win-x86-symbols-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest-portable.zip + [win-x86-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x86_Release_version_badge.svg [win-x86-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x86.version [win-x86-installer-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Installers/Latest/dotnet-win-x86.latest.exe @@ -99,11 +112,20 @@ Daily Builds [win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm.latest.zip [win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm.latest.zip +[win-arm-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_arm_Release_version_badge.svg +[win-arm-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm.portable.version +[win-arm-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm.latest-portable.zip +[win-arm-symbols-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm.latest-portable.zip + [win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Windows_arm64_Release_version_badge.svg [win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm64.version [win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest.zip [win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest.zip +[win-arm64-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_arm64_Release_version_badge.svg +[win-arm64-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm64.portable.version +[win-arm64-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest-portable.zip +[win-arm64-symbols-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest-portable.zip [osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_OSX_x64_Release_version_badge.svg [osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx.x64.version @@ -111,6 +133,12 @@ Daily Builds [osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest.tar.gz [osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz +[osx-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx_portable_x64_Release_version_badge.svg +[osx-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx.x64.portable.version +[osx-installer-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64.latest-portable.pkg +[osx-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest-portable.tar.gz +[osx-symbols-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest-portable.tar.gz + [osx-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_OSX_x64_Release_version_badge.svg [osx-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.osx.x64.version [osx-installer-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Installers/Latest/dotnet-osx-x64.latest.pkg @@ -122,11 +150,15 @@ Daily Builds [osx-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-osx-x64.latest.tar.gz -[linux-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Linux_x64_Release_version_badge.svg -[linux-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.x64.version -[linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64.latest.tar.gz -[linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz +[linux-x64-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_portable_x64_Release_version_badge.svg +[linux-x64-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.x64.portable.version +[linux-x64-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64.latest-portable.tar.gz +[linux-x64-symbols-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64.latest-portable.tar.gz +[linux-arm-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_portable_arm_Release_version_badge.svg +[linux-arm-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.arm.portable.version +[linux-arm-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-arm.latest-portable.tar.gz +[linux-arm-symbols-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm.latest-portable.tar.gz [ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Ubuntu_x64_Release_version_badge.svg [ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.x64.version diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs b/build_projects/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs index 7b195805..0b6f7656 100644 --- a/build_projects/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs +++ b/build_projects/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs @@ -200,7 +200,7 @@ namespace Microsoft.DotNet.Cli.Build.Framework return true; } - return true; + return false; } } } diff --git a/build_projects/dotnet-host-build/CompileTargets.cs b/build_projects/dotnet-host-build/CompileTargets.cs index 330064bf..5ea02811 100644 --- a/build_projects/dotnet-host-build/CompileTargets.cs +++ b/build_projects/dotnet-host-build/CompileTargets.cs @@ -26,15 +26,22 @@ namespace Microsoft.DotNet.Host.Build { "win7-x86", "win7-x86" }, { "win8-arm", "win8-arm" }, { "win10-arm64", "win10-arm64" }, + { "win-x86", "win-x86" }, + { "win-x64", "win-x64" }, + { "win-arm", "win-arm" }, + { "win-arm64", "win-arm64" }, { "osx.10.12-x64", "osx.10.12-x64" }, + { "osx-x64", "osx-x64"}, { "linux-x64", "linux-x64" }, { "ubuntu.14.04-x64", "ubuntu.14.04-x64" }, { "ubuntu.16.04-x64", "ubuntu.16.04-x64" }, { "ubuntu.16.10-x64", "ubuntu.16.10-x64" }, { "ubuntu.14.04-arm", "ubuntu.14.04-arm" }, { "ubuntu.16.04-arm", "ubuntu.16.04-arm" }, + { "linux-arm", "linux-arm" }, // { "ubuntu.14.04-arm64", "ubuntu.14.04-arm64" }, // { "ubuntu.16.04-arm64", "ubuntu.16.04-arm64" }, +// { "linux-arm64", "linux-arm64" }, { "centos.7-x64", "rhel.7-x64" }, { "rhel.7-x64", "rhel.7-x64" }, { "rhel.7.0-x64", "rhel.7-x64" }, @@ -205,8 +212,7 @@ namespace Microsoft.DotNet.Host.Build string cmakeHostFxrVer = $"-DCLI_CMAKE_HOST_FXR_VER:STRING={hostVersion.LatestHostFxrVersion.ToString()}"; string cmakeCommitHash = $"-DCLI_CMAKE_COMMIT_HASH:STRING={commitHash}"; string cmakeResourceDir = $"-DCLI_CMAKE_RESOURCE_DIR:STRING={resourceDir}"; - string cmakeExtraArgs = null; - + switch (platform.ToLower()) { case "x86": @@ -219,7 +225,7 @@ namespace Microsoft.DotNet.Host.Build cmakeBaseRid = "-DCLI_CMAKE_PKG_RID:STRING=win8-arm"; visualStudio = "Visual Studio 14 2015 ARM"; archMacro = "-DCLI_CMAKE_PLATFORM_ARCH_ARM=1"; - cmakeExtraArgs ="-DCMAKE_SYSTEM_VERSION=10.0"; + cmakeArgList.Add("-DCMAKE_SYSTEM_VERSION=10.0"); arch = "arm"; break; case "arm64": @@ -254,9 +260,9 @@ namespace Microsoft.DotNet.Host.Build cmakeArgList.Add("-G"); cmakeArgList.Add(visualStudio); - if (!String.IsNullOrEmpty(cmakeExtraArgs)) + if (linkPortable) { - cmakeArgList.Add(cmakeExtraArgs); + cmakeArgList.Add("-DCLI_CMAKE_PORTABLE_BUILD=1"); } ExecIn(cmakeOut, "cmake", cmakeArgList); @@ -331,7 +337,7 @@ namespace Microsoft.DotNet.Host.Build if (linkPortable) { - buildScriptArgList.Add("--portableLinux"); + buildScriptArgList.Add("-portable"); } ExecIn(cmakeOut, buildScriptFile, buildScriptArgList); @@ -418,21 +424,28 @@ namespace Microsoft.DotNet.Host.Build string rid = HostPackageSupportedRids[c.BuildContext.Get("TargetRID")]; File.WriteAllText(Path.Combine(pkgDir, "version.txt"), content); + // Form the path to the script that generates nuget packages. + string buildScriptFile = Path.Combine(pkgDir, "pack.sh"); + List buildScriptArgList = new List(); + if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { - Exec(Path.Combine(pkgDir, "pack.cmd")); + buildScriptFile = Path.Combine(pkgDir, "pack.cmd"); } else { - List buildScriptArgList = new List(); - string buildScriptFile = Path.Combine(pkgDir, "pack.sh"); - buildScriptArgList.Add("--rid"); buildScriptArgList.Add(rid); - - Exec(buildScriptFile, buildScriptArgList); } + bool linkPortable = c.BuildContext.Get("LinkPortable"); + if (linkPortable) + { + buildScriptArgList.Add("-portable"); + } + + Exec(buildScriptFile, buildScriptArgList); + foreach (var file in Directory.GetFiles(Path.Combine(pkgDir, "bin", "packages"), "*.nupkg")) { var fileName = Path.GetFileName(file); diff --git a/build_projects/dotnet-host-build/PrepareTargets.cs b/build_projects/dotnet-host-build/PrepareTargets.cs index d718fb9c..341dde7d 100644 --- a/build_projects/dotnet-host-build/PrepareTargets.cs +++ b/build_projects/dotnet-host-build/PrepareTargets.cs @@ -77,6 +77,18 @@ namespace Microsoft.DotNet.Host.Build return c.Success(); } + private static string GetPortablePlatformForRID(string targetRID) + { + if (targetRID.StartsWith("win")) + return "win"; + + if (targetRID.StartsWith("osx")) + return "osx"; + + // Everything else is "linux" + return "linux"; + } + [Target] public static BuildTargetResult CommonInit(BuildTargetContext c) { @@ -107,8 +119,8 @@ namespace Microsoft.DotNet.Host.Build bool linkPortable = (int.Parse(szLinkPortable) == 1)?true:false; if (linkPortable) { - // Portable build only supports Linux RID - targetRID = $"linux-{platformEnv}"; + string ridPortablePlatform = GetPortablePlatformForRID(targetRID); + targetRID = $"{ridPortablePlatform}-{platformEnv}"; realTargetRID = targetRID; // Update/set the TARGETRID environment variable that will be used by various parts of the build @@ -269,7 +281,13 @@ namespace Microsoft.DotNet.Host.Build string version) { var productName = Monikers.GetProductMoniker(c, artifactPrefix, version); - + bool linkPortable = c.BuildContext.Get("LinkPortable"); + if (linkPortable) + { + // If we are building portable binaries, then reflect the same in the installer binary name as well. + productName = productName+"-portable"; + } + var extension = CurrentPlatform.IsWindows ? ".zip" : ".tar.gz"; c.BuildContext[contextPrefix + "CompressedFile"] = Path.Combine(Dirs.Packages, productName + extension); diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index e31768e2..7f783479 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -129,14 +129,20 @@ namespace Microsoft.DotNet.Host.Build "win.x64.version", "win.arm.version", "win.arm64.version", - "linux.x64.version", + "win.x86.portable.version", + "win.x64.portable.version", + "win.arm.portable.version", + "win.arm64.portable.version", + "linux.x64.portable.version", "ubuntu.x64.version", + "linux.arm.portable.version", "ubuntu.arm.version", "ubuntu.16.04.x64.version", "ubuntu.16.04.arm.version", "ubuntu.16.10.x64.version", "rhel.x64.version", "osx.x64.version", + "osx.x64.portable.version", "debian.8.armel.version", "debian.x64.version", "centos.x64.version", @@ -205,14 +211,20 @@ namespace Microsoft.DotNet.Host.Build { "sharedfx_Windows_x64", false }, { "sharedfx_Windows_arm", false }, { "sharedfx_Windows_arm64", false }, - { "sharedfx_Linux_x64", false }, + { "sharedfx_win_portable_x86", false }, + { "sharedfx_win_portable_x64", false }, + { "sharedfx_win_portable_arm", false }, + { "sharedfx_win_portable_arm64", false }, + { "sharedfx_linux_portable_x64", false }, { "sharedfx_Ubuntu_x64", false }, { "sharedfx_Ubuntu_arm", false }, + { "sharedfx_linux_portable_arm", false }, { "sharedfx_Ubuntu_16_04_x64", false }, { "sharedfx_Ubuntu_16_04_arm", false }, { "sharedfx_Ubuntu_16_10_x64", false }, { "sharedfx_RHEL_x64", false }, { "sharedfx_OSX_x64", false }, + { "sharedfx_osx_portable_x64", false }, // { "sharedfx_Debian_8_armel", false }, { "sharedfx_Debian_x64", false }, { "sharedfx_CentOS_x64", false }, diff --git a/build_projects/dotnet-host-build/TestTargets.cs b/build_projects/dotnet-host-build/TestTargets.cs index b08ccf4e..a7bfa4db 100644 --- a/build_projects/dotnet-host-build/TestTargets.cs +++ b/build_projects/dotnet-host-build/TestTargets.cs @@ -97,31 +97,20 @@ namespace Microsoft.DotNet.Host.Build return c.Success(); } - private static bool IsCrossArch(string rid) { - if (!String.IsNullOrEmpty(rid)) - { - return (String.Compare(rid, "win8-arm", true) == 0) - || (String.Compare(rid, "win10-arm64", true) == 0) - || (String.Compare(rid, "ubuntu.14.04-arm", true) == 0) - || (String.Compare(rid, "ubuntu.16.04-arm", true) == 0) - || (rid.EndsWith("-armel")); - } - return false; - } - private static List RunDotnetTestOnTestProjects(BuildTargetContext c, DotNetCli dotnet, string configuration) { var failingTests = new List(); // Fetch the target RID to determine if we support running tests or not. string rid = c.BuildContext.Get("TargetRID"); - bool fIsCrossArch = IsCrossArch(rid); // We dont support running native tests for cross-architecture builds yet. + bool fIsCrossArch = Utils.IsCrossArchRID(rid); foreach (var project in TestProjects) { // Explicitly checking for the host tests since they are the only ones running native code. if (String.Compare("HostActivationTests", project) == 0) { + // We dont support running native tests for cross-architecture builds yet. if (fIsCrossArch) { c.Info($"Skipping tests in: {project} since cross-arch test runs are not yet supported for {rid}."); diff --git a/build_projects/dotnet-host-build/build.ps1 b/build_projects/dotnet-host-build/build.ps1 index 87bf31ba..99bced79 100644 --- a/build_projects/dotnet-host-build/build.ps1 +++ b/build_projects/dotnet-host-build/build.ps1 @@ -12,11 +12,12 @@ param( [string[]]$Targets=@("Default"), [string[]]$EnvVars=@(), [switch]$NoPackage, + [switch]$Portable, [switch]$Help) if($Help) { - Write-Host "Usage: .\build.ps1 [-Configuration ] [-NoPackage] [-Help] [-Targets ]" + Write-Host "Usage: .\build.ps1 [-Configuration ] [-NoPackage] [-Portable] [-Help] [-Targets ]" Write-Host "" Write-Host "Options:" Write-Host " -Configuration Build the specified Configuration (Debug or Release, default: Debug)" @@ -27,6 +28,7 @@ if($Help) Write-Host " -Targets Comma separated build targets to run (Init, Compile, Publish, etc.; Default is a full build and publish)" Write-Host " -EnvVars <'V1=val1','V2=val2'...> Comma separated list of environment variable name-value pairs" Write-Host " -NoPackage Skip packaging targets" + Write-Host " -Portable Optional argument to build portable platform packages" Write-Host " -Help Display this help message" exit 0 } @@ -77,6 +79,15 @@ else $env:DOTNET_BUILD_SKIP_PACKAGING=0 } +if($Portable) +{ + $env:DOTNET_BUILD_LINK_PORTABLE=1 +} +else +{ + $env:DOTNET_BUILD_LINK_PORTABLE=0 +} + # Load Branch Info cat "$RepoRoot\branchinfo.txt" | ForEach-Object { if(!$_.StartsWith("#") -and ![String]::IsNullOrWhiteSpace($_)) { diff --git a/build_projects/dotnet-host-build/build.sh b/build_projects/dotnet-host-build/build.sh index 5793e40a..d454d717 100755 --- a/build_projects/dotnet-host-build/build.sh +++ b/build_projects/dotnet-host-build/build.sh @@ -81,13 +81,8 @@ while [[ $# > 0 ]]; do --nopackage) export DOTNET_BUILD_SKIP_PACKAGING=1 ;; - --portablelinux) - if [ "$__BuildOS" == "Linux" ]; then - export DOTNET_BUILD_LINK_PORTABLE=1 - else - echo "ERROR: portableLinux not supported for non-Linux platforms." - exit 1 - fi + -portable) + export DOTNET_BUILD_LINK_PORTABLE=1 ;; --skip-prereqs) # Allow CI to disable prereqs check since the CI has the pre-reqs but not ldconfig it seems @@ -112,7 +107,7 @@ while [[ $# > 0 ]]; do echo " --nopackage Skip packaging targets" echo " --skip-prereqs Skip checks for pre-reqs in dotnet_install" echo " --build-driver-only Just build dotnet-host-build binary" - echo " --portableLinux Optional argument to build native libraries portable over GLIBC based Linux distros." + echo " -portable Optional argument to build portable platform packages." echo " --docker Build in Docker using the Dockerfile located in scripts/docker/IMAGENAME" echo " --help Display this help message" echo " The build targets to run (Init, Compile, Publish, etc.; Default is a full build and publish)" diff --git a/build_projects/shared-build-targets-utils/Utils/Crossgen.cs b/build_projects/shared-build-targets-utils/Utils/Crossgen.cs index e1f173b2..8eb0106b 100644 --- a/build_projects/shared-build-targets-utils/Utils/Crossgen.cs +++ b/build_projects/shared-build-targets-utils/Utils/Crossgen.cs @@ -47,13 +47,13 @@ namespace Microsoft.DotNet.Cli.Build } // TODO-ARM-Crossgen: Add ubuntu.14.04-arm and ubuntu.16.04-arm - if (_targetRID == "win8-arm") + if ((_targetRID == "win8-arm") || (_targetRID == "win-arm")) { // workaround https://github.com/dotnet/coreclr/issues/9884 // ridCrossgen = Path.Combine(crossgenPackagePath, "tools", "x86_arm", $"crossgen{Constants.ExeSuffix}"); ridCrossgen = Path.Combine(crossgenPackagePath, "tools", "x86_AnyCPU", $"crossgen{Constants.ExeSuffix}"); } - else if (_targetRID == "win10-arm64") + else if ((_targetRID == "win10-arm64") || (_targetRID == "win-arm64")) { // workaround https://github.com/dotnet/coreclr/issues/9884 // ridCrossgen = Path.Combine(crossgenPackagePath, "tools", "x64_arm", $"crossgen{Constants.ExeSuffix}"); @@ -80,13 +80,13 @@ namespace Microsoft.DotNet.Cli.Build string jitPath = Path.Combine(jitPackagePath, "runtimes", jitRid, "native", $"{Constants.DynamicLibPrefix}clrjit{Constants.DynamicLibSuffix}"); // TODO-ARM-Crossgen: Add ubuntu.14.04-arm and ubuntu.16.04-arm - if (_targetRID == "win8-arm") + if ((_targetRID == "win8-arm") || (_targetRID == "win-arm")) { // workaround https://github.com/dotnet/coreclr/issues/9884 // jitPath = Path.Combine(jitPackagePath, "runtimes", "x86_arm", "native", $"{Constants.DynamicLibPrefix}clrjit{Constants.DynamicLibSuffix}"); jitPath = Path.Combine(jitPackagePath, "runtimes", "x86_AnyCPU", "native", $"{Constants.DynamicLibPrefix}clrjit{Constants.DynamicLibSuffix}"); } - else if (_targetRID == "win10-arm64") + else if ((_targetRID == "win10-arm64") || (_targetRID == "win-arm64")) { // workaround https://github.com/dotnet/coreclr/issues/9884 // jitPath = Path.Combine(jitPackagePath, "runtimes", "x64_arm64", "native", $"{Constants.DynamicLibPrefix}clrjit{Constants.DynamicLibSuffix}"); diff --git a/build_projects/shared-build-targets-utils/Utils/Monikers.cs b/build_projects/shared-build-targets-utils/Utils/Monikers.cs index 94dd32b5..a5a1d511 100644 --- a/build_projects/shared-build-targets-utils/Utils/Monikers.cs +++ b/build_projects/shared-build-targets-utils/Utils/Monikers.cs @@ -37,8 +37,9 @@ namespace Microsoft.DotNet.Cli.Build { string rid = Environment.GetEnvironmentVariable("TARGETRID") ?? RuntimeEnvironment.GetRuntimeIdentifier(); - // Look for expected RIDs, including Portable one, for Linux - if (rid.StartsWith("linux-") || rid == "ubuntu.16.04-x64" || rid == "ubuntu.16.04-arm" || rid == "ubuntu.16.10-x64" || rid == "fedora.24-x64" || rid == "opensuse.42.1-x64" || rid == "debian.8-armel" || rid == "tizen.4.0.0-armel") + // Look for expected RIDs, including Portable ones + string platformRID = null; + if (Utils.IsPortableRID(rid, out platformRID) || rid == "ubuntu.16.04-x64" || rid == "ubuntu.16.04-arm" || rid == "ubuntu.16.10-x64" || rid == "fedora.24-x64" || rid == "opensuse.42.1-x64" || rid == "debian.8-armel" || rid == "tizen.4.0.0-armel") { return $"{artifactPrefix}-{rid}.{version}"; } @@ -53,9 +54,10 @@ namespace Microsoft.DotNet.Cli.Build public static string GetBadgeMoniker(BuildTargetContext c) { string rid = c.BuildContext.Get("TargetRID"); - if (rid.StartsWith("linux-")) + string platformRID = null; + if (Utils.IsPortableRID(rid, out platformRID)) { - return $"Linux_{c.BuildContext.Get("Platform")}"; + return $"{platformRID}_portable_{c.BuildContext.Get("Platform")}"; } switch (rid) diff --git a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs b/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs index 087446a5..39da8ccc 100644 --- a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs +++ b/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs @@ -48,7 +48,8 @@ namespace Microsoft.DotNet.Cli.Build // If we are dealing with cross-targeting compilation, then specify the // correct RID for crossgen to use when compiling SharedFramework. // TODO-ARM-Crossgen: Add ubuntu.14.04-arm and ubuntu.16.04-arm - if ((sharedFrameworkRid == "win8-arm") || (sharedFrameworkRid == "win10-arm64") || (sharedFrameworkRid.StartsWith("linux-"))) + string portablePlatformRID = null; + if ((sharedFrameworkRid == "win8-arm") || (sharedFrameworkRid == "win10-arm64") || (Utils.IsPortableRID(sharedFrameworkRid, out portablePlatformRID))) { crossgenRID = sharedFrameworkRid; } diff --git a/build_projects/shared-build-targets-utils/Utils/Utils.cs b/build_projects/shared-build-targets-utils/Utils/Utils.cs index b6faca38..0740e7d5 100644 --- a/build_projects/shared-build-targets-utils/Utils/Utils.cs +++ b/build_projects/shared-build-targets-utils/Utils/Utils.cs @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; using System.IO; using System.Runtime.InteropServices; using System.Security.Cryptography; @@ -9,6 +10,46 @@ namespace Microsoft.DotNet.Cli.Build { public static class Utils { + + public static bool IsCrossArchRID(string rid) { + if (!String.IsNullOrEmpty(rid)) + { + return (String.Compare(rid, "win8-arm", true) == 0) + || (String.Compare(rid, "win-arm", true) == 0) + || (String.Compare(rid, "win-arm64", true) == 0) + || (String.Compare(rid, "win10-arm64", true) == 0) + || (String.Compare(rid, "linux-arm", true) == 0) + || (String.Compare(rid, "ubuntu.14.04-arm", true) == 0) + || (String.Compare(rid, "ubuntu.16.04-arm", true) == 0) + || (rid.EndsWith("-armel")); + } + return false; + } + public static bool IsPortableRID(string rid, out string portablePlatformID) + { + bool fIsPortable = false; + portablePlatformID = null; + + Dictionary portablePlatformIDList = new Dictionary() + { + { "linux-", "linux" }, + { "win-", "win" }, + { "osx-", "osx" } + }; + + foreach(var platformRID in portablePlatformIDList) + { + if (rid.StartsWith(platformRID.Key)) + { + portablePlatformID = platformRID.Value; + fIsPortable = true; + break; + } + } + + return fIsPortable; + } + public static void CleanNuGetTempCache() { // Clean NuGet Temp Cache on Linux (seeing some issues on Linux) diff --git a/buildpipeline/Core-Setup-CrossBuild.json b/buildpipeline/Core-Setup-CrossBuild.json index 0fc48685..628847ef 100644 --- a/buildpipeline/Core-Setup-CrossBuild.json +++ b/buildpipeline/Core-Setup-CrossBuild.json @@ -125,7 +125,7 @@ }, "inputs": { "scriptPath": "$(PB_RepoName)/scripts/docker-as-current-user.sh", - "args": "run --name $(PB_DockerContainerName) --rm --privileged -v $(System.DefaultWorkingDirectory)/$(PB_RepoName):$(PB_GitDirectory) -w $(PB_GitDirectory) -e HOME -e ROOTFS_DIR -e PUBLISH_TO_AZURE_BLOB -e CONNECTION_STRING -e CLI_NUGET_FEED_URL -e CLI_NUGET_SYMBOLS_FEED_URL -e CLI_NUGET_API_KEY -e NUGET_FEED_URL -e NUGET_SYMBOLS_FEED_URL -e NUGET_API_KEY -e GITHUB_PASSWORD $(PB_DockerImageName) ./build.sh $(CommonArguments) $(BuildArguments) $(portableLinux) --env-vars \"DISABLE_CROSSGEN=1,TARGETPLATFORM=$(PB_Architecture),TARGETRID=$(TargetRid),CROSS=1\"", + "args": "run --name $(PB_DockerContainerName) --rm --privileged -v $(System.DefaultWorkingDirectory)/$(PB_RepoName):$(PB_GitDirectory) -w $(PB_GitDirectory) -e HOME -e ROOTFS_DIR -e PUBLISH_TO_AZURE_BLOB -e CONNECTION_STRING -e CLI_NUGET_FEED_URL -e CLI_NUGET_SYMBOLS_FEED_URL -e CLI_NUGET_API_KEY -e NUGET_FEED_URL -e NUGET_SYMBOLS_FEED_URL -e NUGET_API_KEY -e GITHUB_PASSWORD $(PB_DockerImageName) ./build.sh $(CommonArguments) $(BuildArguments) $(PB_PortableBuild) --env-vars \"DISABLE_CROSSGEN=1,TARGETPLATFORM=$(PB_Architecture),TARGETRID=$(TargetRid),CROSS=1\"", "disableAutoCwd": "false", "cwd": "", "failOnStandardError": "false" @@ -278,7 +278,7 @@ "PB_Architecture": { "value": "arm" }, - "portableLinux": { + "PB_PortableBuild": { "value": "", "allowOverride": true }, diff --git a/buildpipeline/Core-Setup-OSX-x64.json b/buildpipeline/Core-Setup-OSX-x64.json index ac476d5c..5d1fea66 100644 --- a/buildpipeline/Core-Setup-OSX-x64.json +++ b/buildpipeline/Core-Setup-OSX-x64.json @@ -124,7 +124,11 @@ "allowOverride": true }, "BuildArguments": { - "value": "--skip-prereqs --configuration $(BuildConfiguration) --targets Default", + "value": "--skip-prereqs --configuration $(BuildConfiguration) --targets Default $(PB_PortableBuild)", + "allowOverride": true + }, + "PB_PortableBuild": { + "value": "", "allowOverride": true }, "CONNECTION_STRING": { diff --git a/buildpipeline/Core-Setup-PortableLinux-x64.json b/buildpipeline/Core-Setup-PortableLinux-x64.json index dd074add..126a904b 100644 --- a/buildpipeline/Core-Setup-PortableLinux-x64.json +++ b/buildpipeline/Core-Setup-PortableLinux-x64.json @@ -181,7 +181,7 @@ "allowOverride": true }, "BuildArguments": { - "value": "--skip-prereqs --configuration $(BuildConfiguration) --targets Default --portableLinux", + "value": "--skip-prereqs --configuration $(BuildConfiguration) --targets Default $(PB_PortableBuild)", "allowOverride": true }, "DockerImageName": { @@ -210,6 +210,10 @@ "PB_CleanAgent": { "value": "true" }, + "PB_PortableBuild": { + "value": "", + "allowOverride": true + }, "DockerHost_Sandbox": { "value": "$(Build.StagingDirectory)/HostSandbox" }, diff --git a/buildpipeline/Core-Setup-Signing-Windows-x64.json b/buildpipeline/Core-Setup-Signing-Windows-x64.json index 73c5654c..43c71b3d 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x64.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x64.json @@ -50,7 +50,7 @@ "inputs": { "scriptType": "filePath", "scriptName": "build_projects/dotnet-host-build/build.ps1", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,CompileCoreHost", + "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,CompileCoreHost $(PB_PortableBuild)", "inlineScript": "# You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host \"Hello World\"", "workingFolder": "", "failOnStandardError": "true" @@ -116,7 +116,7 @@ "inputs": { "scriptType": "filePath", "scriptName": "build_projects/dotnet-host-build/build.ps1", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,PackagePkgProjects,BuildProjectsForNuGetPackages", + "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,PackagePkgProjects,BuildProjectsForNuGetPackages $(PB_PortableBuild)", "inlineScript": "# You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host \"Hello World\"", "workingFolder": "", "failOnStandardError": "true" @@ -135,7 +135,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,PublishSharedFrameworkAndSharedHost", + "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,PublishSharedFrameworkAndSharedHost $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -208,7 +208,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,Test,InitPackage,GenerateVersionBadge,GenerateZip,GenerateMsis,GenerateNugetPackages", + "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,Test,InitPackage,GenerateVersionBadge,GenerateZip,GenerateMsis,GenerateNugetPackages $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -254,7 +254,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,GenerateBundles", + "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,GenerateBundles $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -273,7 +273,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,ExtractEngineFromBundle", + "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,ExtractEngineFromBundle $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -319,7 +319,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,ReattachEngineToBundle", + "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,ReattachEngineToBundle $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -378,7 +378,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,Publish", + "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,Publish $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -476,6 +476,10 @@ "system.debug": { "value": "false" }, + "PB_PortableBuild": { + "value": "", + "allowOverride": true + }, "NUGET_SYMBOLS_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } diff --git a/buildpipeline/Core-Setup-Signing-Windows-x86.json b/buildpipeline/Core-Setup-Signing-Windows-x86.json index f642cc33..78968c6c 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x86.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x86.json @@ -50,7 +50,7 @@ "inputs": { "scriptType": "filePath", "scriptName": "build_projects/dotnet-host-build/build.ps1", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,CompileCoreHost", + "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,CompileCoreHost $(PB_PortableBuild)", "inlineScript": "# You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host \"Hello World\"", "workingFolder": "", "failOnStandardError": "true" @@ -116,7 +116,7 @@ "inputs": { "scriptType": "filePath", "scriptName": "build_projects/dotnet-host-build/build.ps1", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,PackagePkgProjects", + "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,PackagePkgProjects $(PB_PortableBuild)", "inlineScript": "# You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host \"Hello World\"", "workingFolder": "", "failOnStandardError": "true" @@ -135,7 +135,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,PublishSharedFrameworkAndSharedHost", + "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,PublishSharedFrameworkAndSharedHost $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -181,7 +181,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,Test,GenerateVersionBadge,GenerateZip,GenerateMsis", + "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,Test,GenerateVersionBadge,GenerateZip,GenerateMsis $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -227,7 +227,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,GenerateBundles", + "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,GenerateBundles $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -246,7 +246,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,ExtractEngineFromBundle", + "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,ExtractEngineFromBundle $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -292,7 +292,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,ReattachEngineToBundle", + "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,ReattachEngineToBundle $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -351,7 +351,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,Publish", + "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,Publish $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -440,6 +440,10 @@ "RID": { "value": "win81-x86" }, + "PB_PortableBuild": { + "value": "", + "allowOverride": true + }, "MsbuildSigningArguments": { "value": "/p:RID=$(RID) /p:CertificateId=$(CertificateId) /v:detailed" }, diff --git a/buildpipeline/Core-Setup-Windows-arm32.json b/buildpipeline/Core-Setup-Windows-arm32.json index b934a95d..d5988533 100644 --- a/buildpipeline/Core-Setup-Windows-arm32.json +++ b/buildpipeline/Core-Setup-Windows-arm32.json @@ -31,7 +31,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration Release -Targets Init,Compile,Package,Publish -TargetArch arm -Framework netcoreapp2.0", + "arguments": "-Configuration Release -Targets Init,Compile,Package,Publish -TargetArch arm -Framework netcoreapp2.0 $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -107,6 +107,10 @@ "value": "true", "allowOverride": true }, + "PB_PortableBuild": { + "value": "", + "allowOverride": true + }, "NUGET_SYMBOLS_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } diff --git a/buildpipeline/Core-Setup-Windows-arm64.json b/buildpipeline/Core-Setup-Windows-arm64.json index da015674..f3ff0b2d 100644 --- a/buildpipeline/Core-Setup-Windows-arm64.json +++ b/buildpipeline/Core-Setup-Windows-arm64.json @@ -31,7 +31,7 @@ }, "inputs": { "filename": "build.cmd", - "arguments": "-Configuration Release -Targets Init,Compile,Package,Publish -Architecure x64 -TargetArch arm64 -ToolsetDir c:\\tools\\clr -Framework netcoreapp2.0", + "arguments": "-Configuration Release -Targets Init,Compile,Package,Publish -Architecure x64 -TargetArch arm64 -ToolsetDir c:\\tools\\clr -Framework netcoreapp2.0 $(PB_PortableBuild)", "modifyEnvironment": "false", "workingFolder": "", "failOnStandardError": "false" @@ -107,6 +107,10 @@ "value": "true", "allowOverride": true }, + "PB_PortableBuild": { + "value": "", + "allowOverride": true + }, "NUGET_SYMBOLS_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index c9890342..aa43a8e9 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -115,9 +115,24 @@ } }, { - "Name": "Core-Setup-PortableLinux-x64", + "Name": "Core-Setup-OSX-x64", + "Parameters": { + "PB_PortableBuild": "-portable" + }, "ReportingParameters": { - "SubType": "PortableLinux", + "SubType": "PortableBuild", + "OperatingSystem": "OSX", + "Type": "build/product/", + "Platform": "x64" + } + }, + { + "Name": "Core-Setup-PortableLinux-x64", + "Parameters": { + "PB_PortableBuild": "-portable" + }, + "ReportingParameters": { + "SubType": "PortableBuild", "OperatingSystem": "RedHat 7", "Type": "build/product/", "Platform": "x64" @@ -140,6 +155,18 @@ "Platform": "x64" } }, + { + "Name": "Core-Setup-Signing-Windows-x64", + "Parameters": { + "PB_PortableBuild": "-portable" + }, + "ReportingParameters": { + "OperatingSystem": "Windows", + "SubType": "PortableBuild", + "Type": "build/product/", + "Platform": "x64" + } + }, { "Name": "Core-Setup-Signing-Windows-x86", "ReportingParameters": { @@ -148,6 +175,18 @@ "Platform": "x86" } }, + { + "Name": "Core-Setup-Signing-Windows-x86", + "Parameters": { + "PB_PortableBuild": "-portable" + }, + "ReportingParameters": { + "OperatingSystem": "Windows", + "SubType": "PortableBuild", + "Type": "build/product/", + "Platform": "x86" + } + }, { "Name": "Core-Setup-CrossBuild", "Parameters": { @@ -160,6 +199,20 @@ "Type": "build/product/" } }, + { + "Name": "Core-Setup-CrossBuild", + "Parameters": { + "PB_DockerTag": "ubuntu1404_cross_prereqs_v2", + "PB_Architecture": "arm", + "TargetRid": "linux-arm", + "PB_PortableBuild": "-portable" + }, + "ReportingParameters": { + "OperatingSystem": "Ubuntu 14.04", + "SubType": "PortableBuild", + "Type": "build/product/" + } + }, { "Name": "Core-Setup-CrossBuild", "Parameters": { @@ -180,6 +233,30 @@ "Platform": "arm" } }, + { + "Name": "Core-Setup-Windows-arm32", + "Parameters": { + "PB_PortableBuild": "-portable" + }, + "ReportingParameters": { + "OperatingSystem": "Windows", + "SubType": "PortableBuild", + "Type": "build/product/", + "Platform": "arm" + } + }, + { + "Name": "Core-Setup-Windows-arm64", + "Parameters": { + "PB_PortableBuild": "-portable" + }, + "ReportingParameters": { + "OperatingSystem": "Windows", + "SubType": "PortableBuild", + "Type": "build/product/", + "Platform": "arm64" + } + }, { "Name": "Core-Setup-Windows-arm64", "ReportingParameters": { diff --git a/pkg/pack.cmd b/pkg/pack.cmd index bd2df9d2..82c4fa43 100644 --- a/pkg/pack.cmd +++ b/pkg/pack.cmd @@ -4,6 +4,14 @@ setlocal EnableDelayedExpansion set __ProjectDir=%~dp0 set __DotNet=%__ProjectDir%\Tools\dotnetcli\dotnet.exe set __MSBuild=%__ProjectDir%\Tools\MSBuild.dll +set __PortableBuildArgs=false + +:Arg_Loop +if "%1" == "" goto ArgsDone + +if /i "%1" == "-portable" (set __PortableBuildArgs=true&shift&goto Arg_Loop) + +:ArgsDone :: Initialize the MSBuild Tools call "%__ProjectDir%\init-tools.cmd" @@ -20,7 +28,7 @@ if exist "%__ProjectDir%\bin" (rmdir /s /q "%__ProjectDir%\bin") if not ERRORLEVEL 0 goto :Error :: Package the assets using Tools -"%__DotNet%" "%__MSBuild%" "%__ProjectDir%\packages.builds" /p:OSGroup=Windows_NT /verbosity:minimal +"%__DotNet%" "%__MSBuild%" "%__ProjectDir%\packages.builds" /p:OSGroup=Windows_NT /verbosity:minimal /p:PortableBuild=%__PortableBuildArgs% if not ERRORLEVEL 0 goto :Error exit /b 0 diff --git a/pkg/pack.sh b/pkg/pack.sh index 2d01f3e6..70b22bd1 100755 --- a/pkg/pack.sh +++ b/pkg/pack.sh @@ -6,6 +6,7 @@ usage() echo "" echo "Options:" echo " --rid Target Runtime Identifier" + echo " -portable Generate portable RID packages" exit 1 } @@ -23,6 +24,7 @@ done # initialize variables __project_dir="$( cd -P "$( dirname "$SOURCE" )" && pwd )" __distro_rid= +__portableBuildArgs= while [ "$1" != "" ]; do lowerI="$(echo $1 | awk '{print tolower($0)}')" @@ -35,6 +37,9 @@ while [ "$1" != "" ]; do shift __distro_rid=$1 ;; + -portable) + __portableBuildArgs="/p:PortableBuild=true" + ;; *) echo "Unknown argument to pack.sh $1" exit 1 @@ -67,7 +72,7 @@ else fi fi -__common_parameters="/p:$__targets_param /p:DistroRid=$__distro_rid /verbosity:minimal" +__common_parameters="/p:$__targets_param /p:DistroRid=$__distro_rid /verbosity:minimal $__portableBuildArgs" $__msbuild $__project_dir/tasks/core-setup.tasks.builds $__common_parameters || exit 1 diff --git a/pkg/projects/netcoreappRIDs.props b/pkg/projects/netcoreappRIDs.props index 1cb65ed9..e1d05052 100644 --- a/pkg/projects/netcoreappRIDs.props +++ b/pkg/projects/netcoreappRIDs.props @@ -1,6 +1,7 @@ - + + $(DistroRid) osx.10.12-$(Platform) win7-$(Platform) @@ -8,6 +9,12 @@ win10-$(Platform) + + win-$(Platform) + osx-$(Platform) + linux-$(Platform) + + @@ -15,24 +22,39 @@ + x86 + + x86 + + arm arm64 + + arm + + + arm64 + arm + + arm + arm armel - +
+
\ No newline at end of file diff --git a/src/corehost/build.sh b/src/corehost/build.sh index ac0b93b2..1295a504 100755 --- a/src/corehost/build.sh +++ b/src/corehost/build.sh @@ -35,7 +35,11 @@ init_rid_plat() fi if [ $__linkPortable == 1 ]; then - export __rid_plat="linux" + if [ "$(uname -s)" == "Darwin" ]; then + export __rid_plat="osx" + else + export __rid_plat="linux" + fi fi } @@ -49,8 +53,8 @@ usage() echo " --apphostver Version of the apphost executable" echo " --fxrver Version of the hostfxr library" echo " --policyver Version of the hostpolicy library" - echo " --commithash Current commit hash of the repo at build time" - echo " --portableLinux Optional argument to build native libraries portable over GLIBC based Linux distros." + echo " --commithash Current commit hash of the repo at build time" + echo " -portable Optional argument to build portable platform packages." echo " --cross Optional argument to signify cross compilation," echo " and use ROOTFS_DIR environment variable to find rootfs." @@ -74,7 +78,7 @@ __policy_ver= __fxr_ver= __CrossBuild=0 __commit_hash= -__linkPortable=0 +__portableBuildArgs= __configuration=Debug while [ "$1" != "" ]; do @@ -112,8 +116,8 @@ while [ "$1" != "" ]; do shift __commit_hash=$1 ;; - --portablelinux) - __linkPortable=1 + -portable) + __portableBuildArgs="-DCLI_CMAKE_PORTABLE_BUILD=1" ;; --cross) __CrossBuild=1 @@ -124,7 +128,7 @@ while [ "$1" != "" ]; do shift done -__cmake_defines="-DCMAKE_BUILD_TYPE=${__configuration}" +__cmake_defines="-DCMAKE_BUILD_TYPE=${__configuration} ${__portableBuildArgs}" case $__build_arch in amd64|x64) diff --git a/src/corehost/cli/setup.cmake b/src/corehost/cli/setup.cmake index 18bcf597..0e789758 100644 --- a/src/corehost/cli/setup.cmake +++ b/src/corehost/cli/setup.cmake @@ -98,6 +98,10 @@ if (WIN32 AND CLI_CMAKE_PLATFORM_ARCH_ARM) endif() endif () +if (DEFINED CLI_CMAKE_PORTABLE_BUILD) + add_definitions(-DFEATURE_PORTABLE_BUILD=1) +endif () + if("${CLI_CMAKE_HOST_POLICY_VER}" STREQUAL "") message(FATAL_ERROR "Host policy version is not specified") else() From 427647b5aecb1745e0a05727fcdc949147af222b Mon Sep 17 00:00:00 2001 From: wtgodbe Date: Thu, 6 Apr 2017 13:31:19 -0700 Subject: [PATCH 116/625] Add documentation for building on Windows --- .../building/windows-instructions.md | 74 +++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 Documentation/building/windows-instructions.md diff --git a/Documentation/building/windows-instructions.md b/Documentation/building/windows-instructions.md new file mode 100644 index 00000000..54783f8a --- /dev/null +++ b/Documentation/building/windows-instructions.md @@ -0,0 +1,74 @@ +Build Core-Setup on Windows +======================== + +These instructions will lead you through building Core-Setup. + +---------------- +# Environment + +You must install several components to build the Core-Setup repo. These instructions were tested on Windows 8+. + +## Visual Studio + +Visual Studio must be installed. Supported versions: +- [Visual Studio 2015](https://www.visualstudio.com/vs/older-downloads/) (Community, Professional, Enterprise). The community version is completely free. + +For Visual Studio 2015: +* To debug managed code, ensure you have installed at least [Visual Studio 2015 Update 3](https://www.visualstudio.com/en-us/news/releasenotes/vs2015-update3-vs). +* Make sure that you install "VC++ Tools". By default, they will not be installed. +* To build for Arm32, Make sure that you have the Windows SDK for Windows 10 installed (or selected to be installed as part of VS installation). To explicitly install Windows SDK, download it from here: [Windows SDK for Windows 10](https://developer.microsoft.com/en-us/windows/downloads) + +Visual Studio Express is not supported. + +## CMake + +The Core-Setup repo build has been validated using CMake 3.6.3 + +- Install [CMake](http://www.cmake.org/download) for Windows. +- Add its location (e.g. C:\Program Files (x86)\CMake\bin) to the PATH environment variable. + The installation script has a check box to do this, but you can do it yourself after the fact + following the instructions at [Adding to the Default PATH variable](#adding-to-the-default-path-variable) + + +## Git + +For actual user operations, it is often more convinient to use the GIT features built into Visual Studio 2015. +However the Core-Setup and the tests use the GIT command line utilities directly so you need to install them +for these to work properly. You can get it from + +- Install [Git For Windows](https://git-for-windows.github.io/) +- Add its location (e.g. C:\Program Files\Git\cmd) to the PATH environment variable. + The installation script has a check box to do this, but you can do it yourself after the fact + following the instructions at [Adding to the Default PATH variable](#adding-to-the-default-path-variable) + +## PowerShell +PowerShell is used in the build system. Ensure that it is accessible via the PATH environment variable. +Typically this is %SYSTEMROOT%\System32\WindowsPowerShell\v1.0\. + +Powershell version must be 3.0 or higher. This should be the case for Windows 8 and later builds. +- Windows 7 SP1 can install Powershell version 4 [here](https://www.microsoft.com/en-us/download/details.aspx?id=40855). + +## DotNet Core SDK +While not strictly needed to build or tests the .NET Core repository, having the .NET Core SDK installed lets +you use the dotnet.exe command to run .NET Core applications in the 'normal' way. Visual Studio 2015 (update 3) should have +installed the .NET Core SDK, but in case it did not you can get it from the [Installing the .Net Core SDK](https://www.microsoft.com/net/core) page. + +## Adding to the default PATH variable + +The commands above need to be on your command lookup path. Some installers will automatically add them to +the path as part of installation, but if not here is how you can do it. + +You can of course add a directory to the PATH environment variable with the syntax +``` + set PATH=%PATH%;DIRECTORY_TO_ADD_TO_PATH +``` +However the change above will only last until the command windows closes. You can make your change to +the PATH variable persistent by going to Control Panel -> System And Security -> System -> Advanced system settings -> Environment Variables, +and select the 'Path' variable in the 'System variables' (if you want to change it for all users) or 'User variables' (if you only want +to change it for the currnet user). Simply edit the PATH variable's value and add the directory (with a semicolon separator). + +------------------------------------- +# Building + +Once all the necessary tools are in place, building is trivial. Simply run build build.cmd script that lives at +the base of the repository. \ No newline at end of file From b5209a447ffdc8707a4cd1ca746dbed6a84dc507 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Thu, 6 Apr 2017 19:55:29 -0700 Subject: [PATCH 117/625] Updating CoreClr, Standard to preview1-25207-01, preview1-25206-03 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 55b2e58f..b2400bbc 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25206-02"; - public static readonly string JitVersion = "2.0.0-preview1-25206-02"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25207-01"; + public static readonly string JitVersion = "2.0.0-preview1-25207-01"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index a8b8bf5f..4856068c 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25205-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25206-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25207-01", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25205-01", - "NETStandard.Library": "2.0.0-preview1-25206-02" + "NETStandard.Library": "2.0.0-preview1-25206-03" }, "frameworks": { "netcoreapp2.0": {} From b3cbdd3874899b2254180ab85e5a4c038dbfc737 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Fri, 7 Apr 2017 06:18:31 -0700 Subject: [PATCH 118/625] Updating CoreClr, Standard to preview1-25207-02, preview1-25207-01 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index b2400bbc..12f92146 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25207-01"; - public static readonly string JitVersion = "2.0.0-preview1-25207-01"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25207-02"; + public static readonly string JitVersion = "2.0.0-preview1-25207-02"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 4856068c..f4f0db2f 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25205-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25207-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25207-02", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25205-01", - "NETStandard.Library": "2.0.0-preview1-25206-03" + "NETStandard.Library": "2.0.0-preview1-25207-01" }, "frameworks": { "netcoreapp2.0": {} From b3761054a6f1d43533997bfc44d6f44aa392b6d0 Mon Sep 17 00:00:00 2001 From: Davis Goodin Date: Tue, 4 Apr 2017 13:50:52 -0500 Subject: [PATCH 119/625] Add logging to publish to examine copy to Latest (cherry picked from commit 7d020e76689fa0e312a27294c7c6bc035e5511a7) --- build_projects/dotnet-host-build/PublishTargets.cs | 1 + .../shared-build-targets-utils/Publishing/AzurePublisher.cs | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index 7f783479..5e2d84c7 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -169,6 +169,7 @@ namespace Microsoft.DotNet.Host.Build private static void CopyBlobs(string sourceFolder, string destinationFolder) { + Console.WriteLine($"--Copying blobs from '{sourceFolder}' to '{destinationFolder}'"); foreach (string blob in AzurePublisherTool.ListBlobs(sourceFolder)) { string source = blob.Replace("/dotnet/", ""); diff --git a/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs b/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs index fc6f67ab..603c3a12 100644 --- a/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs +++ b/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs @@ -54,6 +54,8 @@ namespace Microsoft.DotNet.Cli.Build public void PublishFile(string blob, string file) { + Console.WriteLine($"Publishing file '{file}' to '{blob}'"); + CloudBlockBlob blockBlob = _blobContainer.GetBlockBlobReference(blob); blockBlob.UploadFromFileAsync(file).Wait(); @@ -71,6 +73,8 @@ namespace Microsoft.DotNet.Cli.Build public void CopyBlob(string sourceBlob, string targetBlob) { + Console.WriteLine($"Copying blob '{sourceBlob}' to '{targetBlob}'"); + CloudBlockBlob source = _blobContainer.GetBlockBlobReference(sourceBlob); CloudBlockBlob target = _blobContainer.GetBlockBlobReference(targetBlob); From a4039123cf908c2c8dbcf16a79ba7bdbae62043f Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Fri, 7 Apr 2017 10:21:41 -0700 Subject: [PATCH 120/625] Fix checking of CMake define --- src/corehost/cli/setup.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corehost/cli/setup.cmake b/src/corehost/cli/setup.cmake index 0e789758..2b6d3672 100644 --- a/src/corehost/cli/setup.cmake +++ b/src/corehost/cli/setup.cmake @@ -98,7 +98,7 @@ if (WIN32 AND CLI_CMAKE_PLATFORM_ARCH_ARM) endif() endif () -if (DEFINED CLI_CMAKE_PORTABLE_BUILD) +if (CLI_CMAKE_PORTABLE_BUILD) add_definitions(-DFEATURE_PORTABLE_BUILD=1) endif () From 24ab623244a323bfe390e8a6a2564bd01155fab4 Mon Sep 17 00:00:00 2001 From: Jose Perez Rodriguez Date: Fri, 7 Apr 2017 11:17:53 -0700 Subject: [PATCH 121/625] Add UAP meta-package project.json to the update template --- build_projects/update-dependencies/UpdateFilesTargets.cs | 1 + .../project.json.template | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/build_projects/update-dependencies/UpdateFilesTargets.cs b/build_projects/update-dependencies/UpdateFilesTargets.cs index 983acf05..434ae4f3 100644 --- a/build_projects/update-dependencies/UpdateFilesTargets.cs +++ b/build_projects/update-dependencies/UpdateFilesTargets.cs @@ -91,6 +91,7 @@ namespace Microsoft.DotNet.Scripts var projectJsonFiles = new List { Path.Combine(Dirs.PkgProjects, "Microsoft.NETCore.App", "project.json.template"), + Path.Combine(Dirs.PkgProjects, "Microsoft.NETCore.UniversalWindowsPlatform", "project.json.template"), Path.Combine(Dirs.PkgDeps, "project.json") }; //projectJsonFiles.AddRange(Directory.GetFiles(Dirs.RepoRoot, "project.json", SearchOption.AllDirectories)); diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 85bbb15d..00fa548d 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -2,9 +2,9 @@ "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.0", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25205-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25205-03", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25207-02", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25205-01", - "NETStandard.Library": "2.0.0-preview1-25204-01", + "NETStandard.Library": "2.0.0-preview1-25207-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From ee92974d00c0b91deb5195666211318dd1fa86db Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Fri, 7 Apr 2017 14:57:03 -0700 Subject: [PATCH 122/625] SIGNED_PACKAGES should not be set for PortableBuilds (#1999) * SIGNED_PACKAGES should not be set for PortableBuilds --- buildpipeline/Core-Setup-Signing-Windows-x64.json | 2 +- buildpipeline/pipeline.json | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/buildpipeline/Core-Setup-Signing-Windows-x64.json b/buildpipeline/Core-Setup-Signing-Windows-x64.json index 43c71b3d..acbe26f2 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x64.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x64.json @@ -459,7 +459,7 @@ "value": "PassedViaPipeBuild" }, "SIGNED_PACKAGES": { - "value": "true" + "value": "false" }, "CertificateId": { "value": "400" diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index aa43a8e9..b6ccb396 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -149,6 +149,9 @@ }, { "Name": "Core-Setup-Signing-Windows-x64", + "Parameters": { + "SIGNED_PACKAGES": "true" + }, "ReportingParameters": { "OperatingSystem": "Windows", "Type": "build/product/", From 6e0dc31256f27c2a2946553a967505c68fed65d9 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Mon, 10 Apr 2017 07:09:42 -0700 Subject: [PATCH 123/625] Updating CoreFx, Standard to preview1-25210-01, preview1-25210-01 respectively --- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 6 +++--- .../project.json.template | 6 +++--- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkg/deps/project.json b/pkg/deps/project.json index ac669231..ce343a0f 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25205-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index c7bcc4b3..5b5c4393 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25205-01\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25210-01\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index f4f0db2f..fd3e1c0e 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25205-01", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25210-01", "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25207-02", "Microsoft.DiaSymReader.Native": "1.4.0", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25205-01", - "NETStandard.Library": "2.0.0-preview1-25207-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", + "NETStandard.Library": "2.0.0-preview1-25210-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 00fa548d..efcd1bac 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.0", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25205-01", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25210-01", "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25207-02", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25205-01", - "NETStandard.Library": "2.0.0-preview1-25207-01", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", + "NETStandard.Library": "2.0.0-preview1-25210-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From 5ad2839479aa72b6cf2fadc8adee61c9a70335d1 Mon Sep 17 00:00:00 2001 From: Jose Perez Rodriguez Date: Mon, 10 Apr 2017 09:04:18 -0700 Subject: [PATCH 124/625] Creating edit to trigger build Creating edit to trigger build --- Documentation/dummy.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/dummy.txt b/Documentation/dummy.txt index 15ecef62..99bb40e9 100644 --- a/Documentation/dummy.txt +++ b/Documentation/dummy.txt @@ -1 +1 @@ -3/30/2017 12:12:53 PM +4/10/2017 09:03:50 AM From d64aa49d1e74d07b11a23852d1054d8e724b85e8 Mon Sep 17 00:00:00 2001 From: Jose Perez Rodriguez Date: Mon, 10 Apr 2017 10:46:05 -0700 Subject: [PATCH 125/625] Skipping UWP package build on non-Windows --- pkg/packages.builds | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkg/packages.builds b/pkg/packages.builds index e27327a3..d5f81554 100644 --- a/pkg/packages.builds +++ b/pkg/packages.builds @@ -3,7 +3,8 @@ - + + From 3c8abe846c679dfd94c8d79c8b1a50ad9f28fe74 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 10 Apr 2017 14:54:39 -0500 Subject: [PATCH 126/625] Rename "package" to "store". Fix https://github.com/dotnet/cli/issues/6243 --- src/corehost/cli/args.cpp | 38 +++++++++++++++--------------- src/corehost/cli/args.h | 18 +++++++------- src/corehost/cli/deps_resolver.cpp | 24 +++++++++---------- src/corehost/cli/deps_resolver.h | 2 +- src/corehost/common/utils.cpp | 12 +++++----- src/corehost/common/utils.h | 7 +++--- 6 files changed, 51 insertions(+), 50 deletions(-) diff --git a/src/corehost/cli/args.cpp b/src/corehost/cli/args.cpp index 6d672c96..456902cb 100644 --- a/src/corehost/cli/args.cpp +++ b/src/corehost/cli/args.cpp @@ -19,16 +19,16 @@ arguments_t::arguments_t() : /** * - * Setup the shared package directories. + * Setup the shared store directories. * - * o %DOTNET_SHARED_PACKAGES% -- multiple delimited paths + * o %DOTNET_SHARED_STORE% -- multiple delimited paths * o $HOME/.dotnet/{x86|x64}/ or %USERPROFILE%\.dotnet\{x86|x64} - * o dotnet.exe relative shared packages + * o dotnet.exe relative shared store * o Global location * Windows: C:\Program Files (x86) or * Unix: directory of dotnet on the path. */ -void setup_shared_package_paths(const hostpolicy_init_t& init, const pal::string_t& own_dir, arguments_t* args) +void setup_shared_store_paths(const hostpolicy_init_t& init, const pal::string_t& own_dir, arguments_t* args) { if (init.tfm.empty()) { @@ -36,29 +36,29 @@ void setup_shared_package_paths(const hostpolicy_init_t& init, const pal::string return; } - // Environment variable DOTNET_SHARED_PACKAGES - (void) get_env_shared_package_dirs(&args->env_shared_packages, get_arch(), init.tfm); + // Environment variable DOTNET_SHARED_STORE + (void) get_env_shared_store_dirs(&args->env_shared_store, get_arch(), init.tfm); - // User profile based packages - pal::string_t local_shared_packages; - if (get_local_shared_package_dir(&local_shared_packages)) + // User profile based store + pal::string_t local_shared_store; + if (get_local_shared_store_dir(&local_shared_store)) { - append_path(&local_shared_packages, init.tfm.c_str()); - args->local_shared_packages = local_shared_packages; + append_path(&local_shared_store, init.tfm.c_str()); + args->local_shared_store = local_shared_store; } - // "dotnet.exe" relative shared packages folder + // "dotnet.exe" relative shared store folder if (init.host_mode == host_mode_t::muxer) { - args->dotnet_shared_packages = own_dir; - append_path(&args->dotnet_shared_packages, _X("packages")); - append_path(&args->dotnet_shared_packages, init.tfm.c_str()); + args->dotnet_shared_store = own_dir; + append_path(&args->dotnet_shared_store, RUNTIME_STORE_DIRECTORY_NAME); + append_path(&args->dotnet_shared_store, init.tfm.c_str()); } - // Global shared package dir - if (get_global_shared_package_dir(&args->global_shared_packages)) + // Global shared store dir + if (get_global_shared_store_dir(&args->global_shared_store)) { - append_path(&args->global_shared_packages, init.tfm.c_str()); + append_path(&args->global_shared_store, init.tfm.c_str()); } } @@ -137,7 +137,7 @@ bool parse_arguments( pal::get_default_servicing_directory(&args.core_servicing); - setup_shared_package_paths(init, own_dir, &args); + setup_shared_store_paths(init, own_dir, &args); return true; } diff --git a/src/corehost/cli/args.h b/src/corehost/cli/args.h index a3aa065d..d2a41cc1 100644 --- a/src/corehost/cli/args.h +++ b/src/corehost/cli/args.h @@ -76,10 +76,10 @@ struct arguments_t pal::string_t core_servicing; std::vector probe_paths; pal::string_t managed_application; - pal::string_t local_shared_packages; - pal::string_t global_shared_packages; - pal::string_t dotnet_shared_packages; - std::vector env_shared_packages; + pal::string_t local_shared_store; + pal::string_t global_shared_store; + pal::string_t dotnet_shared_store; + std::vector env_shared_store; int app_argc; const pal::char_t** app_argv; @@ -95,13 +95,13 @@ struct arguments_t { trace::verbose(_X("-- arguments_t: probe dir: '%s'"), probe.c_str()); } - for (const auto& shared : env_shared_packages) + for (const auto& shared : env_shared_store) { - trace::verbose(_X("-- arguments_t: env shared packages: '%s'"), shared.c_str()); + trace::verbose(_X("-- arguments_t: env shared store: '%s'"), shared.c_str()); } - trace::verbose(_X("-- arguments_t: local shared packages: '%s'"), local_shared_packages.c_str()); - trace::verbose(_X("-- arguments_t: dotnet shared packages: '%s'"), dotnet_shared_packages.c_str()); - trace::verbose(_X("-- arguments_t: global shared packages: '%s'"), global_shared_packages.c_str()); + trace::verbose(_X("-- arguments_t: local shared store: '%s'"), local_shared_store.c_str()); + trace::verbose(_X("-- arguments_t: dotnet shared store: '%s'"), dotnet_shared_store.c_str()); + trace::verbose(_X("-- arguments_t: global shared store: '%s'"), global_shared_store.c_str()); } } }; diff --git a/src/corehost/cli/deps_resolver.cpp b/src/corehost/cli/deps_resolver.cpp index 16a67679..64f4b2e4 100644 --- a/src/corehost/cli/deps_resolver.cpp +++ b/src/corehost/cli/deps_resolver.cpp @@ -133,34 +133,34 @@ void deps_resolver_t::get_dir_assemblies( } } -void deps_resolver_t::setup_shared_package_probes( +void deps_resolver_t::setup_shared_store_probes( const hostpolicy_init_t& init, const arguments_t& args) { - for (const auto& shared : args.env_shared_packages) + for (const auto& shared : args.env_shared_store) { if (pal::directory_exists(shared)) { - // Shared Packages probe: DOTNET_SHARED_PACKAGES + // Shared Store probe: DOTNET_SHARED_STORE m_probes.push_back(probe_config_t::lookup(shared)); } } - if (pal::directory_exists(args.local_shared_packages)) + if (pal::directory_exists(args.local_shared_store)) { - // Shared Packages probe: $HOME/.dotnet/packages or %USERPROFILE%\.dotnet\packages - m_probes.push_back(probe_config_t::lookup(args.local_shared_packages)); + // Shared Store probe: $HOME/.dotnet/store or %USERPROFILE%\.dotnet\store + m_probes.push_back(probe_config_t::lookup(args.local_shared_store)); } - if (pal::directory_exists(args.dotnet_shared_packages)) + if (pal::directory_exists(args.dotnet_shared_store)) { - m_probes.push_back(probe_config_t::lookup(args.dotnet_shared_packages)); + m_probes.push_back(probe_config_t::lookup(args.dotnet_shared_store)); } - if (args.global_shared_packages != args.dotnet_shared_packages && pal::directory_exists(args.global_shared_packages)) + if (args.global_shared_store != args.dotnet_shared_store && pal::directory_exists(args.global_shared_store)) { - // Shared Packages probe: /usr/share/dotnet/packages or C:\Program Files (x86)\dotnet\packages - m_probes.push_back(probe_config_t::lookup(args.global_shared_packages)); + // Shared Store probe: /usr/share/dotnet/store or C:\Program Files (x86)\dotnet\store + m_probes.push_back(probe_config_t::lookup(args.global_shared_store)); } } @@ -194,7 +194,7 @@ void deps_resolver_t::setup_probe_config( // The probe directory will be available at probe time. m_probes.push_back(probe_config_t::published_deps_dir()); - setup_shared_package_probes(init, args); + setup_shared_store_probes(init, args); for (const auto& probe : m_additional_probes) { diff --git a/src/corehost/cli/deps_resolver.h b/src/corehost/cli/deps_resolver.h index b98252fd..bb9de02e 100644 --- a/src/corehost/cli/deps_resolver.h +++ b/src/corehost/cli/deps_resolver.h @@ -76,7 +76,7 @@ public: return true; } - void setup_shared_package_probes( + void setup_shared_store_probes( const hostpolicy_init_t& init, const arguments_t& args); diff --git a/src/corehost/common/utils.cpp b/src/corehost/common/utils.cpp index 9ac0f675..5aeb9820 100644 --- a/src/corehost/common/utils.cpp +++ b/src/corehost/common/utils.cpp @@ -256,10 +256,10 @@ bool skip_utf8_bom(pal::ifstream_t* stream) return true; } -bool get_env_shared_package_dirs(std::vector* dirs, const pal::string_t& arch, const pal::string_t& tfm) +bool get_env_shared_store_dirs(std::vector* dirs, const pal::string_t& arch, const pal::string_t& tfm) { pal::string_t path; - if (!pal::getenv(_X("DOTNET_SHARED_PACKAGES"), &path)) + if (!pal::getenv(_X("DOTNET_SHARED_STORE"), &path)) { return false; } @@ -278,23 +278,23 @@ bool get_env_shared_package_dirs(std::vector* dirs, const pal::st return true; } -bool get_global_shared_package_dir(pal::string_t* dir) +bool get_global_shared_store_dir(pal::string_t* dir) { if (!pal::get_global_dotnet_dir(dir)) { return false; } - append_path(dir, _X("packages")); + append_path(dir, RUNTIME_STORE_DIRECTORY_NAME); return true; } -bool get_local_shared_package_dir(pal::string_t* dir) +bool get_local_shared_store_dir(pal::string_t* dir) { if (!pal::get_local_dotnet_dir(dir)) { return false; } - append_path(dir, _X("packages")); + append_path(dir, RUNTIME_STORE_DIRECTORY_NAME); return true; } diff --git a/src/corehost/common/utils.h b/src/corehost/common/utils.h index 40e0375e..dbbc3271 100644 --- a/src/corehost/common/utils.h +++ b/src/corehost/common/utils.h @@ -14,6 +14,7 @@ struct host_option #define _STRINGIFY(s) _X(s) #define DOTNET_CORE_URL _X("http://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409") +#define RUNTIME_STORE_DIRECTORY_NAME _X("store") bool ends_with(const pal::string_t& value, const pal::string_t& suffix, bool match_case); bool starts_with(const pal::string_t& value, const pal::string_t& prefix, bool match_case); @@ -38,7 +39,7 @@ bool parse_known_args( std::unordered_map>* opts, int* num_args); bool skip_utf8_bom(pal::ifstream_t* stream); -bool get_env_shared_package_dirs(std::vector* dirs, const pal::string_t& arch, const pal::string_t& tfm); -bool get_local_shared_package_dir(pal::string_t* recv); -bool get_global_shared_package_dir(pal::string_t* recv); +bool get_env_shared_store_dirs(std::vector* dirs, const pal::string_t& arch, const pal::string_t& tfm); +bool get_local_shared_store_dir(pal::string_t* recv); +bool get_global_shared_store_dir(pal::string_t* recv); #endif From 8fc72226e3b83537cc3df2904c2a83366e03d4ba Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Mon, 10 Apr 2017 12:58:06 -0700 Subject: [PATCH 127/625] Add debian daily feed install instruction (#1998) --- README.md | 43 +++++++++++++++++++++++++++++++++++-------- 1 file changed, 35 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 4fd0fe45..abbb2926 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,45 @@ .NET Core Runtime & Host Setup Repo =================================== -This repo contains the code to build the .NET Core runtime, libraries and shared host (`dotnet`) installers for -all supported platforms. It **does not** contain the actual sources to .NET Core runtime; this source is split across -the dotnet/coreclr repo (runtime) and dotnet/corefx repo (libraries). +This repo contains the code to build the .NET Core runtime, libraries and shared host (`dotnet`) installers for +all supported platforms. It **does not** contain the actual sources to .NET Core runtime; this source is split across +the dotnet/coreclr repo (runtime) and dotnet/corefx repo (libraries). ## Installation experience -The all-up installation experience is described in the [installation scenarios](https://github.com/dotnet/cli/blob/rel/1.0.0/Documentation/cli-installation-scenarios.md) -document in the dotnet/cli repo. That is the first step to get acquantied with the overall plan and experience we have -thought up for installing .NET Core bits. +The all-up installation experience is described in the [installation scenarios](https://github.com/dotnet/cli/blob/rel/1.0.0/Documentation/cli-installation-scenarios.md) +document in the dotnet/cli repo. That is the first step to get acquainted with the overall plan and experience we have +thought up for installing .NET Core bits. + +# Debian daily feed + +Newest Runtime binaries for 2.0.0 in debian feed may be delayed due to external issues by up to 24h. + +## Obtaining binaries + +Add debian feed: + +For ubuntu 14.04 : trusty , ubuntu 16.04:xenial +``` +sudo sh -c 'echo "deb [arch=amd64] http://apt-mo.trafficmanager.net/repos/dotnet/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list' + +sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893 + +sudo apt-get update +``` + +Install: +``` +sudo apt-get install = +``` + +To list available packages: +``` +apt-cache search dotnet-sharedframework | grep 2.0.0 +``` ## Filing issues -This repo should contain issues that are tied to the installation of the "muxer" (the `dotnet` binary) and installation -of the .NET Core runtime and libraries. +This repo should contain issues that are tied to the installation of the "muxer" (the `dotnet` binary) and installation +of the .NET Core runtime and libraries. For other issues, please use the following repos: From 0fa4eedeed41ea54e1c1561cd49283d69e097f93 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 10 Apr 2017 15:00:58 -0500 Subject: [PATCH 128/625] Update design doc. --- .../DotNetCore-SharedPackageStore.md | 42 +++++++++---------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/Documentation/design-docs/DotNetCore-SharedPackageStore.md b/Documentation/design-docs/DotNetCore-SharedPackageStore.md index fe67ccc0..051e69a5 100644 --- a/Documentation/design-docs/DotNetCore-SharedPackageStore.md +++ b/Documentation/design-docs/DotNetCore-SharedPackageStore.md @@ -9,15 +9,15 @@ The package store can be either a global system-wide folder or a user local fold + **Global**: - The `dotnet` root location -- on Windows, the folder is located in `C:\Program Files (x86)\`. See layout below. - - In the `packages/install` folder we expect packages to be installed ONLY through platform installers like MSI, pkg, deb, apt-get etc. - - The package layout composed with the `dotnet cache` command (details follow) are expected to be unzipped directly into the `packages` folder. Note, that this unzip step is a manual action. + - In the `store/install` folder we expect packages to be installed ONLY through platform installers like MSI, pkg, deb, apt-get etc. + - The package layout composed with the `dotnet store` command (details follow) are expected to be unzipped directly into the `store` folder. Note, that this unzip step is a manual action. ``` - dotnet.exe - shared - netcoreapp2.0 + 2.0.0-preview2-00001 - - packages + - store - install + refs + netcoreapp2.0 @@ -34,7 +34,7 @@ The layout within `netcoreapp*` folders is a NuGet cache layout. ``` - %USERPROFILE% or $HOME/ - .dotnet - - packages + - store - {arch=x86|x64} = do = ``` @@ -43,7 +43,7 @@ The layout within `netcoreapp*` folders is a NuGet cache layout. ### Composing a runtime (non-ref) package store -To compose the layout of the shared package store, we will use a dotnet command called `dotnet cache`. We expect the *hosting providers* (ex: Antares) to use the command to prime their machines and framework authors who want to provide *pre-optimized package archives* create the compressed archive layouts. +To compose the layout of the shared package store, we will use a dotnet command called `dotnet store`. We expect the *hosting providers* (ex: Antares) to use the command to prime their machines and framework authors who want to provide *pre-optimized package archives* create the compressed archive layouts. The layout is composed from a list of package names and versions specified as xml: @@ -62,7 +62,7 @@ The layout is composed from a list of package names and versions specified as xm and issue a command like below: ``` -dotnet cache --entries packages.xml --framework netcoreapp2.0 [--output C:\Foo] --runtime win7-x64 --framework-version 2.0.0-preview2-00001 [--no-optimize] +dotnet store --manifest packages.xml --framework netcoreapp2.0 [--output C:\Foo] --runtime win7-x64 --framework-version 2.0.0-preview2-00001 [--no-optimize] --framework Specifies the TFM that the package store is applicable to --output The output directory to create the package store in (default: %USERPROFILE%\.dotnet or ~/.dotnet) @@ -75,11 +75,11 @@ dotnet cache --entries packages.xml --framework netcoreapp2.0 [--output C:\Foo] ``` NOTE: It is a requirement that `packages.xml` is of msbuild format, because it forms the entry point from which the rest of the SDK's functionality can be accessed -Hosting providers would create a `packages.xml` file corresponding to the packages that will be shared in their hosting environment and specify the file to `dotnet cache`. The file can be on the file system or from an URL. The TFM argument is used in the shared package layout described above. +Hosting providers would create a `packages.xml` file corresponding to the packages that will be shared in their hosting environment and specify the file to `dotnet store`. The file can be on the file system or from an URL. The TFM argument is used in the shared package layout described above. If `--optimize` is specified, we would precompile all the managed assets to native code in a temp folder before copying to the output folder. If crossgen is used, it would be the one acquired in the closure of the `Microsoft.NETCore.App` specified by the `--framework-version` option. Also, if no `--output` folder is specified, then the default is `~/.dotnet` or `%USERPROFILE%\.dotnet\`. The output asset files will be present in the following layout: `$HOME/.dotnet/packages/{tfm}/{package-name}/{package-version}/{asset-path}`. -The output folder will be consumed by the runtime by adding to the `DOTNET_SHARED_PACKAGES_ROOTS` environment variable. See probe precedence below. +The output folder will be consumed by the runtime by adding to the `DOTNET_SHARED_STORE` environment variable. See probe precedence below. # Building apps with shared packages @@ -109,18 +109,18 @@ Note that this is different from current behavior of `dotnet run` for an applica **Current Behavior:** Picks `M.N.A` assemblies out of the NuGet cache without taking advantage of optimizations available from the shared `Microsoft.NETCore.App`. **New Behavior:** Picks `M.N.A` assemblies from the shared framework and the rest of them from the shared package store or the NuGet cache. -`dotnet build` can take advantage of the `refs` folder available at the `packages/install/` folder from the `dotnet` root directory enabling the offline-restore-build scenario. Although we are designing to augment `dotnet build` in the future regarding the reference assemblies, for the scope of this work we'll focus only on runtime assemblies. +`dotnet build` can take advantage of the `refs` folder available at the `store/install/` folder from the `dotnet` root directory enabling the offline-restore-build scenario. Although we are designing to augment `dotnet build` in the future regarding the reference assemblies, for the scope of this work we'll focus only on runtime assemblies. ## Host probe precedence The host will probe in the following order of precedence for `dotnet run` and application activations post `dotnet publish`: + `$CORE_SERVICING` on Unix or `%ProgramFiles(x86)%\coreservicing` on Windows. -+ `DOTNET_SHARED_PACKAGES_ROOTS` in the chained order -+ The user local shared package store in `%USERPROFILE%\.dotnet\packages` or `$HOME/.dotnet/` ++ `DOTNET_SHARED_STORE` in the chained order ++ The user local shared package store in `%USERPROFILE%\.dotnet\store` or `$HOME/.dotnet/store` + The global shared package store + The Shared Framework directory -+ ~~`DOTNET_HOSTING_OPTIMIZATION_CACHE` deprecated in favor of `DOTNET_SHARED_PACKAGES_ROOTS`~~ ++ ~~`DOTNET_HOSTING_OPTIMIZATION_CACHE` deprecated in favor of `DOTNET_SHARED_STORE`~~ + `--additionalprobingpaths` specified in the command line + `runtimeOptions.additionalProbingPaths` (includes NuGet cache probe specified by the CLI for `dotnet run`) + Application `bin` directory @@ -158,20 +158,20 @@ Note that the `profile.xml` specifies exact RID-specific or IL packages to filte ### ASP .NET + If authoring shared package installers (eager cache): - Start from a clean directory and a list of packages in `packages.xml` file. - - Use `dotnet cache` to produce the layout in the directory. + - Use `dotnet store` to produce the layout in the directory. - Make MSI/pkg/deb and zips of this layout. - Publish the `profile.xml` file that users can use in sync with the installers. - Developer/Deployment-admin installs the MSIs/zips to the deployment machines. + If letting app deployers cache shared packages (lazy cache): - - Publish `packages.xml` file that can be used to perform `dotnet cache`. + - Publish `packages.xml` file that can be used to perform `dotnet store`. - Publish `profile.xml` file that can perform publish filtering. - - Deployment-admin issues `dotnet cache` when running the app. + - Deployment-admin issues `dotnet store` when running the app. + Developer/Deployment-admin issues `dotnet publish filter profile.xml` to produce an ASP.NET app without containing shared components. - Or developer/Deployment-admin issues `dotnet run` after installing MSIs or zips. ### Antares -+ Antares produces the layout using a list of packages and `dotnet cache` in a folder. -+ This folder is then chained into environment variable: `DOTNET_SHARED_PACKAGES`. ++ Antares produces the layout using a list of packages and `dotnet store` in a folder. ++ This folder is then chained into environment variable: `DOTNET_SHARED_STORE`. + When building app from source, issue `dotnet run` to pick up the shared packages. + When publishing an app to run, issue `dotnet publish filter profile.xml` with Antares profile. @@ -184,8 +184,8 @@ Note that the `profile.xml` specifies exact RID-specific or IL packages to filte ### Hosting Primers + I host apps that are already published - - Use `dotnet cache` and produce layout or unzip an earlier layout. - - Set `DOTNET_SHARED_PACKAGES` to point to layout. + - Use `dotnet store` and produce layout or unzip an earlier layout. + - Set `DOTNET_SHARED_STORE` to point to layout. - Nature of publish: + Using my hosting profile + App publish directory doesn't contain the filtered files picked from layout. @@ -193,7 +193,7 @@ Note that the `profile.xml` specifies exact RID-specific or IL packages to filte + Assemblies from app publish directory are overridden (*status quo*) + I build user apps from source - - dotnet cache + - dotnet store - Zip the layout - Deploy on hosting servers - Publish apps with filter @@ -214,6 +214,6 @@ Note that the `profile.xml` specifies exact RID-specific or IL packages to filte + Make `dotnet restore` restore as though project is `type: platform`. + Make `dotnet build` treat projects as though they are `type: platform`. + `dotnet publish filter` support. -+ `dotnet cache` full implementation. ++ `dotnet store` full implementation. From f1a36d5c635c7b7950ddb641c50a9cef1b492e52 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Mon, 10 Apr 2017 14:07:09 -0700 Subject: [PATCH 129/625] Updating CoreClr to preview1-25210-04 (#2018) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- .../project.json.template | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 12f92146..b35e4898 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25207-02"; - public static readonly string JitVersion = "2.0.0-preview1-25207-02"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25210-04"; + public static readonly string JitVersion = "2.0.0-preview1-25210-04"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index fd3e1c0e..cd5779de 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25210-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25207-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25210-04", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", "NETStandard.Library": "2.0.0-preview1-25210-01" diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index efcd1bac..ef7a95e0 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -2,7 +2,7 @@ "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.0", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25210-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25207-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25210-04", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", "NETStandard.Library": "2.0.0-preview1-25210-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", From b6f833c330904412c5c61ce61c90463a49c0f6c1 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Wed, 5 Apr 2017 19:41:41 -0700 Subject: [PATCH 130/625] adding runtimeStoreManifestName to DependencyContext --- .../DependencyContextJsonReader.cs | 12 ++++++-- .../DependencyContextStrings.cs | 2 ++ .../DependencyContextWriter.cs | 6 ++++ .../Library.cs | 17 ++++++++++- .../RuntimeLibrary.cs | 30 ++++++++++++++++++- .../DependencyContextJsonReaderTest.cs | 4 ++- .../DependencyContextJsonWriterTests.cs | 8 +++-- 7 files changed, 72 insertions(+), 7 deletions(-) diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextJsonReader.cs b/src/Microsoft.Extensions.DependencyModel/DependencyContextJsonReader.cs index 746614a8..d0b23c99 100644 --- a/src/Microsoft.Extensions.DependencyModel/DependencyContextJsonReader.cs +++ b/src/Microsoft.Extensions.DependencyModel/DependencyContextJsonReader.cs @@ -498,6 +498,7 @@ namespace Microsoft.Extensions.DependencyModel bool serviceable = false; string path = null; string hashPath = null; + string runtimeStoreManifestName = null; reader.ReadStartObject(); @@ -520,6 +521,9 @@ namespace Microsoft.Extensions.DependencyModel case DependencyContextStrings.HashPathPropertyName: hashPath = reader.ReadAsString(); break; + case DependencyContextStrings.RuntimeStoreManifestPropertyName: + runtimeStoreManifestName = reader.ReadAsString(); + break; default: reader.Skip(); break; @@ -534,7 +538,8 @@ namespace Microsoft.Extensions.DependencyModel Type = Pool(type), Serviceable = serviceable, Path = path, - HashPath = hashPath + HashPath = hashPath, + RuntimeStoreManifestName = runtimeStoreManifestName }; } @@ -645,7 +650,8 @@ namespace Microsoft.Extensions.DependencyModel dependencies: targetLibrary.Dependencies, serviceable: stub.Serviceable, path: stub.Path, - hashPath: stub.HashPath); + hashPath: stub.HashPath, + runtimeStoreManifestName : stub.RuntimeStoreManifestName); } else { @@ -725,6 +731,8 @@ namespace Microsoft.Extensions.DependencyModel public string Path; public string HashPath; + + public string RuntimeStoreManifestName; } } } diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextStrings.cs b/src/Microsoft.Extensions.DependencyModel/DependencyContextStrings.cs index 31e93f0c..021a89db 100644 --- a/src/Microsoft.Extensions.DependencyModel/DependencyContextStrings.cs +++ b/src/Microsoft.Extensions.DependencyModel/DependencyContextStrings.cs @@ -27,6 +27,8 @@ namespace Microsoft.Extensions.DependencyModel internal const string HashPathPropertyName = "hashPath"; + internal const string RuntimeStoreManifestPropertyName = "runtimeStoreManifestName"; + internal const string TypePropertyName = "type"; internal const string ServiceablePropertyName = "serviceable"; diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextWriter.cs b/src/Microsoft.Extensions.DependencyModel/DependencyContextWriter.cs index 186052be..2c6a9c54 100644 --- a/src/Microsoft.Extensions.DependencyModel/DependencyContextWriter.cs +++ b/src/Microsoft.Extensions.DependencyModel/DependencyContextWriter.cs @@ -143,6 +143,7 @@ namespace Microsoft.Extensions.DependencyModel Debug.Assert(compilationLibrary.Type == runtimeLibrary.Type); Debug.Assert(compilationLibrary.Path == runtimeLibrary.Path); Debug.Assert(compilationLibrary.HashPath == runtimeLibrary.HashPath); + Debug.Assert(compilationLibrary.RuntimeStoreManifestName == null); } var library = (Library)compilationLibrary ?? (Library)runtimeLibrary; @@ -337,6 +338,11 @@ namespace Microsoft.Extensions.DependencyModel libraryJson.Add(new JProperty(DependencyContextStrings.HashPathPropertyName, library.HashPath)); } + if (library.RuntimeStoreManifestName != null) + { + libraryJson.Add(new JProperty(DependencyContextStrings.RuntimeStoreManifestPropertyName, library.RuntimeStoreManifestName)); + } + return libraryJson; } diff --git a/src/Microsoft.Extensions.DependencyModel/Library.cs b/src/Microsoft.Extensions.DependencyModel/Library.cs index ba9437b0..b9f0d101 100644 --- a/src/Microsoft.Extensions.DependencyModel/Library.cs +++ b/src/Microsoft.Extensions.DependencyModel/Library.cs @@ -27,6 +27,18 @@ namespace Microsoft.Extensions.DependencyModel bool serviceable, string path, string hashPath) + : this(type, name, version, hash, dependencies, serviceable, path, hashPath, runtimeStoreManifestName: null) + { + } + public Library(string type, + string name, + string version, + string hash, + IEnumerable dependencies, + bool serviceable, + string path, + string hashPath, + string runtimeStoreManifestName = null) { if (string.IsNullOrEmpty(type)) { @@ -52,6 +64,7 @@ namespace Microsoft.Extensions.DependencyModel Serviceable = serviceable; Path = path; HashPath = hashPath; + RuntimeStoreManifestName = runtimeStoreManifestName; } public string Type { get; } @@ -69,5 +82,7 @@ namespace Microsoft.Extensions.DependencyModel public string Path { get; } public string HashPath { get; } + + public string RuntimeStoreManifestName {get;} } -} \ No newline at end of file +} diff --git a/src/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs b/src/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs index bf44b670..c4a30673 100644 --- a/src/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs +++ b/src/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs @@ -43,6 +43,33 @@ namespace Microsoft.Extensions.DependencyModel bool serviceable, string path, string hashPath) + : this(type, + name, + version, + hash, + runtimeAssemblyGroups, + nativeLibraryGroups, + resourceAssemblies, + dependencies, + serviceable, + path, + hashPath, + runtimeStoreManifestName : null) + { + } + + public RuntimeLibrary(string type, + string name, + string version, + string hash, + IReadOnlyList runtimeAssemblyGroups, + IReadOnlyList nativeLibraryGroups, + IEnumerable resourceAssemblies, + IEnumerable dependencies, + bool serviceable, + string path, + string hashPath, + string runtimeStoreManifestName) : base(type, name, version, @@ -50,7 +77,8 @@ namespace Microsoft.Extensions.DependencyModel dependencies, serviceable, path, - hashPath) + hashPath, + runtimeStoreManifestName) { if (runtimeAssemblyGroups == null) { diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonReaderTest.cs b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonReaderTest.cs index b6359e43..5bcf133b 100644 --- a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonReaderTest.cs +++ b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonReaderTest.cs @@ -443,7 +443,8 @@ namespace Microsoft.Extensions.DependencyModel.Tests ""serviceable"": false, ""sha512"": ""HASH-System.Banana"", ""path"": ""PackagePath"", - ""hashPath"": ""PackageHashPath"" + ""hashPath"": ""PackageHashPath"", + ""runtimeStoreManifestName"": ""placeHolderManifest.xml"" }, } }"); @@ -461,6 +462,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests package.Serviceable.Should().Be(false); package.Path.Should().Be("PackagePath"); package.HashPath.Should().Be("PackageHashPath"); + package.RuntimeStoreManifestName.Should().Be("placeHolderManifest.xml"); package.ResourceAssemblies.Should().Contain(a => a.Path == "System.Banana.resources.dll") .Subject.Locale.Should().Be("en-US"); diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonWriterTests.cs b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonWriterTests.cs index e761c4b8..99476467 100644 --- a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonWriterTests.cs +++ b/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonWriterTests.cs @@ -217,7 +217,8 @@ namespace Microsoft.Extensions.DependencyModel.Tests }, true, "PackagePath", - "PackageHashPath" + "PackageHashPath", + "placeHolderManifest.xml" ), })); @@ -255,6 +256,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests library.Should().HavePropertyValue("serviceable", true); library.Should().HavePropertyValue("path", "PackagePath"); library.Should().HavePropertyValue("hashPath", "PackageHashPath"); + library.Should().HavePropertyValue("runtimeStoreManifestName", "placeHolderManifest.xml"); } [Fact] @@ -301,7 +303,8 @@ namespace Microsoft.Extensions.DependencyModel.Tests }, true, "PackagePath", - "PackageHashPath" + "PackageHashPath", + "placeHolderManifest.xml" ), })); @@ -338,6 +341,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests library.Should().HavePropertyValue("serviceable", true); library.Should().HavePropertyValue("path", "PackagePath"); library.Should().HavePropertyValue("hashPath", "PackageHashPath"); + library.Should().HavePropertyValue("runtimeStoreManifestName", "placeHolderManifest.xml"); } [Fact] From 13c282fb4afe317e2c255d1feed46c0af08852c6 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Wed, 5 Apr 2017 18:40:09 -0700 Subject: [PATCH 131/625] adding host messaging for missing runtimestore --- src/corehost/cli/deps_entry.h | 1 + src/corehost/cli/deps_format.cpp | 2 ++ src/corehost/cli/deps_resolver.cpp | 24 ++++++++++++++++++------ 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/src/corehost/cli/deps_entry.h b/src/corehost/cli/deps_entry.h index 01b2d847..c228303e 100644 --- a/src/corehost/cli/deps_entry.h +++ b/src/corehost/cli/deps_entry.h @@ -27,6 +27,7 @@ struct deps_entry_t pal::string_t library_hash; pal::string_t library_path; pal::string_t library_hash_path; + pal::string_t runtime_store_manifest_list; asset_types asset_type; pal::string_t asset_name; pal::string_t relative_path; diff --git a/src/corehost/cli/deps_format.cpp b/src/corehost/cli/deps_format.cpp index 180c0ae4..316e14f1 100644 --- a/src/corehost/cli/deps_format.cpp +++ b/src/corehost/cli/deps_format.cpp @@ -69,6 +69,7 @@ void deps_json_t::reconcile_libraries_with_targets( pal::string_t library_path = get_optional_path(properties, _X("path")); pal::string_t library_hash_path = get_optional_path(properties, _X("hashPath")); + pal::string_t runtime_store_manifest_list = get_optional_path(properties, _X("runtimeStoreManifestName")); for (int i = 0; i < deps_entry_t::s_known_asset_types.size(); ++i) { @@ -91,6 +92,7 @@ void deps_json_t::reconcile_libraries_with_targets( entry.library_hash = hash; entry.library_path = library_path; entry.library_hash_path = library_hash_path; + entry.runtime_store_manifest_list = runtime_store_manifest_list; entry.asset_name = asset_name; entry.asset_type = (deps_entry_t::asset_types) i; entry.relative_path = rel_path; diff --git a/src/corehost/cli/deps_resolver.cpp b/src/corehost/cli/deps_resolver.cpp index 64f4b2e4..bbaee04a 100644 --- a/src/corehost/cli/deps_resolver.cpp +++ b/src/corehost/cli/deps_resolver.cpp @@ -296,6 +296,21 @@ bool deps_resolver_t::probe_deps_entry(const deps_entry_t& entry, const pal::str return false; } +bool report_missing_assembly_in_manifest(const deps_entry_t& entry) +{ + if (!entry.runtime_store_manifest_list.empty()) + { + trace::error(_X("Error: assembly specified in the dependencies manifest was not found probably due to missing runtime store associated with %s -- package: '%s', version: '%s', path: '%s'"), + entry.runtime_store_manifest_list.c_str(), entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); + } + else + { + trace::error(_X("Error: assembly specified in the dependencies manifest was not found -- package: '%s', version: '%s', path: '%s'"), + entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); + } + + return false; +} /** * Resovle the TPA assembly locations */ @@ -334,9 +349,7 @@ bool deps_resolver_t::resolve_tpa_list( } else { - trace::error(_X("Error: assembly specified in the dependencies manifest was not found -- package: '%s', version: '%s', path: '%s'"), - entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); - return false; + return report_missing_assembly_in_manifest(entry); } }; @@ -563,9 +576,8 @@ bool deps_resolver_t::resolve_probe_dirs( entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); return true; } - trace::error(_X("Error: assembly specified in the dependencies manifest was not found -- package: '%s', version: '%s', path: '%s'"), - entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); - return false; + + return report_missing_assembly_in_manifest(entry); } if (m_api_set_paths.empty() && pal::need_api_sets() && From 884c69a4ac461a5e1fad31f60f2e01871371c288 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Tue, 11 Apr 2017 09:52:29 -0700 Subject: [PATCH 132/625] Updating CoreClr, Standard to preview1-25211-02, preview1-25211-01 respectively (#2024) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- .../project.json.template | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index b35e4898..9edc0b47 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25210-04"; - public static readonly string JitVersion = "2.0.0-preview1-25210-04"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25211-02"; + public static readonly string JitVersion = "2.0.0-preview1-25211-02"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index cd5779de..783b74f5 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25210-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25210-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25211-02", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", - "NETStandard.Library": "2.0.0-preview1-25210-01" + "NETStandard.Library": "2.0.0-preview1-25211-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index ef7a95e0..ea6fa520 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -2,9 +2,9 @@ "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.0", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25210-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25210-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25211-02", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", - "NETStandard.Library": "2.0.0-preview1-25210-01", + "NETStandard.Library": "2.0.0-preview1-25211-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From abae3d994b8655d1ae962b1c20c6281b7918f829 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Tue, 11 Apr 2017 10:56:57 -0700 Subject: [PATCH 134/625] Updating CoreClr to preview1-25211-03 (#2026) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- .../project.json.template | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 9edc0b47..27a99eab 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25211-02"; - public static readonly string JitVersion = "2.0.0-preview1-25211-02"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25211-03"; + public static readonly string JitVersion = "2.0.0-preview1-25211-03"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 783b74f5..55b1c7c4 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25210-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25211-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25211-03", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", "NETStandard.Library": "2.0.0-preview1-25211-01" diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index ea6fa520..6ea012d6 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -2,7 +2,7 @@ "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.0", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25210-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25211-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25211-03", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", "NETStandard.Library": "2.0.0-preview1-25211-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", From 34dd7dfb287940d1c6afe14efc57317b0cdba7e6 Mon Sep 17 00:00:00 2001 From: Jan Vorlicek Date: Tue, 11 Apr 2017 19:16:55 +0200 Subject: [PATCH 135/625] Remove all memcpy usage This change replaces all memcpy usages by STL functionality. --- src/corehost/cli/fxr/fx_muxer.cpp | 15 ++++++++------- .../cli/json/casablanca/src/json/json_parsing.cpp | 10 +++------- 2 files changed, 11 insertions(+), 14 deletions(-) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index e4e3059f..0aec4417 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -854,9 +854,9 @@ int fx_muxer_t::parse_args_and_execute( if (cur_i != 1) { - vec_argv.resize(argc - cur_i + 1, 0); // +1 for dotnet - memcpy(vec_argv.data() + 1, argv + cur_i, (argc - cur_i) * sizeof(pal::char_t*)); - vec_argv[0] = argv[0]; + vec_argv.reserve(argc - cur_i + 1); // +1 for dotnet + vec_argv.push_back(argv[0]); + vec_argv.insert(vec_argv.end(), argv + cur_i, argv + argc); new_argv = vec_argv.data(); new_argc = vec_argv.size(); } @@ -1065,10 +1065,11 @@ int fx_muxer_t::execute(const int argc, const pal::char_t* argv[]) // Transform dotnet [command] [args] -> dotnet dotnet.dll [command] [args] - std::vector new_argv(argc + 1); - memcpy(&new_argv.data()[2], argv + 1, (argc - 1) * sizeof(pal::char_t*)); - new_argv[0] = argv[0]; - new_argv[1] = sdk_dotnet.c_str(); + std::vector new_argv; + new_argv.reserve(argc + 1); + new_argv.push_back(argv[0]); + new_argv.push_back(sdk_dotnet.c_str()); + new_argv.insert(new_argv.end(), argv + 1, argv + argc); trace::verbose(_X("Using dotnet SDK dll=[%s]"), sdk_dotnet.c_str()); result = parse_args_and_execute(own_dir, own_dll, 1, new_argv.size(), new_argv.data(), false, host_mode_t::muxer, &is_an_app); diff --git a/src/corehost/cli/json/casablanca/src/json/json_parsing.cpp b/src/corehost/cli/json/casablanca/src/json/json_parsing.cpp index 1cf40dc6..95dbe036 100644 --- a/src/corehost/cli/json/casablanca/src/json/json_parsing.cpp +++ b/src/corehost/cli/json/casablanca/src/json/json_parsing.cpp @@ -825,7 +825,7 @@ template bool JSON_StringParser::CompleteStringLiteral(typename JSON_Parser::Token &token) { // This function is specialized for the string parser, since we can be slightly more - // efficient in copying data from the input to the token: do a memcpy() rather than + // efficient in copying data from the input to the token: do a string::append rather than // one character at a time. auto start = m_position; @@ -841,9 +841,7 @@ bool JSON_StringParser::CompleteStringLiteral(typename JSON_Parser(token.string_val.c_str() + prevSize), start, numChars * sizeof(CharType)); + token.string_val.append(start, numChars); if (!JSON_StringParser::handle_unescape_char(token)) { @@ -862,9 +860,7 @@ bool JSON_StringParser::CompleteStringLiteral(typename JSON_Parser(token.string_val.c_str() + prevSize), start, numChars * sizeof(CharType)); + token.string_val.append(start, numChars); token.kind = JSON_Parser::Token::TKN_StringLiteral; From 129f06de072a43c95b23e6cd2f22987ff644bc4b Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Tue, 11 Apr 2017 12:56:21 -0700 Subject: [PATCH 136/625] Add Unsupported blocker for Runtime bundle. (#2019) * Add Unsupported blocker for Runtime bundle. https://github.com/dotnet/core-setup/issues/2016 * Replaced the Pre-req url with fwlink url --- packaging/windows/sharedframework/bundle.wxs | 5 +++++ packaging/windows/sharedframework/variables.wxi | 1 + 2 files changed, 6 insertions(+) diff --git a/packaging/windows/sharedframework/bundle.wxs b/packaging/windows/sharedframework/bundle.wxs index a1a15011..03a10b86 100644 --- a/packaging/windows/sharedframework/bundle.wxs +++ b/packaging/windows/sharedframework/bundle.wxs @@ -9,6 +9,11 @@ Version="$(var.DisplayVersion)" UpgradeCode="$(var.UpgradeCode)" AboutUrl="http://dotnet.github.io/" Compressed="yes"> + + + ((VersionNT > v6.1) OR (VersionNT = v6.1 AND ServicePackLevel >= 1)) + + From fa25acec41a87ce36b3ea61273d4798eb0a2486f Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Tue, 11 Apr 2017 15:00:12 -0700 Subject: [PATCH 137/625] Updating CoreClr to preview1-25211-04 (#2035) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- .../project.json.template | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 27a99eab..1c65d40a 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25211-03"; - public static readonly string JitVersion = "2.0.0-preview1-25211-03"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25211-04"; + public static readonly string JitVersion = "2.0.0-preview1-25211-04"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 55b1c7c4..db7fa244 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25210-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25211-03", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25211-04", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", "NETStandard.Library": "2.0.0-preview1-25211-01" diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 6ea012d6..0a19db27 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -2,7 +2,7 @@ "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.0", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25210-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25211-03", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25211-04", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", "NETStandard.Library": "2.0.0-preview1-25211-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", From 6f7d69dde301ef04b7c36ceef36b2b1f52033717 Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Wed, 8 Mar 2017 23:44:02 -0800 Subject: [PATCH 138/625] Remove stub pacakge generation The stub package generation was from a previous model of the build where we needed to ensure host packages for all supported platforms existed when we restored test assets. We no longer have this dependency, we only ever consume packages from the current platform we are building, so we can remove all of this code. --- .../dotnet-host-build/CompileTargets.cs | 34 +-------- .../dotnet-host-build/StubPackageBuilder.cs | 75 ------------------- .../dotnet-host-build/TestTargets.cs | 1 - .../shared-build-targets-utils/Utils/Dirs.cs | 1 - ...nThatICareAboutDotnetTestXunitScenarios.cs | 4 +- ...GivenThatICareAboutLightupAppActivation.cs | 8 +- .../GivenThatICareAboutMultilevelSDKLookup.cs | 2 +- ...nThatICareAboutMultilevelSharedFxLookup.cs | 2 +- ...ivenThatICareAboutPortableAppActivation.cs | 4 +- ...enThatICareAboutStandaloneAppActivation.cs | 4 +- test/TestUtils/RepoDirectoriesProvider.cs | 8 +- test/TestUtils/TestProjectFixture.cs | 5 -- 12 files changed, 16 insertions(+), 132 deletions(-) delete mode 100644 build_projects/dotnet-host-build/StubPackageBuilder.cs diff --git a/build_projects/dotnet-host-build/CompileTargets.cs b/build_projects/dotnet-host-build/CompileTargets.cs index 5ea02811..7528b541 100644 --- a/build_projects/dotnet-host-build/CompileTargets.cs +++ b/build_projects/dotnet-host-build/CompileTargets.cs @@ -65,35 +65,6 @@ namespace Microsoft.DotNet.Host.Build return c.Success(); } - // We need to generate stub host packages so we can restore our standalone test assets against the metapackage - // we built earlier in the build - // https://github.com/dotnet/cli/issues/2438 - [Target] - public static BuildTargetResult GenerateStubHostPackages(BuildTargetContext c) - { - var hostVersion = c.BuildContext.Get("HostVersion"); - var currentRid = HostPackageSupportedRids[c.BuildContext.Get("TargetRID")]; - - var stubPackageBuilder = new StubPackageBuilder(DotNetCli.Stage0, Dirs.Intermediate, Dirs.CorehostDummyPackages); - - foreach (var hostPackage in hostVersion.LatestHostPackages) - { - foreach (var rid in HostPackageSupportedRids.Values.Distinct()) - { - if (!rid.Equals(currentRid)) - { - var basePackageId = hostPackage.Key; - var packageVersion = hostPackage.Value.ToString(); - - var packageId = $"runtime.{rid}.{basePackageId}"; - - stubPackageBuilder.GeneratePackage(packageId, packageVersion); - } - } - } - return c.Success(); - } - private static void GetVersionResourceForAssembly( string assemblyName, HostVersion.VerInfo hostVer, @@ -414,7 +385,7 @@ namespace Microsoft.DotNet.Host.Build return c.Success(); } - [Target(nameof(GenerateStubHostPackages), nameof(GenerateMSbuildPropsFile))] + [Target(nameof(GenerateMSbuildPropsFile))] public static BuildTargetResult PackagePkgProjects(BuildTargetContext c) { var hostVersion = c.BuildContext.Get("HostVersion"); @@ -494,8 +465,7 @@ namespace Microsoft.DotNet.Host.Build File.WriteAllText(tempPjFile, projectJson); DotNetCli.Stage0.Restore("--verbosity", "verbose", - "--fallbacksource", Dirs.CorehostLocalPackages, - "--fallbacksource", Dirs.CorehostDummyPackages) + "--fallbacksource", Dirs.CorehostLocalPackages) .WorkingDirectory(tempPjDirectory) .Execute() .EnsureSuccessful(); diff --git a/build_projects/dotnet-host-build/StubPackageBuilder.cs b/build_projects/dotnet-host-build/StubPackageBuilder.cs deleted file mode 100644 index 7ba94783..00000000 --- a/build_projects/dotnet-host-build/StubPackageBuilder.cs +++ /dev/null @@ -1,75 +0,0 @@ -using System.IO; -using System.Text; -using Microsoft.DotNet.Cli.Build; - -namespace Microsoft.DotNet.Host.Build -{ - public class StubPackageBuilder - { - private DotNetCli _dotnet; - private string _intermediateDirectory; - private string _outputDirectory; - - private bool _dummyFileCreated; - - public StubPackageBuilder(DotNetCli dotnet, string intermediateDirectory, string outputDirectory) - { - _dotnet = dotnet; - _intermediateDirectory = intermediateDirectory; - _outputDirectory = outputDirectory; - } - - public void GeneratePackage(string packageId, string version) - { - if (!_dummyFileCreated) - { - CreateDummyFile(_dotnet, _intermediateDirectory); - } - - CreateStubPackage(_dotnet, packageId, version, _intermediateDirectory, _outputDirectory); - } - - private void CreateDummyFile(DotNetCli dotnet, string intermediateDirectory) - { - var dummyTxt = "dummy text"; - - var tempPjDirectory = Path.Combine(intermediateDirectory, "dummyNuGetPackageIntermediate"); - FS.Rmdir(tempPjDirectory); - - Directory.CreateDirectory(tempPjDirectory); - - var dummyTextFile = Path.Combine(tempPjDirectory, "dummy.txt"); - - File.WriteAllText(dummyTextFile, dummyTxt); - - _dummyFileCreated = true; - } - - private static void CreateStubPackage(DotNetCli dotnet, - string packageId, - string version, - string intermediateDirectory, - string outputDirectory) - { - var projectJson = new StringBuilder(); - projectJson.Append("{"); - projectJson.Append($" \"version\": \"{version}\","); - projectJson.Append($" \"name\": \"{packageId}\","); - projectJson.Append(" \"packOptions\": { \"files\": { \"include\": \"dummy.txt\" } },"); - projectJson.Append(" \"frameworks\": { \"netcoreapp1.0\": { } },"); - projectJson.Append("}"); - - var tempPjDirectory = Path.Combine(intermediateDirectory, "dummyNuGetPackageIntermediate"); - var tempPjFile = Path.Combine(tempPjDirectory, "project.json"); - - File.WriteAllText(tempPjFile, projectJson.ToString()); - - dotnet.Pack( - tempPjFile, "--no-build", - "--output", outputDirectory) - .WorkingDirectory(tempPjDirectory) - .Execute() - .EnsureSuccessful(); - } - } -} diff --git a/build_projects/dotnet-host-build/TestTargets.cs b/build_projects/dotnet-host-build/TestTargets.cs index a7bfa4db..f0096d26 100644 --- a/build_projects/dotnet-host-build/TestTargets.cs +++ b/build_projects/dotnet-host-build/TestTargets.cs @@ -37,7 +37,6 @@ namespace Microsoft.DotNet.Host.Build dotnet.Restore( "--fallbacksource", Dirs.CorehostLocalPackages, - "--fallbacksource", Dirs.CorehostDummyPackages, "--disable-parallel") .WorkingDirectory(Path.Combine(Dirs.RepoRoot, "TestAssets")) .Execute() diff --git a/build_projects/shared-build-targets-utils/Utils/Dirs.cs b/build_projects/shared-build-targets-utils/Utils/Dirs.cs index 930d3485..f5bf8a10 100644 --- a/build_projects/shared-build-targets-utils/Utils/Dirs.cs +++ b/build_projects/shared-build-targets-utils/Utils/Dirs.cs @@ -28,7 +28,6 @@ namespace Microsoft.DotNet.Cli.Build public static readonly string CorehostLatest = Path.Combine(Output, "corehost"); // Not using Path.Combine(Output, "corehost", "latest") to keep signing working. public static readonly string CorehostLocked = Path.Combine(Output, "corehost", "locked"); public static readonly string CorehostLocalPackages = Path.Combine(Output, "corehost"); - public static readonly string CorehostDummyPackages = Path.Combine(Output, "corehostdummypackages"); public static readonly string SharedFrameworkPublish = Path.Combine(Intermediate, "sharedFrameworkPublish"); public static readonly string TestOutput = Path.Combine(Output, "tests"); public static readonly string TestArtifacts = Path.Combine(TestOutput, "artifacts"); diff --git a/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs b/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs index 9b22183e..f7405b2d 100644 --- a/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs +++ b/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs @@ -23,7 +23,7 @@ namespace Microsoft.DotNet.Tools.Publish.Tests public void Muxer_activation_of_dotnet_test_XUnit_on_Portable_Test_App_Succeeds() { var portableTestAppFixture = new TestProjectFixture("PortableTestApp", RepoDirectories) - .EnsureRestored(RepoDirectories.CorehostPackages, RepoDirectories.CorehostDummyPackages) + .EnsureRestored(RepoDirectories.CorehostPackages) .BuildProject(); ActivateDotnetTestXunitOnTestProject(RepoDirectories, portableTestAppFixture); @@ -34,7 +34,7 @@ namespace Microsoft.DotNet.Tools.Publish.Tests { var standaloneTestAppFixture = new TestProjectFixture("StandaloneTestApp", RepoDirectories); standaloneTestAppFixture - .EnsureRestoredForRid(standaloneTestAppFixture.CurrentRid, RepoDirectories.CorehostPackages, RepoDirectories.CorehostDummyPackages) + .EnsureRestoredForRid(standaloneTestAppFixture.CurrentRid, RepoDirectories.CorehostPackages) .BuildProject(runtime: standaloneTestAppFixture.CurrentRid); ActivateDotnetTestXunitOnTestProject(RepoDirectories, standaloneTestAppFixture); diff --git a/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs b/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs index bfb7e7f4..53ca9e4d 100644 --- a/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs +++ b/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs @@ -28,19 +28,19 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.LightupApp RepoDirectories = new RepoDirectoriesProvider(); PreviouslyBuiltAndRestoredLightupLibTestProjectFixture = new TestProjectFixture("LightupLib", RepoDirectories) - .EnsureRestored(RepoDirectories.CorehostPackages, RepoDirectories.CorehostDummyPackages) + .EnsureRestored(RepoDirectories.CorehostPackages) .BuildProject(); PreviouslyPublishedAndRestoredLightupLibTestProjectFixture = new TestProjectFixture("LightupLib", RepoDirectories) - .EnsureRestored(RepoDirectories.CorehostPackages, RepoDirectories.CorehostDummyPackages) + .EnsureRestored(RepoDirectories.CorehostPackages) .PublishProject(); PreviouslyBuiltAndRestoredLightupAppTestProjectFixture = new TestProjectFixture("LightupClient", RepoDirectories) - .EnsureRestored(RepoDirectories.CorehostPackages, RepoDirectories.CorehostDummyPackages) + .EnsureRestored(RepoDirectories.CorehostPackages) .BuildProject(); PreviouslyPublishedAndRestoredLightupAppTestProjectFixture = new TestProjectFixture("LightupClient", RepoDirectories) - .EnsureRestored(RepoDirectories.CorehostPackages, RepoDirectories.CorehostDummyPackages) + .EnsureRestored(RepoDirectories.CorehostPackages) .PublishProject(); } diff --git a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index 993e081f..aba92db3 100644 --- a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -65,7 +65,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // Restore and build PortableApp from exe dir RepoDirectories = new RepoDirectoriesProvider(builtDotnet: _executableDir); PreviouslyBuiltAndRestoredPortableTestProjectFixture = new TestProjectFixture("PortableApp", RepoDirectories) - .EnsureRestored(RepoDirectories.CorehostPackages, RepoDirectories.CorehostDummyPackages) + .EnsureRestored(RepoDirectories.CorehostPackages) .BuildProject(); var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture; diff --git a/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs b/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs index e2408af7..acbf105a 100644 --- a/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs +++ b/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs @@ -63,7 +63,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // Restore and build SharedFxLookupPortableApp from exe dir RepoDirectories = new RepoDirectoriesProvider(builtDotnet:_executableDir); PreviouslyBuiltAndRestoredPortableTestProjectFixture = new TestProjectFixture("SharedFxLookupPortableApp", RepoDirectories) - .EnsureRestored(RepoDirectories.CorehostPackages, RepoDirectories.CorehostDummyPackages) + .EnsureRestored(RepoDirectories.CorehostPackages) .BuildProject(); var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture; diff --git a/test/HostActivationTests/GivenThatICareAboutPortableAppActivation.cs b/test/HostActivationTests/GivenThatICareAboutPortableAppActivation.cs index 67dab5c4..879ecb9e 100644 --- a/test/HostActivationTests/GivenThatICareAboutPortableAppActivation.cs +++ b/test/HostActivationTests/GivenThatICareAboutPortableAppActivation.cs @@ -23,11 +23,11 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.PortableApp RepoDirectories = new RepoDirectoriesProvider(); PreviouslyBuiltAndRestoredPortableTestProjectFixture = new TestProjectFixture("PortableApp", RepoDirectories) - .EnsureRestored(RepoDirectories.CorehostPackages, RepoDirectories.CorehostDummyPackages) + .EnsureRestored(RepoDirectories.CorehostPackages) .BuildProject(); PreviouslyPublishedAndRestoredPortableTestProjectFixture = new TestProjectFixture("PortableApp", RepoDirectories) - .EnsureRestored(RepoDirectories.CorehostPackages, RepoDirectories.CorehostDummyPackages) + .EnsureRestored(RepoDirectories.CorehostPackages) .PublishProject(); } diff --git a/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs b/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs index 9996720c..0881afb1 100644 --- a/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs +++ b/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs @@ -27,12 +27,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.StandaloneApp var buildFixture = new TestProjectFixture("StandaloneApp", RepoDirectories); buildFixture - .EnsureRestoredForRid(buildFixture.CurrentRid, RepoDirectories.CorehostPackages, RepoDirectories.CorehostDummyPackages) + .EnsureRestoredForRid(buildFixture.CurrentRid, RepoDirectories.CorehostPackages) .BuildProject(runtime: buildFixture.CurrentRid); var publishFixture = new TestProjectFixture("StandaloneApp", RepoDirectories); publishFixture - .EnsureRestoredForRid(publishFixture.CurrentRid, RepoDirectories.CorehostPackages, RepoDirectories.CorehostDummyPackages) + .EnsureRestoredForRid(publishFixture.CurrentRid, RepoDirectories.CorehostPackages) .PublishProject(runtime: publishFixture.CurrentRid); ReplaceTestProjectOutputHostInTestProjectFixture(buildFixture); diff --git a/test/TestUtils/RepoDirectoriesProvider.cs b/test/TestUtils/RepoDirectoriesProvider.cs index 4ead8090..d8a8082c 100644 --- a/test/TestUtils/RepoDirectoriesProvider.cs +++ b/test/TestUtils/RepoDirectoriesProvider.cs @@ -16,7 +16,6 @@ namespace Microsoft.DotNet.CoreSetup.Test private string _builtDotnet; private string _nugetPackages; private string _corehostPackages; - private string _corehostDummyPackages; private string _targetRID; @@ -27,18 +26,16 @@ namespace Microsoft.DotNet.CoreSetup.Test public string BuiltDotnet => _builtDotnet; public string NugetPackages => _nugetPackages; public string CorehostPackages => _corehostPackages; - public string CorehostDummyPackages => _corehostDummyPackages; public RepoDirectoriesProvider( string repoRoot = null, string artifacts = null, string builtDotnet = null, string nugetPackages = null, - string corehostPackages = null, - string corehostDummyPackages = null) + string corehostPackages = null) { _repoRoot = repoRoot ?? Path.Combine(Directory.GetCurrentDirectory(), "..", ".."); - + string baseArtifactsFolder = artifacts ?? Path.Combine(_repoRoot, "artifacts"); _targetRID = Environment.GetEnvironmentVariable("TEST_TARGETRID"); @@ -48,7 +45,6 @@ namespace Microsoft.DotNet.CoreSetup.Test _hostArtifacts = artifacts ?? Path.Combine(_artifacts, "corehost"); _nugetPackages = nugetPackages ?? Path.Combine(_repoRoot, ".nuget", "packages"); _corehostPackages = corehostPackages ?? Path.Combine(_artifacts, "corehost"); - _corehostDummyPackages = corehostDummyPackages ?? Path.Combine(_artifacts, "corehostdummypackages"); _builtDotnet = builtDotnet ?? Path.Combine(_artifacts, "intermediate", "sharedFrameworkPublish"); } } diff --git a/test/TestUtils/TestProjectFixture.cs b/test/TestUtils/TestProjectFixture.cs index 1d6e8c88..fd2ff0f5 100644 --- a/test/TestUtils/TestProjectFixture.cs +++ b/test/TestUtils/TestProjectFixture.cs @@ -191,11 +191,6 @@ namespace Microsoft.DotNet.CoreSetup.Test { throw new Exception($"Unable to find host packages directory, please ensure the build has been run: {repoDirectoriesProvider.CorehostPackages}"); } - - if (!Directory.Exists(repoDirectoriesProvider.CorehostDummyPackages)) - { - throw new Exception($"Unable to find host dummy packages directory, please ensure the build has been run: {repoDirectoriesProvider.CorehostDummyPackages}"); - } } public TestProjectFixture BuildProject( From fdfa54cfc092dbb30fe0ba53cc11aeaa6ab916e1 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Wed, 12 Apr 2017 07:34:00 -0700 Subject: [PATCH 139/625] Updating CoreClr, Standard to preview1-25212-04, preview1-25212-01 respectively (#2042) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- .../project.json.template | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 1c65d40a..8fd8b219 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25211-04"; - public static readonly string JitVersion = "2.0.0-preview1-25211-04"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25212-04"; + public static readonly string JitVersion = "2.0.0-preview1-25212-04"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index db7fa244..112100e1 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25210-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25211-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25212-04", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", - "NETStandard.Library": "2.0.0-preview1-25211-01" + "NETStandard.Library": "2.0.0-preview1-25212-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 0a19db27..f98529bb 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -2,9 +2,9 @@ "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.0", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25210-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25211-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25212-04", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", - "NETStandard.Library": "2.0.0-preview1-25211-01", + "NETStandard.Library": "2.0.0-preview1-25212-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From d87590e297f817eb233a99d86c4bb92f9e99cde0 Mon Sep 17 00:00:00 2001 From: Daniel Roth Date: Wed, 12 Apr 2017 09:17:38 -0700 Subject: [PATCH 141/625] Use cannot instead of can not in error text --- src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs | 2 +- .../Resolution/AppBaseCompilationAssemblyResolver.cs | 2 +- .../Resolution/ReferenceAssemblyPathResolver.cs | 2 +- .../Resolution/ResolverUtils.cs | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs b/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs index 987deee7..3f7e8e3c 100644 --- a/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs +++ b/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs @@ -54,7 +54,7 @@ namespace Microsoft.Extensions.DependencyModel var assemblies = new List(); if (!DefaultResolver.TryResolveAssemblyPaths(this, assemblies)) { - throw new InvalidOperationException($"Can not find compilation library location for package '{Name}'"); + throw new InvalidOperationException($"Cannot find compilation library location for package '{Name}'"); } return assemblies; } diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs b/src/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs index 247f9ffe..244d6c2f 100644 --- a/src/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs +++ b/src/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs @@ -106,7 +106,7 @@ namespace Microsoft.Extensions.DependencyModel.Resolution if (isPublished) { throw new InvalidOperationException( - $"Can not find assembly file {assemblyFile} at '{string.Join(",", directories)}'"); + $"Cannot find assembly file {assemblyFile} at '{string.Join(",", directories)}'"); } return false; } diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/ReferenceAssemblyPathResolver.cs b/src/Microsoft.Extensions.DependencyModel/Resolution/ReferenceAssemblyPathResolver.cs index 281e7178..bcbb088a 100644 --- a/src/Microsoft.Extensions.DependencyModel/Resolution/ReferenceAssemblyPathResolver.cs +++ b/src/Microsoft.Extensions.DependencyModel/Resolution/ReferenceAssemblyPathResolver.cs @@ -49,7 +49,7 @@ namespace Microsoft.Extensions.DependencyModel.Resolution string fullName; if (!TryResolveReferenceAssembly(assembly, out fullName)) { - throw new InvalidOperationException($"Can not find reference assembly '{assembly}' file for package {library.Name}"); + throw new InvalidOperationException($"Cannot find reference assembly '{assembly}' file for package {library.Name}"); } assemblies.Add(fullName); } diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs b/src/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs index 19155a09..db4d7b19 100644 --- a/src/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs +++ b/src/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs @@ -33,7 +33,7 @@ namespace Microsoft.Extensions.DependencyModel.Resolution string fullName; if (!TryResolveAssemblyFile(fileSystem, basePath, assembly, out fullName)) { - throw new InvalidOperationException($"Can not find assembly file for package {library.Name} at '{fullName}'"); + throw new InvalidOperationException($"Cannot find assembly file for package {library.Name} at '{fullName}'"); } yield return fullName; } From 027ea9604e84c21b63494ef3a3fa12cdfb094a25 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Wed, 12 Apr 2017 11:42:42 -0500 Subject: [PATCH 142/625] Remove OpenSSL from the macOS installer This can be removed now that the runtime no longer requires OpenSSL on macOS. --- .../hostfxr/resources/cs.lproj/conclusion.html | 14 +++----------- .../hostfxr/resources/de.lproj/conclusion.html | 14 +++----------- .../hostfxr/resources/en.lproj/conclusion.html | 14 +++----------- .../hostfxr/resources/es.lproj/conclusion.html | 14 +++----------- .../hostfxr/resources/fr.lproj/conclusion.html | 14 +++----------- .../hostfxr/resources/it.lproj/conclusion.html | 14 +++----------- .../hostfxr/resources/ja.lproj/conclusion.html | 14 +++----------- .../hostfxr/resources/ko.lproj/conclusion.html | 14 +++----------- .../hostfxr/resources/pl.lproj/conclusion.html | 14 +++----------- .../resources/pt-br.lproj/conclusion.html | 14 +++----------- .../hostfxr/resources/ru.lproj/conclusion.html | 14 +++----------- .../hostfxr/resources/tr.lproj/conclusion.html | 14 +++----------- .../resources/zh-hans.lproj/conclusion.html | 14 +++----------- .../resources/zh-hant.lproj/conclusion.html | 14 +++----------- .../resources/cs.lproj/conclusion.html | 10 +--------- .../resources/de.lproj/conclusion.html | 10 +--------- .../resources/en.lproj/conclusion.html | 10 +--------- .../resources/es.lproj/conclusion.html | 10 +--------- .../resources/fr.lproj/conclusion.html | 10 +--------- .../resources/it.lproj/conclusion.html | 10 +--------- .../resources/ja.lproj/conclusion.html | 10 +--------- .../resources/ko.lproj/conclusion.html | 10 +--------- .../resources/pl.lproj/conclusion.html | 10 +--------- .../resources/pt-br.lproj/conclusion.html | 10 +--------- .../resources/ru.lproj/conclusion.html | 10 +--------- .../resources/tr.lproj/conclusion.html | 10 +--------- .../resources/zh-hans.lproj/conclusion.html | 10 +--------- .../resources/zh-hant.lproj/conclusion.html | 10 +--------- .../osx/sharedframework/scripts/postinstall | 17 ----------------- .../resources/cs.lproj/conclusion.html | 12 ++---------- .../resources/de.lproj/conclusion.html | 12 ++---------- .../resources/en.lproj/conclusion.html | 12 ++---------- .../resources/es.lproj/conclusion.html | 12 ++---------- .../resources/fr.lproj/conclusion.html | 12 ++---------- .../resources/it.lproj/conclusion.html | 12 ++---------- .../resources/ja.lproj/conclusion.html | 12 ++---------- .../resources/ko.lproj/conclusion.html | 12 ++---------- .../resources/pl.lproj/conclusion.html | 12 ++---------- .../resources/pt-br.lproj/conclusion.html | 12 ++---------- .../resources/ru.lproj/conclusion.html | 12 ++---------- .../resources/tr.lproj/conclusion.html | 12 ++---------- .../resources/zh-hans.lproj/conclusion.html | 12 ++---------- .../resources/zh-hant.lproj/conclusion.html | 12 ++---------- 43 files changed, 84 insertions(+), 437 deletions(-) diff --git a/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html b/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/de.lproj/conclusion.html b/packaging/osx/hostfxr/resources/de.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/de.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/de.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/en.lproj/conclusion.html b/packaging/osx/hostfxr/resources/en.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/en.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/en.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/es.lproj/conclusion.html b/packaging/osx/hostfxr/resources/es.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/es.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/es.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html b/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/it.lproj/conclusion.html b/packaging/osx/hostfxr/resources/it.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/it.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/it.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html b/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html b/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html b/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html b/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html b/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html b/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html b/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html b/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html index 65eb6343..54b84549 100644 --- a/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core HostFxr!

The installation was successful.

-

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

+

.NET Core Runtime was successfully installed.

diff --git a/packaging/osx/sharedframework/resources/cs.lproj/conclusion.html b/packaging/osx/sharedframework/resources/cs.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/cs.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/cs.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/resources/de.lproj/conclusion.html b/packaging/osx/sharedframework/resources/de.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/de.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/de.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/resources/en.lproj/conclusion.html b/packaging/osx/sharedframework/resources/en.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/en.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/en.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/resources/es.lproj/conclusion.html b/packaging/osx/sharedframework/resources/es.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/es.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/es.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/resources/fr.lproj/conclusion.html b/packaging/osx/sharedframework/resources/fr.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/fr.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/fr.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/resources/it.lproj/conclusion.html b/packaging/osx/sharedframework/resources/it.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/it.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/it.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/resources/ja.lproj/conclusion.html b/packaging/osx/sharedframework/resources/ja.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/ja.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/ja.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/resources/ko.lproj/conclusion.html b/packaging/osx/sharedframework/resources/ko.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/ko.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/ko.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/resources/pl.lproj/conclusion.html b/packaging/osx/sharedframework/resources/pl.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/pl.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/pl.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/resources/pt-br.lproj/conclusion.html b/packaging/osx/sharedframework/resources/pt-br.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/pt-br.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/pt-br.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/resources/ru.lproj/conclusion.html b/packaging/osx/sharedframework/resources/ru.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/ru.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/ru.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/resources/tr.lproj/conclusion.html b/packaging/osx/sharedframework/resources/tr.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/tr.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/tr.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/resources/zh-hans.lproj/conclusion.html b/packaging/osx/sharedframework/resources/zh-hans.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/zh-hans.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/zh-hans.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/resources/zh-hant.lproj/conclusion.html b/packaging/osx/sharedframework/resources/zh-hant.lproj/conclusion.html index a86661cc..d4ffdc3c 100644 --- a/packaging/osx/sharedframework/resources/zh-hant.lproj/conclusion.html +++ b/packaging/osx/sharedframework/resources/zh-hant.lproj/conclusion.html @@ -1,4 +1,4 @@ - + @@ -9,14 +9,6 @@

The installation was successful.

.NET Core was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedframework/scripts/postinstall b/packaging/osx/sharedframework/scripts/postinstall index 0f4b074d..50fd8f1b 100755 --- a/packaging/osx/sharedframework/scripts/postinstall +++ b/packaging/osx/sharedframework/scripts/postinstall @@ -6,25 +6,8 @@ PACKAGE=$1 INSTALL_DESTINATION=$2 -LIBCRYPTO_NAME=libcrypto.1.0.0.dylib -LIBSSL_NAME=libssl.1.0.0.dylib - -# Using this form to allow power users to export both of these -if [ -z $OPENSSL_PATH ]; then OPENSSL_PATH=/usr/local/opt/openssl/lib; fi -if [ -z $LINK_DEST ]; then LINK_DEST=/usr/local/lib; fi # A temporary fix for the permissions issue(s) chmod -R 755 $INSTALL_DESTINATION/shared -if [ -e "$OPENSSL_PATH/$LIBSSL_NAME" ] && [ -e "$OPENSSL_PATH/$LIBCRYPTO_NAME" ] -then - if [ ! -e "$LINK_DEST/$LIBSSL_NAME" ] && [ ! -e "$LINK_DEST/$LIBCRYPTO_NAME" ] - then - mkdir -p "$LINK_DEST" - ln -s "$OPENSSL_PATH/$LIBSSL_NAME" "$LINK_DEST" - ln -s "$OPENSSL_PATH/$LIBCRYPTO_NAME" "$LINK_DEST" - fi -fi - - exit 0 diff --git a/packaging/osx/sharedhost/resources/cs.lproj/conclusion.html b/packaging/osx/sharedhost/resources/cs.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/cs.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/cs.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedhost/resources/de.lproj/conclusion.html b/packaging/osx/sharedhost/resources/de.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/de.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/de.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedhost/resources/en.lproj/conclusion.html b/packaging/osx/sharedhost/resources/en.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/en.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/en.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedhost/resources/es.lproj/conclusion.html b/packaging/osx/sharedhost/resources/es.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/es.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/es.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedhost/resources/fr.lproj/conclusion.html b/packaging/osx/sharedhost/resources/fr.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/fr.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/fr.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedhost/resources/it.lproj/conclusion.html b/packaging/osx/sharedhost/resources/it.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/it.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/it.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedhost/resources/ja.lproj/conclusion.html b/packaging/osx/sharedhost/resources/ja.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/ja.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/ja.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedhost/resources/ko.lproj/conclusion.html b/packaging/osx/sharedhost/resources/ko.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/ko.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/ko.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedhost/resources/pl.lproj/conclusion.html b/packaging/osx/sharedhost/resources/pl.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/pl.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/pl.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedhost/resources/pt-br.lproj/conclusion.html b/packaging/osx/sharedhost/resources/pt-br.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/pt-br.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/pt-br.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedhost/resources/ru.lproj/conclusion.html b/packaging/osx/sharedhost/resources/ru.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/ru.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/ru.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedhost/resources/tr.lproj/conclusion.html b/packaging/osx/sharedhost/resources/tr.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/tr.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/tr.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedhost/resources/zh-hans.lproj/conclusion.html b/packaging/osx/sharedhost/resources/zh-hans.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/zh-hans.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/zh-hans.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

diff --git a/packaging/osx/sharedhost/resources/zh-hant.lproj/conclusion.html b/packaging/osx/sharedhost/resources/zh-hant.lproj/conclusion.html index 65eb6343..84172503 100644 --- a/packaging/osx/sharedhost/resources/zh-hant.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/zh-hant.lproj/conclusion.html @@ -1,22 +1,14 @@ - + - Congratulations! You've successfully installed .NET Core CLI! + Congratulations! You've successfully installed .NET Core Shared Host!

The installation was successful.

.NET Core CLI was successfully installed.

-

- Install dependencies -

-

- In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. -

From faa26f8fe1bdc7f0cf5356bca7b5faf21a7ae8f0 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Wed, 12 Apr 2017 13:42:28 -0500 Subject: [PATCH 143/625] Fix the installer message to use the correct product name. --- packaging/osx/hostfxr/resources/cs.lproj/conclusion.html | 2 +- packaging/osx/hostfxr/resources/de.lproj/conclusion.html | 2 +- packaging/osx/hostfxr/resources/en.lproj/conclusion.html | 2 +- packaging/osx/hostfxr/resources/es.lproj/conclusion.html | 2 +- packaging/osx/hostfxr/resources/fr.lproj/conclusion.html | 2 +- packaging/osx/hostfxr/resources/it.lproj/conclusion.html | 2 +- packaging/osx/hostfxr/resources/ja.lproj/conclusion.html | 2 +- packaging/osx/hostfxr/resources/ko.lproj/conclusion.html | 2 +- packaging/osx/hostfxr/resources/pl.lproj/conclusion.html | 2 +- packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html | 2 +- packaging/osx/hostfxr/resources/ru.lproj/conclusion.html | 2 +- packaging/osx/hostfxr/resources/tr.lproj/conclusion.html | 2 +- packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html | 2 +- packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html | 2 +- packaging/osx/sharedhost/resources/cs.lproj/conclusion.html | 2 +- packaging/osx/sharedhost/resources/de.lproj/conclusion.html | 2 +- packaging/osx/sharedhost/resources/en.lproj/conclusion.html | 2 +- packaging/osx/sharedhost/resources/es.lproj/conclusion.html | 2 +- packaging/osx/sharedhost/resources/fr.lproj/conclusion.html | 2 +- packaging/osx/sharedhost/resources/it.lproj/conclusion.html | 2 +- packaging/osx/sharedhost/resources/ja.lproj/conclusion.html | 2 +- packaging/osx/sharedhost/resources/ko.lproj/conclusion.html | 2 +- packaging/osx/sharedhost/resources/pl.lproj/conclusion.html | 2 +- packaging/osx/sharedhost/resources/pt-br.lproj/conclusion.html | 2 +- packaging/osx/sharedhost/resources/ru.lproj/conclusion.html | 2 +- packaging/osx/sharedhost/resources/tr.lproj/conclusion.html | 2 +- .../osx/sharedhost/resources/zh-hans.lproj/conclusion.html | 2 +- .../osx/sharedhost/resources/zh-hant.lproj/conclusion.html | 2 +- 28 files changed, 28 insertions(+), 28 deletions(-) diff --git a/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html b/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/de.lproj/conclusion.html b/packaging/osx/hostfxr/resources/de.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/de.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/de.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/en.lproj/conclusion.html b/packaging/osx/hostfxr/resources/en.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/en.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/en.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/es.lproj/conclusion.html b/packaging/osx/hostfxr/resources/es.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/es.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/es.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html b/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/it.lproj/conclusion.html b/packaging/osx/hostfxr/resources/it.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/it.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/it.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html b/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html b/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html b/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html b/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html b/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html b/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html b/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html b/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html index 54b84549..4fcacec4 100644 --- a/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html +++ b/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core Runtime was successfully installed.

+

.NET Core HostFxr was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/cs.lproj/conclusion.html b/packaging/osx/sharedhost/resources/cs.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/cs.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/cs.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/de.lproj/conclusion.html b/packaging/osx/sharedhost/resources/de.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/de.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/de.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/en.lproj/conclusion.html b/packaging/osx/sharedhost/resources/en.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/en.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/en.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/es.lproj/conclusion.html b/packaging/osx/sharedhost/resources/es.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/es.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/es.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/fr.lproj/conclusion.html b/packaging/osx/sharedhost/resources/fr.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/fr.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/fr.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/it.lproj/conclusion.html b/packaging/osx/sharedhost/resources/it.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/it.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/it.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/ja.lproj/conclusion.html b/packaging/osx/sharedhost/resources/ja.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/ja.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/ja.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/ko.lproj/conclusion.html b/packaging/osx/sharedhost/resources/ko.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/ko.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/ko.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/pl.lproj/conclusion.html b/packaging/osx/sharedhost/resources/pl.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/pl.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/pl.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/pt-br.lproj/conclusion.html b/packaging/osx/sharedhost/resources/pt-br.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/pt-br.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/pt-br.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/ru.lproj/conclusion.html b/packaging/osx/sharedhost/resources/ru.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/ru.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/ru.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/tr.lproj/conclusion.html b/packaging/osx/sharedhost/resources/tr.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/tr.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/tr.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/zh-hans.lproj/conclusion.html b/packaging/osx/sharedhost/resources/zh-hans.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/zh-hans.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/zh-hans.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

diff --git a/packaging/osx/sharedhost/resources/zh-hant.lproj/conclusion.html b/packaging/osx/sharedhost/resources/zh-hant.lproj/conclusion.html index 84172503..0902b122 100644 --- a/packaging/osx/sharedhost/resources/zh-hant.lproj/conclusion.html +++ b/packaging/osx/sharedhost/resources/zh-hant.lproj/conclusion.html @@ -8,7 +8,7 @@

The installation was successful.

-

.NET Core CLI was successfully installed.

+

.NET Core Shared Host was successfully installed.

From 6194e434482738195dd052551cc5a22f580c9505 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Wed, 12 Apr 2017 11:49:42 -0700 Subject: [PATCH 144/625] Updating Standard to preview1-25212-02 --- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- .../project.json.template | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 112100e1..8c5a3dd2 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -4,7 +4,7 @@ "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25212-04", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", - "NETStandard.Library": "2.0.0-preview1-25212-01" + "NETStandard.Library": "2.0.0-preview1-25212-02" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index f98529bb..70580f5a 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -4,7 +4,7 @@ "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25210-01", "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25212-04", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", - "NETStandard.Library": "2.0.0-preview1-25212-01", + "NETStandard.Library": "2.0.0-preview1-25212-02", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From ee1d44b9edccf5f472ce2407b9cde7b8b5715bb0 Mon Sep 17 00:00:00 2001 From: Jan Vorlicek Date: Tue, 11 Apr 2017 15:06:22 -0700 Subject: [PATCH 145/625] Add support for local copies of native dependencies on Linux This change adds support for local copies of native dependencies for standalone apps on Linux. If there is a folder called netcoredeps next to the main app executable, the system dynamic loader looks into that folder first when resolving shared library dependencies of the main app and all of the shared libraries it transitively loads. --- src/corehost/cli/exe/apphost/CMakeLists.txt | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/corehost/cli/exe/apphost/CMakeLists.txt b/src/corehost/cli/exe/apphost/CMakeLists.txt index 8a4fa7ac..76448440 100644 --- a/src/corehost/cli/exe/apphost/CMakeLists.txt +++ b/src/corehost/cli/exe/apphost/CMakeLists.txt @@ -3,6 +3,17 @@ cmake_minimum_required (VERSION 2.6) set(DOTNET_HOST_EXE_NAME "apphost") + +# Add RPATH to the apphost binary that allows using local copies of shared libraries +# dotnet core depends on for special scenarios when system wide installation of such +# dependencies is not possible for some reason. +# This cannot be enabled for MacOS (Darwin) since its RPATH works in a different way, +# doesn't apply to libraries loaded via dlopen and most importantly, it is not transitive. +if (NOT CMAKE_SYSTEM_NAME STREQUAL Darwin) + set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) + set(CMAKE_INSTALL_RPATH "\$ORIGIN/netcoredeps") +endif() + include(../exe.cmake) set(SOURCES) add_definitions(-DFEATURE_APPHOST=1) From 4163dd0d7d9ca68edc26cd7c89d3e0d68f573565 Mon Sep 17 00:00:00 2001 From: wtgodbe Date: Wed, 12 Apr 2017 16:00:11 -0700 Subject: [PATCH 146/625] Publish build logs in all pipeline jobs --- buildpipeline/Core-Setup-CrossBuild.json | 19 +++++++++++++++++++ buildpipeline/Core-Setup-OSX-x64.json | 19 +++++++++++++++++++ .../Core-Setup-PortableLinux-x64.json | 19 +++++++++++++++++++ buildpipeline/Core-Setup-RHEL7-x64.json | 19 +++++++++++++++++++ .../Core-Setup-Signing-Windows-x64.json | 19 +++++++++++++++++++ .../Core-Setup-Signing-Windows-x86.json | 19 +++++++++++++++++++ buildpipeline/Core-Setup-Windows-arm32.json | 19 +++++++++++++++++++ buildpipeline/Core-Setup-Windows-arm64.json | 19 +++++++++++++++++++ 8 files changed, 152 insertions(+) diff --git a/buildpipeline/Core-Setup-CrossBuild.json b/buildpipeline/Core-Setup-CrossBuild.json index 628847ef..84c624c7 100644 --- a/buildpipeline/Core-Setup-CrossBuild.json +++ b/buildpipeline/Core-Setup-CrossBuild.json @@ -149,6 +149,25 @@ "failOnStandardError": "false" } }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Copy Publish Artifact: Build Logs", + "timeoutInMinutes": 0, + "task": { + "id": "1d341bb0-2106-458c-8422-d00bcea6512a", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "CopyRoot": "", + "Contents": "**/*.log", + "ArtifactName": "Build Logs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" + } + }, { "enabled": true, "continueOnError": true, diff --git a/buildpipeline/Core-Setup-OSX-x64.json b/buildpipeline/Core-Setup-OSX-x64.json index 5d1fea66..1cd99bc4 100644 --- a/buildpipeline/Core-Setup-OSX-x64.json +++ b/buildpipeline/Core-Setup-OSX-x64.json @@ -73,6 +73,25 @@ "workingFolder": "", "failOnStandardError": "false" } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Copy Publish Artifact: Build Logs", + "timeoutInMinutes": 0, + "task": { + "id": "1d341bb0-2106-458c-8422-d00bcea6512a", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "CopyRoot": "", + "Contents": "**/*.log", + "ArtifactName": "Build Logs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" + } } ], "options": [ diff --git a/buildpipeline/Core-Setup-PortableLinux-x64.json b/buildpipeline/Core-Setup-PortableLinux-x64.json index 126a904b..5626f166 100644 --- a/buildpipeline/Core-Setup-PortableLinux-x64.json +++ b/buildpipeline/Core-Setup-PortableLinux-x64.json @@ -113,6 +113,25 @@ "failOnStandardError": "false" } }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Copy Publish Artifact: Build Logs", + "timeoutInMinutes": 0, + "task": { + "id": "1d341bb0-2106-458c-8422-d00bcea6512a", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "CopyRoot": "", + "Contents": "**/*.log", + "ArtifactName": "Build Logs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" + } + }, { "enabled": true, "continueOnError": true, diff --git a/buildpipeline/Core-Setup-RHEL7-x64.json b/buildpipeline/Core-Setup-RHEL7-x64.json index abbfbb77..4fc44bae 100644 --- a/buildpipeline/Core-Setup-RHEL7-x64.json +++ b/buildpipeline/Core-Setup-RHEL7-x64.json @@ -113,6 +113,25 @@ "failOnStandardError": "false" } }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Copy Publish Artifact: Build Logs", + "timeoutInMinutes": 0, + "task": { + "id": "1d341bb0-2106-458c-8422-d00bcea6512a", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "CopyRoot": "", + "Contents": "**/*.log", + "ArtifactName": "Build Logs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" + } + }, { "enabled": true, "continueOnError": true, diff --git a/buildpipeline/Core-Setup-Signing-Windows-x64.json b/buildpipeline/Core-Setup-Signing-Windows-x64.json index acbe26f2..5e2c2a12 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x64.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x64.json @@ -383,6 +383,25 @@ "workingFolder": "", "failOnStandardError": "false" } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Copy Publish Artifact: Build Logs", + "timeoutInMinutes": 0, + "task": { + "id": "1d341bb0-2106-458c-8422-d00bcea6512a", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "CopyRoot": "", + "Contents": "**\\*.log", + "ArtifactName": "Build Logs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" + } } ], "options": [ diff --git a/buildpipeline/Core-Setup-Signing-Windows-x86.json b/buildpipeline/Core-Setup-Signing-Windows-x86.json index 78968c6c..1cd85709 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x86.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x86.json @@ -356,6 +356,25 @@ "workingFolder": "", "failOnStandardError": "false" } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Copy Publish Artifact: Build Logs", + "timeoutInMinutes": 0, + "task": { + "id": "1d341bb0-2106-458c-8422-d00bcea6512a", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "CopyRoot": "", + "Contents": "**\\*.log", + "ArtifactName": "Build Logs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" + } } ], "options": [ diff --git a/buildpipeline/Core-Setup-Windows-arm32.json b/buildpipeline/Core-Setup-Windows-arm32.json index d5988533..d09b53d0 100644 --- a/buildpipeline/Core-Setup-Windows-arm32.json +++ b/buildpipeline/Core-Setup-Windows-arm32.json @@ -36,6 +36,25 @@ "workingFolder": "", "failOnStandardError": "false" } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Copy Publish Artifact: Build Logs", + "timeoutInMinutes": 0, + "task": { + "id": "1d341bb0-2106-458c-8422-d00bcea6512a", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "CopyRoot": "", + "Contents": "**\\*.log", + "ArtifactName": "Build Logs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" + } } ], "options": [ diff --git a/buildpipeline/Core-Setup-Windows-arm64.json b/buildpipeline/Core-Setup-Windows-arm64.json index f3ff0b2d..7dbb7510 100644 --- a/buildpipeline/Core-Setup-Windows-arm64.json +++ b/buildpipeline/Core-Setup-Windows-arm64.json @@ -36,6 +36,25 @@ "workingFolder": "", "failOnStandardError": "false" } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Copy Publish Artifact: Build Logs", + "timeoutInMinutes": 0, + "task": { + "id": "1d341bb0-2106-458c-8422-d00bcea6512a", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "CopyRoot": "", + "Contents": "**\\*.log", + "ArtifactName": "Build Logs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" + } } ], "options": [ From b732d41b55d68a49e1acca9b39c4c99d7fdc3260 Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Wed, 12 Apr 2017 15:15:57 -0700 Subject: [PATCH 147/625] Remove the use of --infer-runtimes during restore --infer-runtimes has been deprecated for a long time, but we continued to use it because there was no pressing reason to move away from it. I've been trying to build core-setup on newer versions of RHEL, where the RID has changed from rhel.7.2-x64 to rhel.7.3-x64. Since our long term plan (which will happen for 2.0) is to unify all RHEL 7 rids to rhel.7-, I had hoped I could use DOTNET_RUNTIME_ID to specifcy a RID of rhel.7-x64 and have everything work. However, the use of infer-runtimes is not playing nicely with that, so now is the time to stop using this feature. We only have a handful of projects now where we care about restoring for a specific rid (the build system, the update scripts and a tool run during build time to generate some deps files for the shared framework) so it was easy enough to get everyone on a project.json.template plan. Long term, the build project and update-dependencies scripts will be removed as we move over to MSBuild + BuildTools. I expect that we'll also just use a custom MSBuild task in the future to replace the DepsProcessor tool and then we can delete all of this stuff. --- .gitignore | 5 +++++ build_projects/dotnet-host-build/PrepareTargets.cs | 11 ++++++++++- build_projects/dotnet-host-build/build.ps1 | 9 ++++++++- build_projects/dotnet-host-build/build.sh | 8 +++++++- .../{project.json => project.json.template} | 3 +++ .../Utils/SharedFrameworkPublisher.cs | 1 - .../{project.json => project.json.template} | 3 +++ .../update-dependencies/update-dependencies.ps1 | 9 ++++++++- .../update-dependencies/update-dependencies.sh | 8 +++++++- .../{project.json => project.json.template} | 3 +++ 10 files changed, 54 insertions(+), 6 deletions(-) rename build_projects/dotnet-host-build/{project.json => project.json.template} (95%) rename build_projects/update-dependencies/{project.json => project.json.template} (95%) rename setuptools/independent/DepsProcessor/{project.json => project.json.template} (94%) diff --git a/.gitignore b/.gitignore index 8f912130..bce98b0e 100644 --- a/.gitignore +++ b/.gitignore @@ -297,3 +297,8 @@ test/PackagedCommands/Consumers/*/project.json # VS generated files launchSettings.json + +# Generated project.json files (the project.json.template file is the authoritative copy) +setuptools/independent/DepsProcessor/project.json +build_projects/dotnet-host-build/project.json +build_projects/update-dependencies/project.json diff --git a/build_projects/dotnet-host-build/PrepareTargets.cs b/build_projects/dotnet-host-build/PrepareTargets.cs index 341dde7d..344fce5b 100644 --- a/build_projects/dotnet-host-build/PrepareTargets.cs +++ b/build_projects/dotnet-host-build/PrepareTargets.cs @@ -385,7 +385,16 @@ namespace Microsoft.DotNet.Host.Build .WorkingDirectory(Path.Combine(c.BuildContext.BuildDirectory, "setuptools", "dotnet-deb-tool")) .Execute() .EnsureSuccessful(); - dotnet.Restore("--verbosity", "verbose", "--disable-parallel", "--infer-runtimes") + + var independentToolsRoot = Path.Combine(c.BuildContext.BuildDirectory, "setuptools", "independent"); + + foreach (string templateFile in Directory.GetFiles(independentToolsRoot, "project.json.template", SearchOption.AllDirectories)) + { + string projectJsonFile = Path.Combine(Path.GetDirectoryName(templateFile), "project.json"); + File.WriteAllText(projectJsonFile, File.ReadAllText(templateFile).Replace("{RID}", RuntimeEnvironment.GetRuntimeIdentifier())); + } + + dotnet.Restore("--verbosity", "verbose", "--disable-parallel") .WorkingDirectory(Path.Combine(c.BuildContext.BuildDirectory, "setuptools", "independent")) .Execute() .EnsureSuccessful(); diff --git a/build_projects/dotnet-host-build/build.ps1 b/build_projects/dotnet-host-build/build.ps1 index 99bced79..585c5312 100644 --- a/build_projects/dotnet-host-build/build.ps1 +++ b/build_projects/dotnet-host-build/build.ps1 @@ -125,10 +125,17 @@ $env:PATH = "$env:DOTNET_INSTALL_DIR;$env:PATH" # Disable first run since we want to control all package sources $env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 +# Figure out the RID of the current platform, based on what stage 0 thinks. +$HOST_RID=(dotnet --info | Select-String -Pattern "\s*RID:\s*(?.*)").Matches[0].Groups['rid'].Value + # Restore the build scripts Write-Host "Restoring Build Script projects..." pushd "$PSScriptRoot\.." -dotnet restore --infer-runtimes + +(Get-Content "dotnet-host-build\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "dotnet-host-build\project.json" +(Get-Content "update-dependencies\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "update-dependencies\project.json" + +dotnet restore if($LASTEXITCODE -ne 0) { throw "Failed to restore" } popd diff --git a/build_projects/dotnet-host-build/build.sh b/build_projects/dotnet-host-build/build.sh index d454d717..23435aa5 100755 --- a/build_projects/dotnet-host-build/build.sh +++ b/build_projects/dotnet-host-build/build.sh @@ -142,6 +142,9 @@ curl -sSL "$DOTNET_INSTALL_SCRIPT_URL" | bash /dev/stdin --version 1.0.0-preview # Put stage 0 on the PATH (for this shell only) PATH="$DOTNET_INSTALL_DIR:$PATH" +# Figure out the RID of the current platform, based on what stage 0 thinks. +RID=$(dotnet --info | grep 'RID:' | sed -e 's/[[:space:]]*RID:[[:space:]]*\(.*\)/\1/g') + # Increases the file descriptors limit for this bash. It prevents an issue we were hitting during restore FILE_DESCRIPTOR_LIMIT=$( ulimit -n ) if [ $FILE_DESCRIPTOR_LIMIT -lt 1024 ] @@ -157,7 +160,10 @@ export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 echo "Restoring Build Script projects..." ( cd "$DIR/.." - dotnet restore --infer-runtimes --disable-parallel + sed -e "s/{RID}/$RID/g" "dotnet-host-build/project.json.template" > "dotnet-host-build/project.json" + sed -e "s/{RID}/$RID/g" "update-dependencies/project.json.template" > "update-dependencies/project.json" + + dotnet restore --disable-parallel ) # Build the builder diff --git a/build_projects/dotnet-host-build/project.json b/build_projects/dotnet-host-build/project.json.template similarity index 95% rename from build_projects/dotnet-host-build/project.json rename to build_projects/dotnet-host-build/project.json.template index 832ed0b5..978a38a1 100644 --- a/build_projects/dotnet-host-build/project.json +++ b/build_projects/dotnet-host-build/project.json.template @@ -29,5 +29,8 @@ "portable-net45+win8" ] } + }, + "runtimes": { + "{RID}": {} } } diff --git a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs b/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs index 39da8ccc..cc8f91ab 100644 --- a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs +++ b/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs @@ -116,7 +116,6 @@ namespace Microsoft.DotNet.Cli.Build dotnetCli.Restore( "--verbosity", "verbose", "--disable-parallel", - "--infer-runtimes", "--fallbacksource", _corehostPackageSource) .WorkingDirectory(_sharedFrameworkSourceRoot) .Execute() diff --git a/build_projects/update-dependencies/project.json b/build_projects/update-dependencies/project.json.template similarity index 95% rename from build_projects/update-dependencies/project.json rename to build_projects/update-dependencies/project.json.template index 160ada3a..4a34368f 100644 --- a/build_projects/update-dependencies/project.json +++ b/build_projects/update-dependencies/project.json.template @@ -27,5 +27,8 @@ "portable-net45+win" ] } + }, + "runtimes": { + "{RID}": {} } } diff --git a/build_projects/update-dependencies/update-dependencies.ps1 b/build_projects/update-dependencies/update-dependencies.ps1 index d1120e9a..416db8df 100644 --- a/build_projects/update-dependencies/update-dependencies.ps1 +++ b/build_projects/update-dependencies/update-dependencies.ps1 @@ -50,10 +50,17 @@ $env:PATH = "$env:DOTNET_INSTALL_DIR;$env:PATH" $appPath = "$PSScriptRoot" +# Figure out the RID of the current platform, based on what stage 0 thinks. +$HOST_RID=(dotnet --info | Select-String -Pattern "\s*RID:\s*(?.*)").Matches[0].Groups['rid'].Value + # Restore the build scripts Write-Host "Restoring Build Script projects..." pushd "$PSScriptRoot\.." -dotnet restore --infer-runtimes + +(Get-Content "dotnet-host-build\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "dotnet-host-build\project.json" +(Get-Content "update-dependencies\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "update-dependencies\project.json" + +dotnet restore if($LASTEXITCODE -ne 0) { throw "Failed to restore" } popd diff --git a/build_projects/update-dependencies/update-dependencies.sh b/build_projects/update-dependencies/update-dependencies.sh index 9d42a02a..0ee743b6 100755 --- a/build_projects/update-dependencies/update-dependencies.sh +++ b/build_projects/update-dependencies/update-dependencies.sh @@ -59,6 +59,9 @@ curl -sSL "$DOTNET_INSTALL_SCRIPT_URL" | bash /dev/stdin --version 1.0.0-preview # Put stage 0 on the PATH (for this shell only) PATH="$DOTNET_INSTALL_DIR:$PATH" +# Figure out the RID of the current platform, based on what stage 0 thinks. +RID=$(dotnet --info | grep 'RID:' | sed -e 's/[[:space:]]*RID:[[:space:]]*\(.*\)/\1/g') + # Increases the file descriptors limit for this bash. It prevents an issue we were hitting during restore FILE_DESCRIPTOR_LIMIT=$( ulimit -n ) if [ $FILE_DESCRIPTOR_LIMIT -lt 1024 ] @@ -74,7 +77,10 @@ export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 echo "Restoring Build Script projects..." ( pushd "$DIR/.." - dotnet restore --infer-runtimes --disable-parallel + sed -e "s/{RID}/$RID/g" "dotnet-host-build/project.json.template" > "dotnet-host-build/project.json" + sed -e "s/{RID}/$RID/g" "update-dependencies/project.json.template" > "update-dependencies/project.json" + + dotnet restore --disable-parallel popd ) diff --git a/setuptools/independent/DepsProcessor/project.json b/setuptools/independent/DepsProcessor/project.json.template similarity index 94% rename from setuptools/independent/DepsProcessor/project.json rename to setuptools/independent/DepsProcessor/project.json.template index 2f6e7b8d..422a7605 100644 --- a/setuptools/independent/DepsProcessor/project.json +++ b/setuptools/independent/DepsProcessor/project.json.template @@ -21,5 +21,8 @@ "portable-net45+wp80+win8+wpa81+dnxcore50" ] } + }, + "runtimes": { + "{RID}" : {} } } From 19128f30de42db2beb8c402cbf43dac4d45b951f Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Thu, 13 Apr 2017 07:01:31 -0700 Subject: [PATCH 148/625] Updating CoreClr, Standard to preview1-25213-02, preview1-25213-01 respectively (#2051) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- .../project.json.template | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 8fd8b219..daf7c4d1 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25212-04"; - public static readonly string JitVersion = "2.0.0-preview1-25212-04"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25213-02"; + public static readonly string JitVersion = "2.0.0-preview1-25213-02"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 8c5a3dd2..ec307a40 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25210-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25212-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25213-02", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", - "NETStandard.Library": "2.0.0-preview1-25212-02" + "NETStandard.Library": "2.0.0-preview1-25213-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 70580f5a..2a14bc99 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -2,9 +2,9 @@ "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.0", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25210-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25212-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25213-02", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", - "NETStandard.Library": "2.0.0-preview1-25212-02", + "NETStandard.Library": "2.0.0-preview1-25213-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From f52fcd468fceff32887b7940600324ee8b78b76e Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Thu, 13 Apr 2017 11:17:15 -0700 Subject: [PATCH 150/625] Add new dependency package to the UWP metapackage to control the delivery of CoreCLR for UWP --- pkg/dir.props | 1 + ...re.UniversalWindowsPlatform.CoreCLR.builds | 10 ++++++++++ ...e.UniversalWindowsPlatform.CoreCLR.pkgproj | 19 +++++++++++++++++++ .../dir.props | 11 +++++++++++ ...ore.UniversalWindowsPlatform.CoreCLR.props | 5 +++++ ...e.UniversalWindowsPlatform.CoreCLR.targets | 14 ++++++++++++++ ...t.NETCore.UniversalWindowsPlatform.pkgproj | 5 +++++ pkg/projects/descriptions.json | 5 +++++ 8 files changed, 70 insertions(+) create mode 100644 pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.builds create mode 100644 pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.pkgproj create mode 100644 pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/dir.props create mode 100644 pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.props create mode 100644 pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.targets diff --git a/pkg/dir.props b/pkg/dir.props index 5b5c4393..e912879f 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -79,6 +79,7 @@ $(HostResolverVersion)$(PreReleaseSuffix) $(AppHostVersion)$(PreReleaseSuffix) $(HostVersion)$(PreReleaseSuffix) + $(UWPCoreCLRVersion)$(PreReleaseSuffix)
diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.builds b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.builds new file mode 100644 index 00000000..5bc696ff --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.builds @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.pkgproj b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.pkgproj new file mode 100644 index 00000000..4c171b47 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.pkgproj @@ -0,0 +1,19 @@ + + + + + + 2.0.0 + + + + + build + + + build + + + + + diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/dir.props b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/dir.props new file mode 100644 index 00000000..4fb21706 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/dir.props @@ -0,0 +1,11 @@ + + + + false + + + + false + false + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.props b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.props new file mode 100644 index 00000000..9f72ff24 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.props @@ -0,0 +1,5 @@ + + + true + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.targets b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.targets new file mode 100644 index 00000000..cba346f2 --- /dev/null +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.targets @@ -0,0 +1,14 @@ + + + + CheckCoreRuntimeCompatibility; + $(BuildDependsOn); + + + + + + + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj index de4f9bf8..c2c985c3 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj @@ -30,6 +30,11 @@ .NETCore50
+ + uap10.1 + $(UWPCoreCLRFullVersion) + + diff --git a/pkg/projects/descriptions.json b/pkg/projects/descriptions.json index 4dee725e..d6f591d3 100644 --- a/pkg/projects/descriptions.json +++ b/pkg/projects/descriptions.json @@ -44,4 +44,9 @@ "Description": "Provides a set of packages that can be used when building Universal Windows applications on .NETCore.", "CommonTypes": [ ] }, + { + "Name": "Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR", + "Description": "Provides a set of tools to run Universal Windows application on CoreCLR.", + "CommonTypes": [ ] + }, ] From 6534b50c95b4679c6b2e256026cf303f59d321be Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Thu, 13 Apr 2017 11:18:18 -0700 Subject: [PATCH 151/625] Update version of Microsoft.NETCore.UniversalWindowsPlatform to 5.4.0 and update the dependency on Microsoft.Net.Native.Compiler to 1.6.1 --- .../Microsoft.NETCore.UniversalWindowsPlatform.pkgproj | 2 +- .../project.json.template | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj index c2c985c3..7f0b522b 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj @@ -3,7 +3,7 @@ - 5.3.0 + 5.4.0 true true false diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index f98529bb..18196bf2 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.Net.Native.Compiler": "1.6.0", + "Microsoft.Net.Native.Compiler": "1.6.1", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25210-01", "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25212-04", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", From 7fd7520bc28499cea53381d03eb58708587111a2 Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Thu, 13 Apr 2017 11:25:54 -0700 Subject: [PATCH 152/625] Make sure we flow MS.NETCore.Targets dependency --- .../Microsoft.NETCore.App/Microsoft.NETCore.App.depproj | 4 +++- .../Microsoft.NETCore.UniversalWindowsPlatform.depproj | 5 ++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj index 7d83d4a4..01722305 100644 --- a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj +++ b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj @@ -15,9 +15,11 @@ - + + diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj index e342a09a..381789aa 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj @@ -15,9 +15,12 @@ - + + From 8666cc642baaa96c3088b61265480b3d08c00e60 Mon Sep 17 00:00:00 2001 From: John Beisner Date: Thu, 13 Apr 2017 13:38:32 -0700 Subject: [PATCH 153/625] Updating the SDK 'lookup' policy. Note - no change to the FX 'look-up' policy. --- .../design-docs/multilevel-sharedfx-lookup.md | 4 ++-- src/corehost/cli/fxr/fx_muxer.cpp | 14 +------------- .../GivenThatICareAboutMultilevelSDKLookup.cs | 4 ++-- 3 files changed, 5 insertions(+), 17 deletions(-) diff --git a/Documentation/design-docs/multilevel-sharedfx-lookup.md b/Documentation/design-docs/multilevel-sharedfx-lookup.md index e8857eb2..296f1a06 100644 --- a/Documentation/design-docs/multilevel-sharedfx-lookup.md +++ b/Documentation/design-docs/multilevel-sharedfx-lookup.md @@ -1,4 +1,4 @@ -# Multi-level SharedFX Lookup +# Multi-level SharedFX Lookup ## Introduction @@ -41,7 +41,7 @@ There are two possibilities for a muxer: it can be a portable app or a .NET Core In the first case the app file path should have been specified as an argument to the dotnet.exe. -In the second case the dotnet.dll from SDK must be invoked as a portable app. At first the running program searches for the global.json file which may have specified a CLI version. It starts from the current working directory and looks for it inside all parent folder hierarchy. After that, it searches for the dotnet.dll file inside the sdk\CLI_version subfolder in the executable directory. If the version defined in the global.json file or the specified version folder cannot be found, then it must choose the most appropriate one. The most appropriate version is defined as the latest production version according to the Semantic Versioning system. If no production version is available, then the latest pre-release must be chosen. +In the second case the dotnet.dll from SDK must be invoked as a portable app. At first the running program searches for the global.json file which may have specified a CLI version. It starts from the current working directory and looks for it inside all parent folder hierarchy. After that, it searches for the dotnet.dll file inside the sdk\CLI_version subfolder in the executable directory. If the version defined in the global.json file or the specified version folder cannot be found, then it must choose the most appropriate one. The most appropriate version is defined as the latest version according to the Semantic Versioning system. ### Framework search and rolling forward diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index 0aec4417..0cb7be91 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -572,27 +572,15 @@ pal::string_t resolve_sdk_version(pal::string_t sdk_path) pal::readdir(sdk_path, &versions); fx_ver_t max_ver(-1, -1, -1); - fx_ver_t max_pre(-1, -1, -1); for (const auto& version : versions) { trace::verbose(_X("Considering version... [%s]"), version.c_str()); fx_ver_t ver(-1, -1, -1); - if (fx_ver_t::parse(version, &ver, true)) + if (fx_ver_t::parse(version, &ver, false)) // false -- implies both production and prerelease. { max_ver = std::max(ver, max_ver); } - if (fx_ver_t::parse(version, &ver, false)) - { - max_pre = std::max(ver, max_pre); - } - } - - // No production, use the max pre-release. - if (max_ver == fx_ver_t(-1, -1, -1)) - { - trace::verbose(_X("No production version found, so using latest prerelease")); - max_ver = max_pre; } pal::string_t max_ver_str = max_ver.as_str(); diff --git a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index aba92db3..6ddebe92 100644 --- a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -220,7 +220,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // CWD: 9999.0.0, 9999.0.0-global-dummy // User: 9999.0.0, 9999.0.0-dummy // Exe: 9999.0.0-dummy, 9999.0.0-global-dummy - // Expected: 9999.0.0-global-dummy from cwd + // Expected: 9999.0.0 from cwd dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") @@ -230,7 +230,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.0-global-dummy")); + .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.0")); // Remove dummy folders from user dir DeleteAvailableSdkVersions(_userSdkBaseDir, "9999.0.0", "9999.0.0-dummy"); From 3d3f3585292cbb31775d042dab7a26dcfd662ddb Mon Sep 17 00:00:00 2001 From: William Godbe Date: Thu, 13 Apr 2017 15:06:35 -0700 Subject: [PATCH 154/625] Update Docker images for Crossbuild (#2057) --- buildpipeline/pipeline.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index b6ccb396..8aee1f69 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -193,7 +193,7 @@ { "Name": "Core-Setup-CrossBuild", "Parameters": { - "PB_DockerTag": "ubuntu1404_cross_prereqs_v2", + "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", "PB_Architecture": "arm", "TargetRid": "ubuntu.14.04-arm" }, @@ -205,7 +205,7 @@ { "Name": "Core-Setup-CrossBuild", "Parameters": { - "PB_DockerTag": "ubuntu1404_cross_prereqs_v2", + "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", "PB_Architecture": "arm", "TargetRid": "linux-arm", "PB_PortableBuild": "-portable" @@ -219,7 +219,7 @@ { "Name": "Core-Setup-CrossBuild", "Parameters": { - "PB_DockerTag": "ubuntu1604_cross_prereqs_v2", + "PB_DockerTag": "ubuntu-16.04-cross-ef0ac75-20175511035548", "PB_Architecture": "arm", "TargetRid": "ubuntu.16.04-arm" }, From bfe23371c14cd097305841858a3a1602330e7697 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Thu, 13 Apr 2017 15:33:35 -0700 Subject: [PATCH 155/625] Updating CoreFx to preview1-25213-06 (#2056) --- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- .../project.json.template | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkg/deps/project.json b/pkg/deps/project.json index ce343a0f..28e199ff 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25213-06" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 5b5c4393..c14e0b48 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25210-01\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25213-06\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index ec307a40..d8da9f5a 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25210-01", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25213-06", "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25213-02", "Microsoft.DiaSymReader.Native": "1.4.0", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25213-06", "NETStandard.Library": "2.0.0-preview1-25213-01" }, "frameworks": { diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 2a14bc99..1b106cc8 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.0", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25210-01", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25213-06", "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25213-02", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25210-01", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25213-06", "NETStandard.Library": "2.0.0-preview1-25213-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", From 51fef45759c3328bc409d6f431d3f6ad27cf96e4 Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Thu, 13 Apr 2017 16:50:40 -0700 Subject: [PATCH 156/625] Revert "Merge pull request #2046 from ellismg/remove-infer-runtimes" This reverts commit 3e354ac6f6a4efe241928ac03fc5ee740d7c7f61, reversing changes made to 4e4d0a2046227332678d40c8e80f1b89a74e7956. It appears that after this change we started to hit some flakyness in our official builds and the thought is that this commit may have been the issue. Reverting for now to try to unblock the official builds and we'll reapply this once we understand the issue. --- .gitignore | 5 ----- build_projects/dotnet-host-build/PrepareTargets.cs | 11 +---------- build_projects/dotnet-host-build/build.ps1 | 9 +-------- build_projects/dotnet-host-build/build.sh | 8 +------- .../{project.json.template => project.json} | 3 --- .../Utils/SharedFrameworkPublisher.cs | 1 + .../{project.json.template => project.json} | 3 --- .../update-dependencies/update-dependencies.ps1 | 9 +-------- .../update-dependencies/update-dependencies.sh | 8 +------- .../{project.json.template => project.json} | 3 --- 10 files changed, 6 insertions(+), 54 deletions(-) rename build_projects/dotnet-host-build/{project.json.template => project.json} (95%) rename build_projects/update-dependencies/{project.json.template => project.json} (95%) rename setuptools/independent/DepsProcessor/{project.json.template => project.json} (94%) diff --git a/.gitignore b/.gitignore index bce98b0e..8f912130 100644 --- a/.gitignore +++ b/.gitignore @@ -297,8 +297,3 @@ test/PackagedCommands/Consumers/*/project.json # VS generated files launchSettings.json - -# Generated project.json files (the project.json.template file is the authoritative copy) -setuptools/independent/DepsProcessor/project.json -build_projects/dotnet-host-build/project.json -build_projects/update-dependencies/project.json diff --git a/build_projects/dotnet-host-build/PrepareTargets.cs b/build_projects/dotnet-host-build/PrepareTargets.cs index 344fce5b..341dde7d 100644 --- a/build_projects/dotnet-host-build/PrepareTargets.cs +++ b/build_projects/dotnet-host-build/PrepareTargets.cs @@ -385,16 +385,7 @@ namespace Microsoft.DotNet.Host.Build .WorkingDirectory(Path.Combine(c.BuildContext.BuildDirectory, "setuptools", "dotnet-deb-tool")) .Execute() .EnsureSuccessful(); - - var independentToolsRoot = Path.Combine(c.BuildContext.BuildDirectory, "setuptools", "independent"); - - foreach (string templateFile in Directory.GetFiles(independentToolsRoot, "project.json.template", SearchOption.AllDirectories)) - { - string projectJsonFile = Path.Combine(Path.GetDirectoryName(templateFile), "project.json"); - File.WriteAllText(projectJsonFile, File.ReadAllText(templateFile).Replace("{RID}", RuntimeEnvironment.GetRuntimeIdentifier())); - } - - dotnet.Restore("--verbosity", "verbose", "--disable-parallel") + dotnet.Restore("--verbosity", "verbose", "--disable-parallel", "--infer-runtimes") .WorkingDirectory(Path.Combine(c.BuildContext.BuildDirectory, "setuptools", "independent")) .Execute() .EnsureSuccessful(); diff --git a/build_projects/dotnet-host-build/build.ps1 b/build_projects/dotnet-host-build/build.ps1 index 585c5312..99bced79 100644 --- a/build_projects/dotnet-host-build/build.ps1 +++ b/build_projects/dotnet-host-build/build.ps1 @@ -125,17 +125,10 @@ $env:PATH = "$env:DOTNET_INSTALL_DIR;$env:PATH" # Disable first run since we want to control all package sources $env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 -# Figure out the RID of the current platform, based on what stage 0 thinks. -$HOST_RID=(dotnet --info | Select-String -Pattern "\s*RID:\s*(?.*)").Matches[0].Groups['rid'].Value - # Restore the build scripts Write-Host "Restoring Build Script projects..." pushd "$PSScriptRoot\.." - -(Get-Content "dotnet-host-build\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "dotnet-host-build\project.json" -(Get-Content "update-dependencies\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "update-dependencies\project.json" - -dotnet restore +dotnet restore --infer-runtimes if($LASTEXITCODE -ne 0) { throw "Failed to restore" } popd diff --git a/build_projects/dotnet-host-build/build.sh b/build_projects/dotnet-host-build/build.sh index 23435aa5..d454d717 100755 --- a/build_projects/dotnet-host-build/build.sh +++ b/build_projects/dotnet-host-build/build.sh @@ -142,9 +142,6 @@ curl -sSL "$DOTNET_INSTALL_SCRIPT_URL" | bash /dev/stdin --version 1.0.0-preview # Put stage 0 on the PATH (for this shell only) PATH="$DOTNET_INSTALL_DIR:$PATH" -# Figure out the RID of the current platform, based on what stage 0 thinks. -RID=$(dotnet --info | grep 'RID:' | sed -e 's/[[:space:]]*RID:[[:space:]]*\(.*\)/\1/g') - # Increases the file descriptors limit for this bash. It prevents an issue we were hitting during restore FILE_DESCRIPTOR_LIMIT=$( ulimit -n ) if [ $FILE_DESCRIPTOR_LIMIT -lt 1024 ] @@ -160,10 +157,7 @@ export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 echo "Restoring Build Script projects..." ( cd "$DIR/.." - sed -e "s/{RID}/$RID/g" "dotnet-host-build/project.json.template" > "dotnet-host-build/project.json" - sed -e "s/{RID}/$RID/g" "update-dependencies/project.json.template" > "update-dependencies/project.json" - - dotnet restore --disable-parallel + dotnet restore --infer-runtimes --disable-parallel ) # Build the builder diff --git a/build_projects/dotnet-host-build/project.json.template b/build_projects/dotnet-host-build/project.json similarity index 95% rename from build_projects/dotnet-host-build/project.json.template rename to build_projects/dotnet-host-build/project.json index 978a38a1..832ed0b5 100644 --- a/build_projects/dotnet-host-build/project.json.template +++ b/build_projects/dotnet-host-build/project.json @@ -29,8 +29,5 @@ "portable-net45+win8" ] } - }, - "runtimes": { - "{RID}": {} } } diff --git a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs b/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs index cc8f91ab..39da8ccc 100644 --- a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs +++ b/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs @@ -116,6 +116,7 @@ namespace Microsoft.DotNet.Cli.Build dotnetCli.Restore( "--verbosity", "verbose", "--disable-parallel", + "--infer-runtimes", "--fallbacksource", _corehostPackageSource) .WorkingDirectory(_sharedFrameworkSourceRoot) .Execute() diff --git a/build_projects/update-dependencies/project.json.template b/build_projects/update-dependencies/project.json similarity index 95% rename from build_projects/update-dependencies/project.json.template rename to build_projects/update-dependencies/project.json index 4a34368f..160ada3a 100644 --- a/build_projects/update-dependencies/project.json.template +++ b/build_projects/update-dependencies/project.json @@ -27,8 +27,5 @@ "portable-net45+win" ] } - }, - "runtimes": { - "{RID}": {} } } diff --git a/build_projects/update-dependencies/update-dependencies.ps1 b/build_projects/update-dependencies/update-dependencies.ps1 index 416db8df..d1120e9a 100644 --- a/build_projects/update-dependencies/update-dependencies.ps1 +++ b/build_projects/update-dependencies/update-dependencies.ps1 @@ -50,17 +50,10 @@ $env:PATH = "$env:DOTNET_INSTALL_DIR;$env:PATH" $appPath = "$PSScriptRoot" -# Figure out the RID of the current platform, based on what stage 0 thinks. -$HOST_RID=(dotnet --info | Select-String -Pattern "\s*RID:\s*(?.*)").Matches[0].Groups['rid'].Value - # Restore the build scripts Write-Host "Restoring Build Script projects..." pushd "$PSScriptRoot\.." - -(Get-Content "dotnet-host-build\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "dotnet-host-build\project.json" -(Get-Content "update-dependencies\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "update-dependencies\project.json" - -dotnet restore +dotnet restore --infer-runtimes if($LASTEXITCODE -ne 0) { throw "Failed to restore" } popd diff --git a/build_projects/update-dependencies/update-dependencies.sh b/build_projects/update-dependencies/update-dependencies.sh index 0ee743b6..9d42a02a 100755 --- a/build_projects/update-dependencies/update-dependencies.sh +++ b/build_projects/update-dependencies/update-dependencies.sh @@ -59,9 +59,6 @@ curl -sSL "$DOTNET_INSTALL_SCRIPT_URL" | bash /dev/stdin --version 1.0.0-preview # Put stage 0 on the PATH (for this shell only) PATH="$DOTNET_INSTALL_DIR:$PATH" -# Figure out the RID of the current platform, based on what stage 0 thinks. -RID=$(dotnet --info | grep 'RID:' | sed -e 's/[[:space:]]*RID:[[:space:]]*\(.*\)/\1/g') - # Increases the file descriptors limit for this bash. It prevents an issue we were hitting during restore FILE_DESCRIPTOR_LIMIT=$( ulimit -n ) if [ $FILE_DESCRIPTOR_LIMIT -lt 1024 ] @@ -77,10 +74,7 @@ export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 echo "Restoring Build Script projects..." ( pushd "$DIR/.." - sed -e "s/{RID}/$RID/g" "dotnet-host-build/project.json.template" > "dotnet-host-build/project.json" - sed -e "s/{RID}/$RID/g" "update-dependencies/project.json.template" > "update-dependencies/project.json" - - dotnet restore --disable-parallel + dotnet restore --infer-runtimes --disable-parallel popd ) diff --git a/setuptools/independent/DepsProcessor/project.json.template b/setuptools/independent/DepsProcessor/project.json similarity index 94% rename from setuptools/independent/DepsProcessor/project.json.template rename to setuptools/independent/DepsProcessor/project.json index 422a7605..2f6e7b8d 100644 --- a/setuptools/independent/DepsProcessor/project.json.template +++ b/setuptools/independent/DepsProcessor/project.json @@ -21,8 +21,5 @@ "portable-net45+wp80+win8+wpa81+dnxcore50" ] } - }, - "runtimes": { - "{RID}" : {} } } From 4e29fcb41963184b95d18ac2e3919bb1f6d3b1b6 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Thu, 13 Apr 2017 18:20:13 -0700 Subject: [PATCH 157/625] Updating CoreClr to preview1-25213-04 (#2058) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- .../project.json.template | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index daf7c4d1..f630f670 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25213-02"; - public static readonly string JitVersion = "2.0.0-preview1-25213-02"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25213-04"; + public static readonly string JitVersion = "2.0.0-preview1-25213-04"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index d8da9f5a..adac4107 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25213-06", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25213-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25213-04", "Microsoft.DiaSymReader.Native": "1.4.0", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25213-06", "NETStandard.Library": "2.0.0-preview1-25213-01" diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 1b106cc8..e2a5b8d9 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -2,7 +2,7 @@ "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.0", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25213-06", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25213-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25213-04", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25213-06", "NETStandard.Library": "2.0.0-preview1-25213-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", From 56ca540acc91e432c37ebacbfca642bd7ccc42d6 Mon Sep 17 00:00:00 2001 From: William Kent Date: Sun, 5 Feb 2017 19:41:07 -0500 Subject: [PATCH 158/625] Set the MACOSX_RPATH on hostfxr and hostpolicy This resolves a CMake warning, as well as fixes a potential bug when these libraries are used on macOS. --- src/corehost/cli/dll/CMakeLists.txt | 1 + src/corehost/cli/fxr/CMakeLists.txt | 1 + 2 files changed, 2 insertions(+) diff --git a/src/corehost/cli/dll/CMakeLists.txt b/src/corehost/cli/dll/CMakeLists.txt index 6a12f6f7..67605933 100644 --- a/src/corehost/cli/dll/CMakeLists.txt +++ b/src/corehost/cli/dll/CMakeLists.txt @@ -59,6 +59,7 @@ if(WIN32) list(APPEND RESOURCES ../native.rc) endif() add_library(hostpolicy SHARED ${SOURCES} ${RESOURCES}) +set_target_properties(hostpolicy PROPERTIES MACOSX_RPATH TRUE) # Specify the import library to link against for Arm32 build since the default set is minimal if (WIN32 AND CLI_CMAKE_PLATFORM_ARCH_ARM) diff --git a/src/corehost/cli/fxr/CMakeLists.txt b/src/corehost/cli/fxr/CMakeLists.txt index 9838576a..d98576da 100644 --- a/src/corehost/cli/fxr/CMakeLists.txt +++ b/src/corehost/cli/fxr/CMakeLists.txt @@ -56,6 +56,7 @@ if(WIN32) list(APPEND RESOURCES ../native.rc) endif() add_library(hostfxr SHARED ${SOURCES} ${RESOURCES}) +set_target_properties(hostfxr PROPERTIES MACOSX_RPATH TRUE) # Specify the import library to link against for Arm32 build since the default set is minimal if (WIN32 AND CLI_CMAKE_PLATFORM_ARCH_ARM) From 2a6af59bb81062b06fb439223d073bc6afbba56d Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Thu, 13 Apr 2017 19:07:24 -0700 Subject: [PATCH 159/625] Fix null reference during the build When trying to build, we had a null reference when you did something like the following: 1. Clean your enlistment 2. Invoke build.[sh|cmd] so that the build system is compiled (you can just build the Init target, all we care about is the build scripts are compiled, we don't need any actual work to happen) 3. Force buildtools to be restored, e.g. pkg\init-tools.[sh|cmd] 4. Touch any file that is part of the dotnet-host-build project so the up to date check fails and the CLI rebuilds the project At this point, trying to build will hit a null-ref when trying to compile dotnet-host-build. What's going on here is we're using an old version of the CLI that supported both project.json based projects and MSBuild projects. The way this was supported is that the tooling would prefer MSBuild projects but fallback to project.json if needed. In the case of dotnet-host-build we have a sign.proj file (MSBuild) which we use for signing during the official build. If BuildTools has not been restored, then the signing}/sign.proj | 0 buildpipeline/Core-Setup-Signing-Windows-x64.json | 12 ++++++------ buildpipeline/Core-Setup-Signing-Windows-x86.json | 10 +++++----- 3 files changed, 11 insertions(+), 11 deletions(-) rename build_projects/{dotnet-host-build => signing}/sign.proj (100%) diff --git a/build_projects/dotnet-host-build/sign.proj b/build_projects/signing/sign.proj similarity index 100% rename from build_projects/dotnet-host-build/sign.proj rename to build_projects/signing/sign.proj diff --git a/buildpipeline/Core-Setup-Signing-Windows-x64.json b/buildpipeline/Core-Setup-Signing-Windows-x64.json index 5e2c2a12..0a0417cd 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x64.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x64.json @@ -87,7 +87,7 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\dotnet-host-build\\sign.proj", + "solution": "build_projects\\signing\\sign.proj", "platform": "", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignCoreHost $(MsbuildSigningArguments)", @@ -153,7 +153,7 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\dotnet-host-build\\sign.proj", + "solution": "build_projects\\signing\\sign.proj", "platform": "", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignSharedFrameworkCrossgenedAssemblies $(MsbuildSigningArguments)", @@ -180,7 +180,7 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\dotnet-host-build\\sign.proj", + "solution": "build_projects\\signing\\sign.proj", "platform": "", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignAssemblies $(MsbuildSigningArguments)", @@ -226,7 +226,7 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\dotnet-host-build\\sign.proj", + "solution": "build_projects\\signing\\sign.proj", "platform": "", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignMsiAndCab $(MsbuildSigningArguments)", @@ -291,7 +291,7 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\dotnet-host-build\\sign.proj", + "solution": "build_projects\\signing\\sign.proj", "platform": "", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments)", @@ -337,7 +337,7 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\dotnet-host-build\\sign.proj", + "solution": "build_projects\\signing\\sign.proj", "platform": "", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments)", diff --git a/buildpipeline/Core-Setup-Signing-Windows-x86.json b/buildpipeline/Core-Setup-Signing-Windows-x86.json index 1cd85709..dd712eaa 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x86.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x86.json @@ -87,7 +87,7 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\dotnet-host-build\\sign.proj", + "solution": "build_projects\\signing\\sign.proj", "platform": "", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignCoreHost $(MsbuildSigningArguments)", @@ -153,7 +153,7 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\dotnet-host-build\\sign.proj", + "solution": "build_projects\\signing\\sign.proj", "platform": "", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignSharedFrameworkCrossgenedAssemblies $(MsbuildSigningArguments)", @@ -199,7 +199,7 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\dotnet-host-build\\sign.proj", + "solution": "build_projects\\signing\\sign.proj", "platform": "", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignMsiAndCab $(MsbuildSigningArguments)", @@ -264,7 +264,7 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\dotnet-host-build\\sign.proj", + "solution": "build_projects\\signing\\sign.proj", "platform": "", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments)", @@ -310,7 +310,7 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\dotnet-host-build\\sign.proj", + "solution": "build_projects\\signing\\sign.proj", "platform": "", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments)", From a15e056ce10066d51a9c403e76bada6664bc30b9 Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Thu, 13 Apr 2017 19:35:49 -0700 Subject: [PATCH 160/625] Revert "Merge pull request #2059 from ellismg/revert-2046" This reverts commit 8a8f990d7ce85088389612ad0fcaa5da6c91a9db, reversing changes made to bfe23371c14cd097305841858a3a1602330e7697. --- .gitignore | 5 +++++ build_projects/dotnet-host-build/PrepareTargets.cs | 11 ++++++++++- build_projects/dotnet-host-build/build.ps1 | 9 ++++++++- build_projects/dotnet-host-build/build.sh | 8 +++++++- .../{project.json => project.json.template} | 3 +++ .../Utils/SharedFrameworkPublisher.cs | 1 - .../{project.json => project.json.template} | 3 +++ .../update-dependencies/update-dependencies.ps1 | 9 ++++++++- .../update-dependencies/update-dependencies.sh | 8 +++++++- .../{project.json => project.json.template} | 3 +++ 10 files changed, 54 insertions(+), 6 deletions(-) rename build_projects/dotnet-host-build/{project.json => project.json.template} (95%) rename build_projects/update-dependencies/{project.json => project.json.template} (95%) rename setuptools/independent/DepsProcessor/{project.json => project.json.template} (94%) diff --git a/.gitignore b/.gitignore index 8f912130..bce98b0e 100644 --- a/.gitignore +++ b/.gitignore @@ -297,3 +297,8 @@ test/PackagedCommands/Consumers/*/project.json # VS generated files launchSettings.json + +# Generated project.json files (the project.json.template file is the authoritative copy) +setuptools/independent/DepsProcessor/project.json +build_projects/dotnet-host-build/project.json +build_projects/update-dependencies/project.json diff --git a/build_projects/dotnet-host-build/PrepareTargets.cs b/build_projects/dotnet-host-build/PrepareTargets.cs index 341dde7d..344fce5b 100644 --- a/build_projects/dotnet-host-build/PrepareTargets.cs +++ b/build_projects/dotnet-host-build/PrepareTargets.cs @@ -385,7 +385,16 @@ namespace Microsoft.DotNet.Host.Build .WorkingDirectory(Path.Combine(c.BuildContext.BuildDirectory, "setuptools", "dotnet-deb-tool")) .Execute() .EnsureSuccessful(); - dotnet.Restore("--verbosity", "verbose", "--disable-parallel", "--infer-runtimes") + + var independentToolsRoot = Path.Combine(c.BuildContext.BuildDirectory, "setuptools", "independent"); + + foreach (string templateFile in Directory.GetFiles(independentToolsRoot, "project.json.template", SearchOption.AllDirectories)) + { + string projectJsonFile = Path.Combine(Path.GetDirectoryName(templateFile), "project.json"); + File.WriteAllText(projectJsonFile, File.ReadAllText(templateFile).Replace("{RID}", RuntimeEnvironment.GetRuntimeIdentifier())); + } + + dotnet.Restore("--verbosity", "verbose", "--disable-parallel") .WorkingDirectory(Path.Combine(c.BuildContext.BuildDirectory, "setuptools", "independent")) .Execute() .EnsureSuccessful(); diff --git a/build_projects/dotnet-host-build/build.ps1 b/build_projects/dotnet-host-build/build.ps1 index 99bced79..585c5312 100644 --- a/build_projects/dotnet-host-build/build.ps1 +++ b/build_projects/dotnet-host-build/build.ps1 @@ -125,10 +125,17 @@ $env:PATH = "$env:DOTNET_INSTALL_DIR;$env:PATH" # Disable first run since we want to control all package sources $env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 +# Figure out the RID of the current platform, based on what stage 0 thinks. +$HOST_RID=(dotnet --info | Select-String -Pattern "\s*RID:\s*(?.*)").Matches[0].Groups['rid'].Value + # Restore the build scripts Write-Host "Restoring Build Script projects..." pushd "$PSScriptRoot\.." -dotnet restore --infer-runtimes + +(Get-Content "dotnet-host-build\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "dotnet-host-build\project.json" +(Get-Content "update-dependencies\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "update-dependencies\project.json" + +dotnet restore if($LASTEXITCODE -ne 0) { throw "Failed to restore" } popd diff --git a/build_projects/dotnet-host-build/build.sh b/build_projects/dotnet-host-build/build.sh index d454d717..23435aa5 100755 --- a/build_projects/dotnet-host-build/build.sh +++ b/build_projects/dotnet-host-build/build.sh @@ -142,6 +142,9 @@ curl -sSL "$DOTNET_INSTALL_SCRIPT_URL" | bash /dev/stdin --version 1.0.0-preview # Put stage 0 on the PATH (for this shell only) PATH="$DOTNET_INSTALL_DIR:$PATH" +# Figure out the RID of the current platform, based on what stage 0 thinks. +RID=$(dotnet --info | grep 'RID:' | sed -e 's/[[:space:]]*RID:[[:space:]]*\(.*\)/\1/g') + # Increases the file descriptors limit for this bash. It prevents an issue we were hitting during restore FILE_DESCRIPTOR_LIMIT=$( ulimit -n ) if [ $FILE_DESCRIPTOR_LIMIT -lt 1024 ] @@ -157,7 +160,10 @@ export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 echo "Restoring Build Script projects..." ( cd "$DIR/.." - dotnet restore --infer-runtimes --disable-parallel + sed -e "s/{RID}/$RID/g" "dotnet-host-build/project.json.template" > "dotnet-host-build/project.json" + sed -e "s/{RID}/$RID/g" "update-dependencies/project.json.template" > "update-dependencies/project.json" + + dotnet restore --disable-parallel ) # Build the builder diff --git a/build_projects/dotnet-host-build/project.json b/build_projects/dotnet-host-build/project.json.template similarity index 95% rename from build_projects/dotnet-host-build/project.json rename to build_projects/dotnet-host-build/project.json.template index 832ed0b5..978a38a1 100644 --- a/build_projects/dotnet-host-build/project.json +++ b/build_projects/dotnet-host-build/project.json.template @@ -29,5 +29,8 @@ "portable-net45+win8" ] } + }, + "runtimes": { + "{RID}": {} } } diff --git a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs b/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs index 39da8ccc..cc8f91ab 100644 --- a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs +++ b/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs @@ -116,7 +116,6 @@ namespace Microsoft.DotNet.Cli.Build dotnetCli.Restore( "--verbosity", "verbose", "--disable-parallel", - "--infer-runtimes", "--fallbacksource", _corehostPackageSource) .WorkingDirectory(_sharedFrameworkSourceRoot) .Execute() diff --git a/build_projects/update-dependencies/project.json b/build_projects/update-dependencies/project.json.template similarity index 95% rename from build_projects/update-dependencies/project.json rename to build_projects/update-dependencies/project.json.template index 160ada3a..4a34368f 100644 --- a/build_projects/update-dependencies/project.json +++ b/build_projects/update-dependencies/project.json.template @@ -27,5 +27,8 @@ "portable-net45+win" ] } + }, + "runtimes": { + "{RID}": {} } } diff --git a/build_projects/update-dependencies/update-dependencies.ps1 b/build_projects/update-dependencies/update-dependencies.ps1 index d1120e9a..416db8df 100644 --- a/build_projects/update-dependencies/update-dependencies.ps1 +++ b/build_projects/update-dependencies/update-dependencies.ps1 @@ -50,10 +50,17 @@ $env:PATH = "$env:DOTNET_INSTALL_DIR;$env:PATH" $appPath = "$PSScriptRoot" +# Figure out the RID of the current platform, based on what stage 0 thinks. +$HOST_RID=(dotnet --info | Select-String -Pattern "\s*RID:\s*(?.*)").Matches[0].Groups['rid'].Value + # Restore the build scripts Write-Host "Restoring Build Script projects..." pushd "$PSScriptRoot\.." -dotnet restore --infer-runtimes + +(Get-Content "dotnet-host-build\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "dotnet-host-build\project.json" +(Get-Content "update-dependencies\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "update-dependencies\project.json" + +dotnet restore if($LASTEXITCODE -ne 0) { throw "Failed to restore" } popd diff --git a/build_projects/update-dependencies/update-dependencies.sh b/build_projects/update-dependencies/update-dependencies.sh index 9d42a02a..0ee743b6 100755 --- a/build_projects/update-dependencies/update-dependencies.sh +++ b/build_projects/update-dependencies/update-dependencies.sh @@ -59,6 +59,9 @@ curl -sSL "$DOTNET_INSTALL_SCRIPT_URL" | bash /dev/stdin --version 1.0.0-preview # Put stage 0 on the PATH (for this shell only) PATH="$DOTNET_INSTALL_DIR:$PATH" +# Figure out the RID of the current platform, based on what stage 0 thinks. +RID=$(dotnet --info | grep 'RID:' | sed -e 's/[[:space:]]*RID:[[:space:]]*\(.*\)/\1/g') + # Increases the file descriptors limit for this bash. It prevents an issue we were hitting during restore FILE_DESCRIPTOR_LIMIT=$( ulimit -n ) if [ $FILE_DESCRIPTOR_LIMIT -lt 1024 ] @@ -74,7 +77,10 @@ export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 echo "Restoring Build Script projects..." ( pushd "$DIR/.." - dotnet restore --infer-runtimes --disable-parallel + sed -e "s/{RID}/$RID/g" "dotnet-host-build/project.json.template" > "dotnet-host-build/project.json" + sed -e "s/{RID}/$RID/g" "update-dependencies/project.json.template" > "update-dependencies/project.json" + + dotnet restore --disable-parallel popd ) diff --git a/setuptools/independent/DepsProcessor/project.json b/setuptools/independent/DepsProcessor/project.json.template similarity index 94% rename from setuptools/independent/DepsProcessor/project.json rename to setuptools/independent/DepsProcessor/project.json.template index 2f6e7b8d..422a7605 100644 --- a/setuptools/independent/DepsProcessor/project.json +++ b/setuptools/independent/DepsProcessor/project.json.template @@ -21,5 +21,8 @@ "portable-net45+wp80+win8+wpa81+dnxcore50" ] } + }, + "runtimes": { + "{RID}" : {} } } From 1d2a26e28105769ca88caa8b213cd8598a66c7cc Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Fri, 14 Apr 2017 07:31:57 -0700 Subject: [PATCH 161/625] Updating CoreFx, CoreClr, Standard to preview1-25214-01, preview1-25214-02, preview1-25214-01 respectively (#2064) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 8 ++++---- .../project.json.template | 8 ++++---- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index f630f670..f974eae8 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25213-04"; - public static readonly string JitVersion = "2.0.0-preview1-25213-04"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25214-02"; + public static readonly string JitVersion = "2.0.0-preview1-25214-02"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index 28e199ff..6b09e082 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25213-06" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25214-01" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index c14e0b48..dd9373d1 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25213-06\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25214-01\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index adac4107..94b109f3 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25213-06", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25213-04", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25214-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25214-02", "Microsoft.DiaSymReader.Native": "1.4.0", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25213-06", - "NETStandard.Library": "2.0.0-preview1-25213-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25214-01", + "NETStandard.Library": "2.0.0-preview1-25214-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index e2a5b8d9..6543f045 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.0", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25213-06", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25213-04", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25213-06", - "NETStandard.Library": "2.0.0-preview1-25213-01", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25214-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25214-02", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25214-01", + "NETStandard.Library": "2.0.0-preview1-25214-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From 9c0b3992105157a4ce9e53f383392cf90350b053 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Fri, 14 Apr 2017 11:17:21 -0500 Subject: [PATCH 162/625] Remove alpine from official build rid list. (#2066) alpine isn't supported by corefx, so we can't build core-setup supporting it. --- pkg/projects/netcoreappRIDs.props | 1 - 1 file changed, 1 deletion(-) diff --git a/pkg/projects/netcoreappRIDs.props b/pkg/projects/netcoreappRIDs.props index e1d05052..b09f79ae 100644 --- a/pkg/projects/netcoreappRIDs.props +++ b/pkg/projects/netcoreappRIDs.props @@ -16,7 +16,6 @@ - armel From d6d8a172fccab36486fa23e17bbe920d2868c21d Mon Sep 17 00:00:00 2001 From: Davis Goodin Date: Fri, 14 Apr 2017 12:10:15 -0500 Subject: [PATCH 163/625] Fix pack.cmd ERRORLEVEL early exits "if ERRORLEVEL x" runs if ERRORLEVEL >= x. "if not ERRORLEVEL 0" means ERRORLEVEL < 0, which doesn't detect the error we get. "if ERRORLEVEL 1" is idiomatic in cmd, but to catch negative ERRORLEVEL, use string matching on the ERRORLEVEL variable. Also added early exits on steps that didn't have one. --- pkg/pack.cmd | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkg/pack.cmd b/pkg/pack.cmd index 82c4fa43..5e6d5be3 100644 --- a/pkg/pack.cmd +++ b/pkg/pack.cmd @@ -15,22 +15,24 @@ if /i "%1" == "-portable" (set __PortableBuildArgs=true&shift&goto A :: Initialize the MSBuild Tools call "%__ProjectDir%\init-tools.cmd" +if NOT [!ERRORLEVEL!]==[0] goto :Error :: Restore dependencies mainly to obtain runtime.json pushd "%__ProjectDir%\deps" "%__DotNet%" restore --configfile "%__ProjectDir%\..\NuGet.Config" --packages "%__ProjectDir%\packages" +if NOT [!ERRORLEVEL!]==[0] goto :Error popd :: Clean up existing nupkgs if exist "%__ProjectDir%\bin" (rmdir /s /q "%__ProjectDir%\bin") "%__DotNet%" "%__MSBuild%" "%__ProjectDir%\tasks\core-setup.tasks.builds" /verbosity:minimal /flp:logfile=tools.log;v=diag -if not ERRORLEVEL 0 goto :Error +if NOT [!ERRORLEVEL!]==[0] goto :Error :: Package the assets using Tools "%__DotNet%" "%__MSBuild%" "%__ProjectDir%\packages.builds" /p:OSGroup=Windows_NT /verbosity:minimal /p:PortableBuild=%__PortableBuildArgs% +if NOT [!ERRORLEVEL!]==[0] goto :Error -if not ERRORLEVEL 0 goto :Error exit /b 0 :Error From cae399217ca2003f9b318182941db34a79fa1351 Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Fri, 14 Apr 2017 10:57:48 -0700 Subject: [PATCH 164/625] Update Microsoft.NETCore.UniversalWindowsPlatform changes to address PR feedback --- ...ETCore.UniversalWindowsPlatform.CoreCLR.targets | 14 -------------- .../Microsoft.Net.UWPCoreRuntimeSdk.builds} | 2 +- .../Microsoft.Net.UWPCoreRuntimeSdk.pkgproj} | 4 ++-- .../dir.props | 0 .../files/Microsoft.Net.UWPCoreRuntimeSdk.props} | 0 .../files/Microsoft.Net.UWPCoreRuntimeSdk.targets | 14 ++++++++++++++ pkg/projects/descriptions.json | 4 ++-- 7 files changed, 19 insertions(+), 19 deletions(-) delete mode 100644 pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.targets rename pkg/projects/{Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.builds => Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.builds} (81%) rename pkg/projects/{Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.pkgproj => Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj} (75%) rename pkg/projects/{Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR => Microsoft.Net.UWPCoreRuntimeSdk}/dir.props (100%) rename pkg/projects/{Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.props => Microsoft.Net.UWPCoreRuntimeSdk/files/Microsoft.Net.UWPCoreRuntimeSdk.props} (100%) create mode 100644 pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/Microsoft.Net.UWPCoreRuntimeSdk.targets diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.targets b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.targets deleted file mode 100644 index cba346f2..00000000 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.targets +++ /dev/null @@ -1,14 +0,0 @@ - - - - CheckCoreRuntimeCompatibility; - $(BuildDependsOn); - - - - - - - \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.builds b/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.builds similarity index 81% rename from pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.builds rename to pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.builds index 5bc696ff..0caa7975 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.builds +++ b/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.builds @@ -3,7 +3,7 @@ - + diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.pkgproj b/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj similarity index 75% rename from pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.pkgproj rename to pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj index 4c171b47..9c4a846d 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.pkgproj +++ b/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj @@ -7,10 +7,10 @@ - + build - + build diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/dir.props b/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/dir.props similarity index 100% rename from pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/dir.props rename to pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/dir.props diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.props b/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/Microsoft.Net.UWPCoreRuntimeSdk.props similarity index 100% rename from pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR/files/Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR.props rename to pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/Microsoft.Net.UWPCoreRuntimeSdk.props diff --git a/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/Microsoft.Net.UWPCoreRuntimeSdk.targets b/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/Microsoft.Net.UWPCoreRuntimeSdk.targets new file mode 100644 index 00000000..91f2ae8b --- /dev/null +++ b/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/Microsoft.Net.UWPCoreRuntimeSdk.targets @@ -0,0 +1,14 @@ + + + + CheckCoreRuntimeCompatibility; + $(BuildDependsOn); + + + + + + + \ No newline at end of file diff --git a/pkg/projects/descriptions.json b/pkg/projects/descriptions.json index d6f591d3..abb3522c 100644 --- a/pkg/projects/descriptions.json +++ b/pkg/projects/descriptions.json @@ -45,8 +45,8 @@ "CommonTypes": [ ] }, { - "Name": "Microsoft.NETCore.UniversalWindowsPlatform.CoreCLR", - "Description": "Provides a set of tools to run Universal Windows application on CoreCLR.", + "Name": "Microsoft.Net.UWPCoreRuntimeSdk", + "Description": "Provides the CoreCLR runtime and build tools to build and run Universal Windows applications using CoreCLR.", "CommonTypes": [ ] }, ] From 5c04074fd9abbaca8585551f99a79d42417f7441 Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Fri, 14 Apr 2017 11:12:34 -0700 Subject: [PATCH 165/625] Update UWP metapackage with updated reference to Microsoft.Net.UWPCoreRuntimeSdk --- pkg/dir.props | 2 +- .../Microsoft.NETCore.UniversalWindowsPlatform.pkgproj | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkg/dir.props b/pkg/dir.props index e912879f..578b95f4 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -79,7 +79,7 @@ $(HostResolverVersion)$(PreReleaseSuffix) $(AppHostVersion)$(PreReleaseSuffix) $(HostVersion)$(PreReleaseSuffix) - $(UWPCoreCLRVersion)$(PreReleaseSuffix) + $(UWPCoreRuntimeSdkVersion)$(PreReleaseSuffix) diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj index 7f0b522b..9cb695fd 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj @@ -30,9 +30,9 @@ .NETCore50 - + uap10.1 - $(UWPCoreCLRFullVersion) + $(UWPCoreRuntimeSdkFullVersion) From 99e842631fa88cfc54ddbaca9547f25a913f5693 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Matou=C5=A1ek?= Date: Fri, 14 Apr 2017 13:06:38 -0700 Subject: [PATCH 169/625] Update Microsoft.DiaSymReader.Native version to 1.4.1 --- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 45c89520..0a7e4eab 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -2,7 +2,7 @@ "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25214-03", "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25214-03", - "Microsoft.DiaSymReader.Native": "1.4.0", + "Microsoft.DiaSymReader.Native": "1.4.1", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25214-03", "NETStandard.Library": "2.0.0-preview1-25214-01" }, From a6505a9a8d4866dcb651e19bd8e0ade7af1f8ad5 Mon Sep 17 00:00:00 2001 From: Wes Haggard Date: Fri, 14 Apr 2017 17:29:06 -0700 Subject: [PATCH 170/625] Filter out UWP package for arm64 --- pkg/packages.builds | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/packages.builds b/pkg/packages.builds index d5f81554..a4e3942b 100644 --- a/pkg/packages.builds +++ b/pkg/packages.builds @@ -3,7 +3,7 @@ - + From 10b5a0b321d0c3d61e99a9c9033418010818ad63 Mon Sep 17 00:00:00 2001 From: John Beisner Date: Fri, 14 Apr 2017 17:33:36 -0700 Subject: [PATCH 171/625] Fixing a test problem. --- .../GivenThatICareAboutMultilevelSDKLookup.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index 6ddebe92..aba92db3 100644 --- a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -220,7 +220,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // CWD: 9999.0.0, 9999.0.0-global-dummy // User: 9999.0.0, 9999.0.0-dummy // Exe: 9999.0.0-dummy, 9999.0.0-global-dummy - // Expected: 9999.0.0 from cwd + // Expected: 9999.0.0-global-dummy from cwd dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") @@ -230,7 +230,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.0")); + .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.0-global-dummy")); // Remove dummy folders from user dir DeleteAvailableSdkVersions(_userSdkBaseDir, "9999.0.0", "9999.0.0-dummy"); From 55c5aabb02a347f57c21e3968fcccdcfaa3b60c8 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Tue, 11 Apr 2017 18:57:28 -0700 Subject: [PATCH 172/625] Preserve The probing Paths passed to host in the AppContext\AppDomain --- src/corehost/cli/deps_resolver.cpp | 12 ++++++++++++ src/corehost/cli/deps_resolver.h | 2 ++ src/corehost/cli/hostpolicy.cpp | 11 ++++++++--- 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/src/corehost/cli/deps_resolver.cpp b/src/corehost/cli/deps_resolver.cpp index bbaee04a..baafcb93 100644 --- a/src/corehost/cli/deps_resolver.cpp +++ b/src/corehost/cli/deps_resolver.cpp @@ -164,6 +164,18 @@ void deps_resolver_t::setup_shared_store_probes( } } +pal::string_t deps_resolver_t::get_probe_directories() +{ + pal::string_t directories; + for (const auto& pc : m_probes) + { + directories.append(pc.probe_dir); + directories.push_back(PATH_SEPARATOR); + } + + return directories; +} + void deps_resolver_t::setup_probe_config( const hostpolicy_init_t& init, const arguments_t& args) diff --git a/src/corehost/cli/deps_resolver.h b/src/corehost/cli/deps_resolver.h index bb9de02e..5e0c28b4 100644 --- a/src/corehost/cli/deps_resolver.h +++ b/src/corehost/cli/deps_resolver.h @@ -80,6 +80,8 @@ public: const hostpolicy_init_t& init, const arguments_t& args); + pal::string_t get_probe_directories(); + void setup_probe_config( const hostpolicy_init_t& init, const arguments_t& args); diff --git a/src/corehost/cli/hostpolicy.cpp b/src/corehost/cli/hostpolicy.cpp index 53ac2d02..8c1b9dc7 100644 --- a/src/corehost/cli/hostpolicy.cpp +++ b/src/corehost/cli/hostpolicy.cpp @@ -73,11 +73,12 @@ int run(const arguments_t& args) // Workaround: mscorlib does not resolve symlinks for AppContext.BaseDirectory dotnet/coreclr/issues/2128 "APP_CONTEXT_BASE_DIRECTORY", "APP_CONTEXT_DEPS_FILES", - "FX_DEPS_FILE" + "FX_DEPS_FILE", + "PROBING_DIRECTORIES" }; // Note: these variables' lifetime should be longer than coreclr_initialize. - std::vector tpa_paths_cstr, app_base_cstr, native_dirs_cstr, resources_dirs_cstr, fx_deps, deps, clrjit_path_cstr; + std::vector tpa_paths_cstr, app_base_cstr, native_dirs_cstr, resources_dirs_cstr, fx_deps, deps, clrjit_path_cstr, probe_directories; pal::pal_clrstring(probe_paths.tpa, &tpa_paths_cstr); pal::pal_clrstring(args.app_dir, &app_base_cstr); pal::pal_clrstring(probe_paths.native, &native_dirs_cstr); @@ -86,6 +87,8 @@ int run(const arguments_t& args) pal::pal_clrstring(resolver.get_fx_deps_file(), &fx_deps); pal::pal_clrstring(resolver.get_deps_file() + _X(";") + resolver.get_fx_deps_file(), &deps); + pal::pal_clrstring(resolver.get_probe_directories(), &probe_directories); + std::vector property_values = { // TRUSTED_PLATFORM_ASSEMBLIES tpa_paths_cstr.data(), @@ -100,7 +103,9 @@ int run(const arguments_t& args) // APP_CONTEXT_DEPS_FILES, deps.data(), // FX_DEPS_FILE - fx_deps.data() + fx_deps.data(), + //PROBING_DIRECTORIES + probe_directories.data() }; if (!clrjit_path.empty()) From ffb74902574f5a8c09012da8249266d4383a02ee Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Tue, 11 Apr 2017 18:58:12 -0700 Subject: [PATCH 173/625] Read the probing path in DependencyModel --- .../PackageCompilationAssemblyResolver.cs | 89 ++++++++++++------- .../PackageResolverTest.cs | 16 ++-- 2 files changed, 63 insertions(+), 42 deletions(-) diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/PackageCompilationAssemblyResolver.cs b/src/Microsoft.Extensions.DependencyModel/Resolution/PackageCompilationAssemblyResolver.cs index bbc8d67e..11ac57bb 100644 --- a/src/Microsoft.Extensions.DependencyModel/Resolution/PackageCompilationAssemblyResolver.cs +++ b/src/Microsoft.Extensions.DependencyModel/Resolution/PackageCompilationAssemblyResolver.cs @@ -11,7 +11,7 @@ namespace Microsoft.Extensions.DependencyModel.Resolution public class PackageCompilationAssemblyResolver: ICompilationAssemblyResolver { private readonly IFileSystem _fileSystem; - private readonly string _nugetPackageDirectory; + private readonly string[] _nugetPackageDirectories; public PackageCompilationAssemblyResolver() : this(EnvironmentWrapper.Default, FileSystemWrapper.Default) @@ -19,66 +19,87 @@ namespace Microsoft.Extensions.DependencyModel.Resolution } public PackageCompilationAssemblyResolver(string nugetPackageDirectory) - : this(FileSystemWrapper.Default, nugetPackageDirectory) + : this(FileSystemWrapper.Default, new string[] { nugetPackageDirectory }) { } internal PackageCompilationAssemblyResolver(IEnvironment environment, IFileSystem fileSystem) - : this(fileSystem, GetDefaultPackageDirectory(environment)) + : this(fileSystem, GetDefaultProbeDirectories(environment)) { } - internal PackageCompilationAssemblyResolver(IFileSystem fileSystem, string nugetPackageDirectory) + internal PackageCompilationAssemblyResolver(IFileSystem fileSystem, string[] nugetPackageDirectories) { _fileSystem = fileSystem; - _nugetPackageDirectory = nugetPackageDirectory; + _nugetPackageDirectories = nugetPackageDirectories; } - private static string GetDefaultPackageDirectory(IEnvironment environment) => - GetDefaultPackageDirectory(RuntimeEnvironment.OperatingSystemPlatform, environment); + private static string[] GetDefaultProbeDirectories(IEnvironment environment) => + GetDefaultProbeDirectories(RuntimeEnvironment.OperatingSystemPlatform, environment); - internal static string GetDefaultPackageDirectory(Platform osPlatform, IEnvironment environment) + internal static string[] GetDefaultProbeDirectories(Platform osPlatform, IEnvironment environment) { - var packageDirectory = environment.GetEnvironmentVariable("NUGET_PACKAGES"); +#if !NETSTANDARD1_3 +#if NETSTANDARD1_6 + var probeDirectories = AppContext.GetData("PROBING_DIRECTORIES"); +#else + var probeDirectories = AppDomain.CurrentDomain.GetData("PROBING_DIRECTORIES"); +#endif - if (!string.IsNullOrEmpty(packageDirectory)) - { - return packageDirectory; - } + var listOfDirectories = probeDirectories as string; + + if (!string.IsNullOrEmpty(listOfDirectories)) + { + return listOfDirectories.Split(new char [] { Path.PathSeparator }, StringSplitOptions.RemoveEmptyEntries ); + } +#endif + + var packageDirectory = environment.GetEnvironmentVariable("NUGET_PACKAGES"); + + if (!string.IsNullOrEmpty(packageDirectory)) + { + return new string[] { packageDirectory }; + } + + string basePath; + if (osPlatform == Platform.Windows) + { + basePath = environment.GetEnvironmentVariable("USERPROFILE"); + } + else + { + basePath = environment.GetEnvironmentVariable("HOME"); + } + + if (string.IsNullOrEmpty(basePath)) + { + return new string[] { string.Empty }; + } + + return new string[] { Path.Combine(basePath, ".nuget", "packages") }; - string basePath; - if (osPlatform == Platform.Windows) - { - basePath = environment.GetEnvironmentVariable("USERPROFILE"); - } - else - { - basePath = environment.GetEnvironmentVariable("HOME"); - } - if (string.IsNullOrEmpty(basePath)) - { - return null; - } - return Path.Combine(basePath, ".nuget", "packages"); } public bool TryResolveAssemblyPaths(CompilationLibrary library, List assemblies) { - if (string.IsNullOrEmpty(_nugetPackageDirectory) || + if (_nugetPackageDirectories == null || _nugetPackageDirectories.Length == 0 || !string.Equals(library.Type, "package", StringComparison.OrdinalIgnoreCase)) { return false; } - string packagePath; - - if (ResolverUtils.TryResolvePackagePath(_fileSystem, library, _nugetPackageDirectory, out packagePath)) + foreach (var directory in _nugetPackageDirectories) { - assemblies.AddRange(ResolverUtils.ResolveFromPackagePath(_fileSystem, library, packagePath)); - return true; + string packagePath; + + if (ResolverUtils.TryResolvePackagePath(_fileSystem, library, directory, out packagePath)) + { + assemblies.AddRange(ResolverUtils.ResolveFromPackagePath(_fileSystem, library, packagePath)); + return true; + } } return false; } } -} \ No newline at end of file +} diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs b/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs index 7ea0f725..6d15234e 100644 --- a/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs +++ b/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs @@ -24,8 +24,8 @@ namespace Microsoft.Extensions.DependencyModel.Tests .AddVariable("NUGET_PACKAGES", PackagesPath) .Build(); - var result = PackageCompilationAssemblyResolver.GetDefaultPackageDirectory(Platform.Unknown, environment); - result.Should().Be(PackagesPath); + var result = PackageCompilationAssemblyResolver.GetDefaultProbeDirectories(Platform.Unknown, environment); + result.Should().Contain(PackagesPath); } @@ -36,8 +36,8 @@ namespace Microsoft.Extensions.DependencyModel.Tests .AddVariable("USERPROFILE", "User Profile") .Build(); - var result = PackageCompilationAssemblyResolver.GetDefaultPackageDirectory(Platform.Windows, environment); - result.Should().Be(Path.Combine("User Profile", ".nuget", "packages")); + var result = PackageCompilationAssemblyResolver.GetDefaultProbeDirectories(Platform.Windows, environment); + result.Should().Contain(Path.Combine("User Profile", ".nuget", "packages")); } [Fact] @@ -47,8 +47,8 @@ namespace Microsoft.Extensions.DependencyModel.Tests .AddVariable("HOME", "User Home") .Build(); - var result = PackageCompilationAssemblyResolver.GetDefaultPackageDirectory(Platform.Linux, environment); - result.Should().Be(Path.Combine("User Home", ".nuget", "packages")); + var result = PackageCompilationAssemblyResolver.GetDefaultProbeDirectories(Platform.Linux, environment); + result.Should().Contain(Path.Combine("User Home", ".nuget", "packages")); } [Fact] @@ -60,7 +60,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests .Build(); var library = F.Create(assemblies: F.TwoAssemblies); - var resolver = new PackageCompilationAssemblyResolver(fileSystem, PackagesPath); + var resolver = new PackageCompilationAssemblyResolver(fileSystem, new string[] { PackagesPath }); var assemblies = new List(); var result = resolver.TryResolveAssemblyPaths(library, assemblies); @@ -80,7 +80,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests .Build(); var library = F.Create(assemblies: F.TwoAssemblies); - var resolver = new PackageCompilationAssemblyResolver(fileSystem, PackagesPath); + var resolver = new PackageCompilationAssemblyResolver(fileSystem, new string[] { PackagesPath }); var assemblies = new List(); var exception = Assert.Throws(() => resolver.TryResolveAssemblyPaths(library, assemblies)); From ec828449a99a30edfa8ff8a90d9b9e58cea98da6 Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Fri, 14 Apr 2017 19:37:46 -0700 Subject: [PATCH 174/625] Build Native Debian installers consuming Portable Linux binaries (#2027) * Enable building Debian Installers consuming Portable Linux binaries * 1. Update Portable Linux Build definition to include steps for building Linux Installers for Ubuntu 14.04,16.04,16.10 and Debian 8 2. Remove above listed distros and versions from Core-Setup-Linux build definition that builds binaries and installers natively * Incorporated review feedbacks. --- .../dotnet-host-build/PackageTargets.cs | 31 ++- .../dotnet-host-build/PrepareTargets.cs | 2 + .../dotnet-host-build/PublishTargets.cs | 17 ++ .../Core-Setup-PortableLinux-x64.json | 212 +++++++++++++++++- buildpipeline/pipeline.json | 58 ----- scripts/dockerbuild.sh | 84 +++++++ scripts/dockerrun.sh | 40 +--- 7 files changed, 338 insertions(+), 106 deletions(-) create mode 100755 scripts/dockerbuild.sh diff --git a/build_projects/dotnet-host-build/PackageTargets.cs b/build_projects/dotnet-host-build/PackageTargets.cs index 645c50df..f276ddb5 100644 --- a/build_projects/dotnet-host-build/PackageTargets.cs +++ b/build_projects/dotnet-host-build/PackageTargets.cs @@ -68,9 +68,11 @@ namespace Microsoft.DotNet.Host.Build Directory.CreateDirectory(sharedHostRoot); - foreach (var file in Directory.GetFiles(Dirs.SharedFrameworkPublish, "*", SearchOption.TopDirectoryOnly)) + string sharedFrameworkPublishPath = GetSharedFrameworkPublishPath(c); + + foreach (var file in Directory.GetFiles(sharedFrameworkPublishPath, "*", SearchOption.TopDirectoryOnly)) { - var destFile = file.Replace(Dirs.SharedFrameworkPublish, sharedHostRoot); + var destFile = file.Replace(sharedFrameworkPublishPath, sharedHostRoot); File.Copy(file, destFile, true); c.Warn(destFile); } @@ -99,7 +101,7 @@ namespace Microsoft.DotNet.Host.Build Directory.CreateDirectory(hostFxrRoot); - string srcHostDir = Path.Combine(Dirs.SharedFrameworkPublish, "host"); + string srcHostDir = Path.Combine(GetSharedFrameworkPublishPath(c), "host"); string destHostDir = Path.Combine(hostFxrRoot, "host"); FS.CopyRecursive(srcHostDir, destHostDir); @@ -119,7 +121,8 @@ namespace Microsoft.DotNet.Host.Build } Directory.CreateDirectory(sharedFxRoot); - Utils.CopyDirectoryRecursively(Path.Combine(Dirs.SharedFrameworkPublish, "shared"), sharedFxRoot, true); + + Utils.CopyDirectoryRecursively(Path.Combine(GetSharedFrameworkPublishPath(c), "shared"), sharedFxRoot, true); FixPermissions(sharedFxRoot); c.BuildContext["SharedFrameworkPublishRoot"] = sharedFxRoot; @@ -266,5 +269,25 @@ namespace Microsoft.DotNet.Host.Build FS.FixModeFlags(directory); } } + + private static string GetSharedFrameworkPublishPath(BuildTargetContext c) + { + string sharedFrameworkPublishPath = string.Empty; + + string preBuiltPortableStagingPath=c.BuildContext.Get("PortableBuildStagingLocation"); + + // If we are not generating distro specific installers for portable build, then we won't have access to staging location and thus, will use default binary location where SharedFX was published + if(preBuiltPortableStagingPath == null) + { + sharedFrameworkPublishPath = Dirs.SharedFrameworkPublish; + } + else + { + Console.WriteLine($"Installers will package binaries from path set by PORTABLE_BUILD_STAGING_LOCATION environment variable :{preBuiltPortableStagingPath}"); + sharedFrameworkPublishPath = preBuiltPortableStagingPath; + } + + return sharedFrameworkPublishPath; + } } } diff --git a/build_projects/dotnet-host-build/PrepareTargets.cs b/build_projects/dotnet-host-build/PrepareTargets.cs index 344fce5b..8c6f4cd4 100644 --- a/build_projects/dotnet-host-build/PrepareTargets.cs +++ b/build_projects/dotnet-host-build/PrepareTargets.cs @@ -127,6 +127,7 @@ namespace Microsoft.DotNet.Host.Build Environment.SetEnvironmentVariable("TARGETRID", targetRID); } + string portableBuildStagingLocation = Environment.GetEnvironmentVariable("PORTABLE_BUILD_STAGING_LOCATION")?.Trim(); c.BuildContext["TargetRID"] = targetRID; @@ -135,6 +136,7 @@ namespace Microsoft.DotNet.Host.Build c.BuildContext["ArtifactsTargetRID"] = realTargetRID; c.BuildContext["LinkPortable"] = linkPortable; c.BuildContext["Platform"] = platformEnv; + c.BuildContext["PortableBuildStagingLocation"] = portableBuildStagingLocation; return c.Success(); } diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index 5e2d84c7..38d62be5 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -58,6 +58,16 @@ namespace Microsoft.DotNet.Host.Build return c.Success(); } + [Target(nameof(PrepareTargets.Init), + nameof(PublishTargets.InitPublish), + nameof(PublishTargets.PublishInstallerArtifacts), + nameof(PublishTargets.FinalizeBuild))] + [Environment("PUBLISH_TO_AZURE_BLOB", "1", "true")] // This is set by CI systems + public static BuildTargetResult PublishInstallers(BuildTargetContext c) + { + return c.Success(); + } + [Target] [BuildPlatforms(BuildPlatform.Ubuntu, "14.04")] [BuildArchitectures(BuildArchitecture.x64)] @@ -287,6 +297,13 @@ namespace Microsoft.DotNet.Host.Build nameof(PublishTargets.PublishSharedFrameworkVersionBadge))] public static BuildTargetResult PublishArtifacts(BuildTargetContext c) => c.Success(); + [Target( + nameof(PublishTargets.PublishInstallerFilesToAzure), + nameof(PublishTargets.PublishDotnetDebToolPackage), + nameof(PublishTargets.PublishDebFilesToDebianRepo), + nameof(PublishTargets.PublishSharedFrameworkVersionBadge))] + public static BuildTargetResult PublishInstallerArtifacts(BuildTargetContext c) => c.Success(); + [Target( nameof(PublishTargets.PublishSharedHostInstallerFileToAzure), nameof(PublishTargets.PublishHostFxrInstallerFileToAzure), diff --git a/buildpipeline/Core-Setup-PortableLinux-x64.json b/buildpipeline/Core-Setup-PortableLinux-x64.json index 5626f166..c9bc4d0e 100644 --- a/buildpipeline/Core-Setup-PortableLinux-x64.json +++ b/buildpipeline/Core-Setup-PortableLinux-x64.json @@ -95,6 +95,178 @@ "failOnStandardError": "false" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Copy built Portable binaries to staging directory", + "timeoutInMinutes": 0, + "task": { + "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "SourceFolder": "$(Build.SourcesDirectory)/artifacts/linux-x64/intermediate/sharedFrameworkPublish", + "Contents": "**", + "TargetFolder": "$(Build.StagingDirectory)/sharedFrameworkPublish", + "CleanTargetFolder": "false", + "OverWrite": "false", + "flattenFolders": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Ubuntu.14.04 docker image", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerbuild.sh", + "args": "-d $(Build.SourcesDirectory)/scripts/docker/ubuntu.14.04 -t ubuntu.14.04-coresetup", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Debian Installer in Ubuntu.14.04 docker container", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerrun-as-current-user.sh", + "args": "--rm $(DockerBuildEnvironmentVariables) -e CLI_NUGET_API_KEY -e CLI_NUGET_FEED_URL -e CLI_NUGET_SYMBOLS_FEED_URL -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code ubuntu.14.04-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Ubuntu.16.04 docker image", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerbuild.sh", + "args": "-d $(Build.SourcesDirectory)/scripts/docker/ubuntu.16.04 -t ubuntu.16.04-coresetup", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Debian Installer in Ubuntu.16.04 docker container", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerrun-as-current-user.sh", + "args": "--rm $(DockerBuildEnvironmentVariables) -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code ubuntu.16.04-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Ubuntu.16.10 docker image", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerbuild.sh", + "args": "-d $(Build.SourcesDirectory)/scripts/docker/ubuntu.16.10 -t ubuntu.16.10-coresetup", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Debian Installer in Ubuntu 16.10 docker container", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerrun-as-current-user.sh", + "args": "--rm $(DockerBuildEnvironmentVariables) -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code ubuntu.16.10-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Debian.8 docker image ", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerbuild.sh", + "args": "-d $(Build.SourcesDirectory)/scripts/docker/debian.8 -t debian.8-coresetup", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Debian Installer in Debian.8 docker container", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerrun-as-current-user.sh", + "args": "--rm $(DockerBuildEnvironmentVariables) -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code debian.8-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, { "enabled": true, "continueOnError": true, @@ -241,6 +413,33 @@ }, "NUGET_SYMBOLS_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + }, + "REPO_ID": { + "value": "PassedViaPipeBuild" + }, + "REPO_USER": { + "value": "dotnet" + }, + "REPO_PASS": { + "value": "PassedViaPipeBuild" + }, + "REPO_SERVER": { + "value": "azure-apt-cat.cloudapp.net" + }, + "DockerBuildEnvironmentVariables": { + "value": "-e PORTABLE_BUILD_STAGING_LOCATION=/opt/sharedFrameworkPublish -e CONNECTION_STRING -e PUBLISH_TO_AZURE_BLOB -e REPO_ID -e REPO_USER -e REPO_PASS -e REPO_SERVER -e NUGET_FEED_URL -e NUGET_API_KEY -e NUGET_SYMBOLS_FEED_URL -e GITHUB_PASSWORD" + }, + "InstallerOnlyBuildArguments": { + "value": "Init,Prepare,InitPackage,GenerateVersionBadge,GenerateInstaller,TestInstaller,PublishInstallers" + }, + "CLI_NUGET_API_KEY": { + "value": "PassedViaPipeBuild" + }, + "CLI_NUGET_FEED_URL": { + "value": "https://dotnet.myget.org/F/cli-deps/api/v2/package" + }, + "CLI_NUGET_SYMBOLS_FEED_URL": { + "value": "https://dotnet.myget.org/F/cli-deps/symbols/api/v2/package" } }, "demands": [ @@ -265,6 +464,7 @@ "buildNumberFormat": "$(Date:yyyMMdd)$(Rev:.r)", "jobAuthorizationScope": "projectCollection", "jobTimeoutInMinutes": 90, + "jobCancelTimeoutInMinutes": 5, "badgeEnabled": true, "repository": { "properties": { @@ -288,23 +488,23 @@ }, "quality": "definition", "queue": { + "id": 36, + "name": "DotNet-Build", "pool": { "id": 39, "name": "DotNet-Build" - }, - "id": 36, - "name": "DotNet-Build" + } }, - "path": "\\", - "type": "build", "id": 4573, "name": "Core-Setup-PortableLinux-x64", + "path": "\\", + "type": "build", "project": { "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", "name": "DevDiv", "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097620 + "revision": 418097642 } } \ No newline at end of file diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 8aee1f69..e047910a 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -26,20 +26,6 @@ "Platform": "x64" } }, - { - "Name": "Core-Setup-Linux", - "Parameters": { - "PB_DockerOS": "debian.8", - "REPO_ID": "579f8fb0fedca9aeeb399132", - "REPO_USER": "dotnet", - "REPO_SERVER": "azure-apt-cat.cloudapp.net" - }, - "ReportingParameters": { - "OperatingSystem": "Debian 8.2", - "Type": "build/product/", - "Platform": "x64" - } - }, { "Name": "Core-Setup-Linux", "Parameters": { @@ -62,50 +48,6 @@ "Platform": "x64" } }, - { - "Name": "Core-Setup-Linux", - "Parameters": { - "PB_DockerOS": "ubuntu.14.04", - "REPO_ID": "562fbfe0b2d7d0e0a43780c4", - "REPO_USER": "dotnet", - "REPO_SERVER": "azure-apt-cat.cloudapp.net", - "CLI_NUGET_FEED_URL": "https://dotnet.myget.org/F/cli-deps/api/v2/package", - "CLI_NUGET_SYMBOLS_FEED_URL": "https://dotnet.myget.org/F/cli-deps/symbols/api/v2/package" - }, - "ReportingParameters": { - "OperatingSystem": "Ubuntu 14.04", - "Type": "build/product/", - "Platform": "x64" - } - }, - { - "Name": "Core-Setup-Linux", - "Parameters": { - "PB_DockerOS": "ubuntu.16.04", - "REPO_ID": "575f40f3797ef7280505232f", - "REPO_USER": "dotnet", - "REPO_SERVER": "azure-apt-cat.cloudapp.net" - }, - "ReportingParameters": { - "OperatingSystem": "Ubuntu 16.04", - "Type": "build/product/", - "Platform": "x64" - } - }, - { - "Name": "Core-Setup-Linux", - "Parameters": { - "PB_DockerOS": "ubuntu.16.10", - "REPO_ID": "575f40f3797ef7280505232f", - "REPO_USER": "dotnet", - "REPO_SERVER": "azure-apt-cat.cloudapp.net" - }, - "ReportingParameters": { - "OperatingSystem": "Ubuntu 16.10", - "Type": "build/product/", - "Platform": "x64" - } - }, { "Name": "Core-Setup-OSX-x64", "ReportingParameters": { diff --git a/scripts/dockerbuild.sh b/scripts/dockerbuild.sh new file mode 100755 index 00000000..6f15ca8e --- /dev/null +++ b/scripts/dockerbuild.sh @@ -0,0 +1,84 @@ +#!/usr/bin/env bash +# +# Copyright (c) .NET Foundation and contributors. All rights reserved. +# Licensed under the MIT license. See LICENSE file in the project root for full license information. +# + +set -e + +SOURCE="${BASH_SOURCE[0]}" +while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink + DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" + SOURCE="$(readlink "$SOURCE")" + [[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located +done +DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" + +cd "$DIR/.." + +while [[ $# > 0 ]]; do + key=$1 + + case $key in + -t|--tag) + DOCKER_TAG=$2 + shift + ;; + -d|--dockerfile) + DOCKERFILE=$2 + shift + ;; + -h|-?|--help) + echo "Usage: $0 [-d|--dockerfile ] [-t|--tag ] " + echo "" + echo "Options:" + echo " The path to the folder that contains a Dockerfile to use to create the build container" + echo " The name of docker image tag" + exit 0 + ;; + *) + break # the first non-switch we get ends parsing + ;; + esac + + shift +done + +# Executes a command and retries if it fails. +# NOTE: This function is the exact copy from init-docker.sh. +# Reason for not invoking init.docker.sh directly is since that script +# also performs cleanup, which we do not want in this case. +execute() { + local count=0 + local retries=5 + local waitFactor=6 + until "$@"; do + local exit=$? + count=$(( $count + 1 )) + if [ $count -lt $retries ]; then + local wait=$(( waitFactor ** (( count - 1 )) )) + echo "Retry $count/$retries exited $exit, retrying in $wait seconds..." + sleep $wait + else + say_err "Retry $count/$retries exited $exit, no more retries left." + return $exit + fi + done + + return 0 +} + +# Build the docker container (will be fast if it is already built) +echo "Building Docker Container using Dockerfile: $DOCKERFILE" + +# Get the name of Docker image. +image=$(grep -i "^FROM " "$DOCKERFILE/Dockerfile" | awk '{ print $2 }') + +# Explicitly pull the base image with retry logic. +# This eliminates intermittent failures during docker build caused by failing to retrieve the base image. +if [ ! -z "$image" ]; then + echo "Pulling Docker image $image" + execute docker pull $image +fi + +docker build --build-arg USER_ID=$(id -u) -t $DOCKER_TAG $DOCKERFILE diff --git a/scripts/dockerrun.sh b/scripts/dockerrun.sh index 80f3d089..4d5a3d85 100755 --- a/scripts/dockerrun.sh +++ b/scripts/dockerrun.sh @@ -87,44 +87,8 @@ fi # VSO [ ! -z "$BUILD_BUILDID" ] && DOTNET_BUILD_CONTAINER_NAME="${BUILD_BUILDID}-${BUILD_BUILDNUMBER}" -# Executes a command and retries if it fails. -# NOTE: This function is the exact copy from init-docker.sh. -# Reason for not invoking init.docker.sh directly is since that script -# also performs cleanup, which we do not want in this case. -execute() { - local count=0 - local retries=5 - local waitFactor=6 - until "$@"; do - local exit=$? - count=$(( $count + 1 )) - if [ $count -lt $retries ]; then - local wait=$(( waitFactor ** (( count - 1 )) )) - echo "Retry $count/$retries exited $exit, retrying in $wait seconds..." - sleep $wait - else - say_err "Retry $count/$retries exited $exit, no more retries left." - return $exit - fi - done - - return 0 -} - -# Build the docker container (will be fast if it is already built) -echo "Building Docker Container using Dockerfile: $DOCKERFILE" - -# Get the name of Docker image. -image=$(grep -i "^FROM " "$DOCKERFILE/Dockerfile" | awk '{ print $2 }') - -# Explicitly pull the base image with retry logic. -# This eliminates intermittent failures during docker build caused by failing to retrieve the base image. -if [ ! -z "$image" ]; then - echo "Pulling Docker image $image" - execute docker pull $image -fi - -docker build --build-arg USER_ID=$(id -u) -t $DOTNET_BUILD_CONTAINER_TAG $DOCKERFILE +#Build the docker image +"$DIR/dockerbuild.sh" -t $DOTNET_BUILD_CONTAINER_TAG -d $DOCKERFILE # Run the build in the container echo "Launching build in Docker Container" From e9456614cfe65b6dc7c5326a597337159142c84c Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Mon, 17 Apr 2017 07:06:06 -0700 Subject: [PATCH 175/625] Revert "Build Native Debian installers consuming Portable Linux binaries (#2027)" (#2078) This reverts commit ec828449a99a30edfa8ff8a90d9b9e58cea98da6. Reverting the change as it has caused multiple build breaks, --- .../dotnet-host-build/PackageTargets.cs | 31 +-- .../dotnet-host-build/PrepareTargets.cs | 2 - .../dotnet-host-build/PublishTargets.cs | 17 -- .../Core-Setup-PortableLinux-x64.json | 212 +----------------- buildpipeline/pipeline.json | 58 +++++ scripts/dockerbuild.sh | 84 ------- scripts/dockerrun.sh | 40 +++- 7 files changed, 106 insertions(+), 338 deletions(-) delete mode 100755 scripts/dockerbuild.sh diff --git a/build_projects/dotnet-host-build/PackageTargets.cs b/build_projects/dotnet-host-build/PackageTargets.cs index f276ddb5..645c50df 100644 --- a/build_projects/dotnet-host-build/PackageTargets.cs +++ b/build_projects/dotnet-host-build/PackageTargets.cs @@ -68,11 +68,9 @@ namespace Microsoft.DotNet.Host.Build Directory.CreateDirectory(sharedHostRoot); - string sharedFrameworkPublishPath = GetSharedFrameworkPublishPath(c); - - foreach (var file in Directory.GetFiles(sharedFrameworkPublishPath, "*", SearchOption.TopDirectoryOnly)) + foreach (var file in Directory.GetFiles(Dirs.SharedFrameworkPublish, "*", SearchOption.TopDirectoryOnly)) { - var destFile = file.Replace(sharedFrameworkPublishPath, sharedHostRoot); + var destFile = file.Replace(Dirs.SharedFrameworkPublish, sharedHostRoot); File.Copy(file, destFile, true); c.Warn(destFile); } @@ -101,7 +99,7 @@ namespace Microsoft.DotNet.Host.Build Directory.CreateDirectory(hostFxrRoot); - string srcHostDir = Path.Combine(GetSharedFrameworkPublishPath(c), "host"); + string srcHostDir = Path.Combine(Dirs.SharedFrameworkPublish, "host"); string destHostDir = Path.Combine(hostFxrRoot, "host"); FS.CopyRecursive(srcHostDir, destHostDir); @@ -121,8 +119,7 @@ namespace Microsoft.DotNet.Host.Build } Directory.CreateDirectory(sharedFxRoot); - - Utils.CopyDirectoryRecursively(Path.Combine(GetSharedFrameworkPublishPath(c), "shared"), sharedFxRoot, true); + Utils.CopyDirectoryRecursively(Path.Combine(Dirs.SharedFrameworkPublish, "shared"), sharedFxRoot, true); FixPermissions(sharedFxRoot); c.BuildContext["SharedFrameworkPublishRoot"] = sharedFxRoot; @@ -269,25 +266,5 @@ namespace Microsoft.DotNet.Host.Build FS.FixModeFlags(directory); } } - - private static string GetSharedFrameworkPublishPath(BuildTargetContext c) - { - string sharedFrameworkPublishPath = string.Empty; - - string preBuiltPortableStagingPath=c.BuildContext.Get("PortableBuildStagingLocation"); - - // If we are not generating distro specific installers for portable build, then we won't have access to staging location and thus, will use default binary location where SharedFX was published - if(preBuiltPortableStagingPath == null) - { - sharedFrameworkPublishPath = Dirs.SharedFrameworkPublish; - } - else - { - Console.WriteLine($"Installers will package binaries from path set by PORTABLE_BUILD_STAGING_LOCATION environment variable :{preBuiltPortableStagingPath}"); - sharedFrameworkPublishPath = preBuiltPortableStagingPath; - } - - return sharedFrameworkPublishPath; - } } } diff --git a/build_projects/dotnet-host-build/PrepareTargets.cs b/build_projects/dotnet-host-build/PrepareTargets.cs index 8c6f4cd4..344fce5b 100644 --- a/build_projects/dotnet-host-build/PrepareTargets.cs +++ b/build_projects/dotnet-host-build/PrepareTargets.cs @@ -127,7 +127,6 @@ namespace Microsoft.DotNet.Host.Build Environment.SetEnvironmentVariable("TARGETRID", targetRID); } - string portableBuildStagingLocation = Environment.GetEnvironmentVariable("PORTABLE_BUILD_STAGING_LOCATION")?.Trim(); c.BuildContext["TargetRID"] = targetRID; @@ -136,7 +135,6 @@ namespace Microsoft.DotNet.Host.Build c.BuildContext["ArtifactsTargetRID"] = realTargetRID; c.BuildContext["LinkPortable"] = linkPortable; c.BuildContext["Platform"] = platformEnv; - c.BuildContext["PortableBuildStagingLocation"] = portableBuildStagingLocation; return c.Success(); } diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index 38d62be5..5e2d84c7 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -58,16 +58,6 @@ namespace Microsoft.DotNet.Host.Build return c.Success(); } - [Target(nameof(PrepareTargets.Init), - nameof(PublishTargets.InitPublish), - nameof(PublishTargets.PublishInstallerArtifacts), - nameof(PublishTargets.FinalizeBuild))] - [Environment("PUBLISH_TO_AZURE_BLOB", "1", "true")] // This is set by CI systems - public static BuildTargetResult PublishInstallers(BuildTargetContext c) - { - return c.Success(); - } - [Target] [BuildPlatforms(BuildPlatform.Ubuntu, "14.04")] [BuildArchitectures(BuildArchitecture.x64)] @@ -297,13 +287,6 @@ namespace Microsoft.DotNet.Host.Build nameof(PublishTargets.PublishSharedFrameworkVersionBadge))] public static BuildTargetResult PublishArtifacts(BuildTargetContext c) => c.Success(); - [Target( - nameof(PublishTargets.PublishInstallerFilesToAzure), - nameof(PublishTargets.PublishDotnetDebToolPackage), - nameof(PublishTargets.PublishDebFilesToDebianRepo), - nameof(PublishTargets.PublishSharedFrameworkVersionBadge))] - public static BuildTargetResult PublishInstallerArtifacts(BuildTargetContext c) => c.Success(); - [Target( nameof(PublishTargets.PublishSharedHostInstallerFileToAzure), nameof(PublishTargets.PublishHostFxrInstallerFileToAzure), diff --git a/buildpipeline/Core-Setup-PortableLinux-x64.json b/buildpipeline/Core-Setup-PortableLinux-x64.json index c9bc4d0e..5626f166 100644 --- a/buildpipeline/Core-Setup-PortableLinux-x64.json +++ b/buildpipeline/Core-Setup-PortableLinux-x64.json @@ -95,178 +95,6 @@ "failOnStandardError": "false" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Copy built Portable binaries to staging directory", - "timeoutInMinutes": 0, - "task": { - "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "SourceFolder": "$(Build.SourcesDirectory)/artifacts/linux-x64/intermediate/sharedFrameworkPublish", - "Contents": "**", - "TargetFolder": "$(Build.StagingDirectory)/sharedFrameworkPublish", - "CleanTargetFolder": "false", - "OverWrite": "false", - "flattenFolders": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Ubuntu.14.04 docker image", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerbuild.sh", - "args": "-d $(Build.SourcesDirectory)/scripts/docker/ubuntu.14.04 -t ubuntu.14.04-coresetup", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Debian Installer in Ubuntu.14.04 docker container", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerrun-as-current-user.sh", - "args": "--rm $(DockerBuildEnvironmentVariables) -e CLI_NUGET_API_KEY -e CLI_NUGET_FEED_URL -e CLI_NUGET_SYMBOLS_FEED_URL -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code ubuntu.14.04-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Ubuntu.16.04 docker image", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerbuild.sh", - "args": "-d $(Build.SourcesDirectory)/scripts/docker/ubuntu.16.04 -t ubuntu.16.04-coresetup", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Debian Installer in Ubuntu.16.04 docker container", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerrun-as-current-user.sh", - "args": "--rm $(DockerBuildEnvironmentVariables) -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code ubuntu.16.04-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Ubuntu.16.10 docker image", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerbuild.sh", - "args": "-d $(Build.SourcesDirectory)/scripts/docker/ubuntu.16.10 -t ubuntu.16.10-coresetup", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Debian Installer in Ubuntu 16.10 docker container", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerrun-as-current-user.sh", - "args": "--rm $(DockerBuildEnvironmentVariables) -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code ubuntu.16.10-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Debian.8 docker image ", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerbuild.sh", - "args": "-d $(Build.SourcesDirectory)/scripts/docker/debian.8 -t debian.8-coresetup", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Debian Installer in Debian.8 docker container", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerrun-as-current-user.sh", - "args": "--rm $(DockerBuildEnvironmentVariables) -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code debian.8-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": true, @@ -413,33 +241,6 @@ }, "NUGET_SYMBOLS_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" - }, - "REPO_ID": { - "value": "PassedViaPipeBuild" - }, - "REPO_USER": { - "value": "dotnet" - }, - "REPO_PASS": { - "value": "PassedViaPipeBuild" - }, - "REPO_SERVER": { - "value": "azure-apt-cat.cloudapp.net" - }, - "DockerBuildEnvironmentVariables": { - "value": "-e PORTABLE_BUILD_STAGING_LOCATION=/opt/sharedFrameworkPublish -e CONNECTION_STRING -e PUBLISH_TO_AZURE_BLOB -e REPO_ID -e REPO_USER -e REPO_PASS -e REPO_SERVER -e NUGET_FEED_URL -e NUGET_API_KEY -e NUGET_SYMBOLS_FEED_URL -e GITHUB_PASSWORD" - }, - "InstallerOnlyBuildArguments": { - "value": "Init,Prepare,InitPackage,GenerateVersionBadge,GenerateInstaller,TestInstaller,PublishInstallers" - }, - "CLI_NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, - "CLI_NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/cli-deps/api/v2/package" - }, - "CLI_NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/cli-deps/symbols/api/v2/package" } }, "demands": [ @@ -464,7 +265,6 @@ "buildNumberFormat": "$(Date:yyyMMdd)$(Rev:.r)", "jobAuthorizationScope": "projectCollection", "jobTimeoutInMinutes": 90, - "jobCancelTimeoutInMinutes": 5, "badgeEnabled": true, "repository": { "properties": { @@ -488,23 +288,23 @@ }, "quality": "definition", "queue": { - "id": 36, - "name": "DotNet-Build", "pool": { "id": 39, "name": "DotNet-Build" - } + }, + "id": 36, + "name": "DotNet-Build" }, - "id": 4573, - "name": "Core-Setup-PortableLinux-x64", "path": "\\", "type": "build", + "id": 4573, + "name": "Core-Setup-PortableLinux-x64", "project": { "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", "name": "DevDiv", "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097642 + "revision": 418097620 } } \ No newline at end of file diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index e047910a..8aee1f69 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -26,6 +26,20 @@ "Platform": "x64" } }, + { + "Name": "Core-Setup-Linux", + "Parameters": { + "PB_DockerOS": "debian.8", + "REPO_ID": "579f8fb0fedca9aeeb399132", + "REPO_USER": "dotnet", + "REPO_SERVER": "azure-apt-cat.cloudapp.net" + }, + "ReportingParameters": { + "OperatingSystem": "Debian 8.2", + "Type": "build/product/", + "Platform": "x64" + } + }, { "Name": "Core-Setup-Linux", "Parameters": { @@ -48,6 +62,50 @@ "Platform": "x64" } }, + { + "Name": "Core-Setup-Linux", + "Parameters": { + "PB_DockerOS": "ubuntu.14.04", + "REPO_ID": "562fbfe0b2d7d0e0a43780c4", + "REPO_USER": "dotnet", + "REPO_SERVER": "azure-apt-cat.cloudapp.net", + "CLI_NUGET_FEED_URL": "https://dotnet.myget.org/F/cli-deps/api/v2/package", + "CLI_NUGET_SYMBOLS_FEED_URL": "https://dotnet.myget.org/F/cli-deps/symbols/api/v2/package" + }, + "ReportingParameters": { + "OperatingSystem": "Ubuntu 14.04", + "Type": "build/product/", + "Platform": "x64" + } + }, + { + "Name": "Core-Setup-Linux", + "Parameters": { + "PB_DockerOS": "ubuntu.16.04", + "REPO_ID": "575f40f3797ef7280505232f", + "REPO_USER": "dotnet", + "REPO_SERVER": "azure-apt-cat.cloudapp.net" + }, + "ReportingParameters": { + "OperatingSystem": "Ubuntu 16.04", + "Type": "build/product/", + "Platform": "x64" + } + }, + { + "Name": "Core-Setup-Linux", + "Parameters": { + "PB_DockerOS": "ubuntu.16.10", + "REPO_ID": "575f40f3797ef7280505232f", + "REPO_USER": "dotnet", + "REPO_SERVER": "azure-apt-cat.cloudapp.net" + }, + "ReportingParameters": { + "OperatingSystem": "Ubuntu 16.10", + "Type": "build/product/", + "Platform": "x64" + } + }, { "Name": "Core-Setup-OSX-x64", "ReportingParameters": { diff --git a/scripts/dockerbuild.sh b/scripts/dockerbuild.sh deleted file mode 100755 index 6f15ca8e..00000000 --- a/scripts/dockerbuild.sh +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/env bash -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -set -e - -SOURCE="${BASH_SOURCE[0]}" -while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink - DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" - SOURCE="$(readlink "$SOURCE")" - [[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located -done -DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" - -cd "$DIR/.." - -while [[ $# > 0 ]]; do - key=$1 - - case $key in - -t|--tag) - DOCKER_TAG=$2 - shift - ;; - -d|--dockerfile) - DOCKERFILE=$2 - shift - ;; - -h|-?|--help) - echo "Usage: $0 [-d|--dockerfile ] [-t|--tag ] " - echo "" - echo "Options:" - echo " The path to the folder that contains a Dockerfile to use to create the build container" - echo " The name of docker image tag" - exit 0 - ;; - *) - break # the first non-switch we get ends parsing - ;; - esac - - shift -done - -# Executes a command and retries if it fails. -# NOTE: This function is the exact copy from init-docker.sh. -# Reason for not invoking init.docker.sh directly is since that script -# also performs cleanup, which we do not want in this case. -execute() { - local count=0 - local retries=5 - local waitFactor=6 - until "$@"; do - local exit=$? - count=$(( $count + 1 )) - if [ $count -lt $retries ]; then - local wait=$(( waitFactor ** (( count - 1 )) )) - echo "Retry $count/$retries exited $exit, retrying in $wait seconds..." - sleep $wait - else - say_err "Retry $count/$retries exited $exit, no more retries left." - return $exit - fi - done - - return 0 -} - -# Build the docker container (will be fast if it is already built) -echo "Building Docker Container using Dockerfile: $DOCKERFILE" - -# Get the name of Docker image. -image=$(grep -i "^FROM " "$DOCKERFILE/Dockerfile" | awk '{ print $2 }') - -# Explicitly pull the base image with retry logic. -# This eliminates intermittent failures during docker build caused by failing to retrieve the base image. -if [ ! -z "$image" ]; then - echo "Pulling Docker image $image" - execute docker pull $image -fi - -docker build --build-arg USER_ID=$(id -u) -t $DOCKER_TAG $DOCKERFILE diff --git a/scripts/dockerrun.sh b/scripts/dockerrun.sh index 4d5a3d85..80f3d089 100755 --- a/scripts/dockerrun.sh +++ b/scripts/dockerrun.sh @@ -87,8 +87,44 @@ fi # VSO [ ! -z "$BUILD_BUILDID" ] && DOTNET_BUILD_CONTAINER_NAME="${BUILD_BUILDID}-${BUILD_BUILDNUMBER}" -#Build the docker image -"$DIR/dockerbuild.sh" -t $DOTNET_BUILD_CONTAINER_TAG -d $DOCKERFILE +# Executes a command and retries if it fails. +# NOTE: This function is the exact copy from init-docker.sh. +# Reason for not invoking init.docker.sh directly is since that script +# also performs cleanup, which we do not want in this case. +execute() { + local count=0 + local retries=5 + local waitFactor=6 + until "$@"; do + local exit=$? + count=$(( $count + 1 )) + if [ $count -lt $retries ]; then + local wait=$(( waitFactor ** (( count - 1 )) )) + echo "Retry $count/$retries exited $exit, retrying in $wait seconds..." + sleep $wait + else + say_err "Retry $count/$retries exited $exit, no more retries left." + return $exit + fi + done + + return 0 +} + +# Build the docker container (will be fast if it is already built) +echo "Building Docker Container using Dockerfile: $DOCKERFILE" + +# Get the name of Docker image. +image=$(grep -i "^FROM " "$DOCKERFILE/Dockerfile" | awk '{ print $2 }') + +# Explicitly pull the base image with retry logic. +# This eliminates intermittent failures during docker build caused by failing to retrieve the base image. +if [ ! -z "$image" ]; then + echo "Pulling Docker image $image" + execute docker pull $image +fi + +docker build --build-arg USER_ID=$(id -u) -t $DOTNET_BUILD_CONTAINER_TAG $DOCKERFILE # Run the build in the container echo "Launching build in Docker Container" From 13bb7d41d1413eee4b11ab41ae17c8b6f900c6e3 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Mon, 17 Apr 2017 08:41:13 -0700 Subject: [PATCH 176/625] Updating CoreClr, Standard to preview1-25215-03, preview1-25217-01 respectively (#2079) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- .../project.json.template | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index bc5ccca2..a6b22c64 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25214-03"; - public static readonly string JitVersion = "2.0.0-preview1-25214-03"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25215-03"; + public static readonly string JitVersion = "2.0.0-preview1-25215-03"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 0a7e4eab..daa649de 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25214-03", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25214-03", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25215-03", "Microsoft.DiaSymReader.Native": "1.4.1", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25214-03", - "NETStandard.Library": "2.0.0-preview1-25214-01" + "NETStandard.Library": "2.0.0-preview1-25217-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 9df4a3e5..3da9bf4a 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -2,9 +2,9 @@ "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25214-03", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25214-03", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25215-03", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25214-03", - "NETStandard.Library": "2.0.0-preview1-25214-01", + "NETStandard.Library": "2.0.0-preview1-25217-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From 7a97793a4c0d3bdc295501ada4b17b3884273946 Mon Sep 17 00:00:00 2001 From: Jiyoung Giuliana Yun Date: Tue, 18 Apr 2017 00:47:32 +0900 Subject: [PATCH 177/625] Change default clang version to clang3.9 in cross build (#2038) --- cross/build-rootfs.sh | 5 ++++- scripts/arm32_ci_script.sh | 6 +++--- src/corehost/build.sh | 17 ++++++++++------- 3 files changed, 17 insertions(+), 11 deletions(-) diff --git a/cross/build-rootfs.sh b/cross/build-rootfs.sh index d1d79bba..21c1b2be 100755 --- a/cross/build-rootfs.sh +++ b/cross/build-rootfs.sh @@ -5,7 +5,7 @@ usage() echo "Usage: $0 [BuildArch] [LinuxCodeName] [lldbx.y] [--skipunmount]" echo "BuildArch can be: arm(default), armel, arm64, x86" echo "LinuxCodeName - optional, Code name for Linux, can be: trusty(default), vivid, wily, xenial. If BuildArch is armel, LinuxCodeName is jessie(default) or tizen." - echo "lldbx.y - optional, LLDB version, can be: lldb3.6(default), lldb3.8, no-lldb" + echo "lldbx.y - optional, LLDB version, can be: lldb3.6(default), lldb3.8, lldb3.9, no-lldb" echo "--skipunmount - optional, will skip the unmount of rootfs folder." exit 1 } @@ -70,6 +70,9 @@ for i in "$@" ; do lldb3.8) __LLDB_Package="lldb-3.8-dev" ;; + lldb3.9) + __LLDB_Package="lldb-3.9-dev" + ;; no-lldb) unset __LLDB_Package ;; diff --git a/scripts/arm32_ci_script.sh b/scripts/arm32_ci_script.sh index 8e1302a4..ca65a929 100755 --- a/scripts/arm32_ci_script.sh +++ b/scripts/arm32_ci_script.sh @@ -174,11 +174,11 @@ function cross_build_core_setup_with_docker { # TODO: For arm, we are going to embed RootFS inside Docker image. case $__linuxCodeName in trusty) - __dockerImage=" microsoft/dotnet-buildtools-prereqs:ubuntu1404_cross_prereqs_v2" + __dockerImage=" microsoft/dotnet-buildtools-prereqs:ubuntu-14.04-cross-0cd4667-20172211042239" __runtimeOS="ubuntu.14.04" ;; xenial) - __dockerImage=" microsoft/dotnet-buildtools-prereqs:ubuntu1604_cross_prereqs_v2" + __dockerImage=" microsoft/dotnet-buildtools-prereqs:ubuntu-16.04-cross-ef0ac75-20175511035548" __runtimeOS="ubuntu.16.04" ;; *) @@ -189,7 +189,7 @@ function cross_build_core_setup_with_docker { # For armel Tizen, we are going to construct RootFS on the fly. case $__linuxCodeName in tizen) - __dockerImage=" t2wish/dotnetcore:ubuntu1404_cross_prereqs_v2" + __dockerImage=" t2wish/dotnetcore:ubuntu1404_cross_prereqs_v4" __runtimeOS="tizen.4.0.0" ;; *) diff --git a/src/corehost/build.sh b/src/corehost/build.sh index 1295a504..089831bf 100755 --- a/src/corehost/build.sh +++ b/src/corehost/build.sh @@ -178,25 +178,28 @@ if command -v "clang-3.5" > /dev/null 2>&1; then elif command -v "clang-3.6" > /dev/null 2>&1; then export CC="$(command -v clang-3.6)" export CXX="$(command -v clang++-3.6)" +elif command -v "clang-3.9" > /dev/null 2>&1; then + export CC="$(command -v clang-3.9)" + export CXX="$(command -v clang++-3.9)" elif command -v clang > /dev/null 2>&1; then export CC="$(command -v clang)" export CXX="$(command -v clang++)" else echo "Unable to find Clang Compiler" - echo "Install clang-3.5 or clang3.6" + echo "Install clang-3.5 or clang3.6 or clang3.9" exit 1 fi echo "Building Corehost from $DIR to $(pwd)" set -x # turn on trace if [ $__CrossBuild == 1 ]; then - # clang-3.6 is default compiler for cross compilation - if command -v "clang-3.6" > /dev/null 2>&1; then - export CC="$(command -v clang-3.6)" - export CXX="$(command -v clang++-3.6)" + # clang-3.9 is default compiler for cross compilation + if command -v "clang-3.9" > /dev/null 2>&1; then + export CC="$(command -v clang-3.9)" + export CXX="$(command -v clang++-3.9)" else - echo "Unable to find Clang 3.6 Compiler" - echo "Install clang-3.6 for cross compilation" + echo "Unable to find Clang 3.9 Compiler" + echo "Install clang-3.9 for cross compilation" exit 1 fi cmake "$DIR" -G "Unix Makefiles" $__cmake_defines -DCLI_CMAKE_HOST_VER:STRING=$__host_ver -DCLI_CMAKE_APPHOST_VER:STRING=$__apphost_ver -DCLI_CMAKE_HOST_FXR_VER:STRING=$__fxr_ver -DCLI_CMAKE_HOST_POLICY_VER:STRING=$__policy_ver -DCLI_CMAKE_PKG_RID:STRING=$__base_rid -DCLI_CMAKE_COMMIT_HASH:STRING=$__commit_hash -DCMAKE_TOOLCHAIN_FILE=$DIR/../../cross/$__build_arch_lowcase/toolchain.cmake From 19c4c2676e33d3b163f6d0be763a65e0467e6886 Mon Sep 17 00:00:00 2001 From: John Beisner Date: Mon, 17 Apr 2017 09:48:28 -0700 Subject: [PATCH 179/625] Fixing the: 'SdkLookup_Must_Look_For_Available_Versions_Before_Looking_Into_Another_Folder' test to be deterministic. Adding semantical version tests. --- .../GivenThatICareAboutMultilevelSDKLookup.cs | 113 +++++++++++++++++- 1 file changed, 110 insertions(+), 3 deletions(-) diff --git a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index aba92db3..cf7d63e2 100644 --- a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -22,6 +22,8 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup private string _exeSelectedMessage; private string _sdkDir; + private const string _dotnetSdkDllMessageTerminator = "dotnet.dll]"; + public GivenThatICareAboutMultilevelSDKLookup() { // From the artifacts dir, it's possible to find where the sharedFrameworkPublish folder is. We need @@ -191,7 +193,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.0")); + .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.0", _dotnetSdkDllMessageTerminator)); // Add some dummy versions AddAvailableSdkVersions(_cwdSdkBaseDir, "9999.0.0"); @@ -211,7 +213,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.0")); + .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.0", _dotnetSdkDllMessageTerminator)); // Add a prerelease dummy version in the cwd AddAvailableSdkVersions(_cwdSdkBaseDir, "9999.0.0-global-dummy"); @@ -230,12 +232,117 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.0-global-dummy")); + .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.0-global-dummy", _dotnetSdkDllMessageTerminator)); // Remove dummy folders from user dir DeleteAvailableSdkVersions(_userSdkBaseDir, "9999.0.0", "9999.0.0-dummy"); } + [Fact] + public void SdkLookup_Must_Pick_The_Latest_Semantical_Version() + { + var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture + .Copy(); + + var dotnet = fixture.BuiltDotnet; + + // Add a dummy version in the exe dir + AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0"); + + // Specified CLI version: none + // CWD: empty + // User: empty + // Exe: 9999.0.0 + // Expected: 9999.0.0 from exe dir + dotnet.Exec("help") + .WorkingDirectory(_currentWorkingDir) + .EnvironmentVariable("COREHOST_TRACE", "1") + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Pass() + .And + .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.0", _dotnetSdkDllMessageTerminator)); + + // Add a dummy version in the exe dir + AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.1"); + + // Specified CLI version: none + // CWD: empty + // User: empty + // Exe: 9999.0.0, 9999.0.1 + // Expected: 9999.0.1 from exe dir + dotnet.Exec("help") + .WorkingDirectory(_currentWorkingDir) + .EnvironmentVariable("COREHOST_TRACE", "1") + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Pass() + .And + .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.1", _dotnetSdkDllMessageTerminator)); + + // Add a dummy version in the exe dir + AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0-dummy"); + + // Specified CLI version: none + // CWD: empty + // User: empty + // Exe: 9999.0.0, 9999.0.1, 9999.0.0-dummy + // Expected: 9999.0.1 from exe dir + dotnet.Exec("help") + .WorkingDirectory(_currentWorkingDir) + .EnvironmentVariable("COREHOST_TRACE", "1") + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Pass() + .And + .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.1", _dotnetSdkDllMessageTerminator)); + + // Add a dummy version in the exe dir + AddAvailableSdkVersions(_exeSdkBaseDir, "10000.0.0-dummy"); + + // Specified CLI version: none + // CWD: empty + // User: empty + // Exe: 9999.0.0, 9999.0.1, 9999.0.0-dummy, 10000.0.0-dummy + // Expected: 10000.0.0-dummy from exe dir + dotnet.Exec("help") + .WorkingDirectory(_currentWorkingDir) + .EnvironmentVariable("COREHOST_TRACE", "1") + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Pass() + .And + .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "10000.0.0-dummy", _dotnetSdkDllMessageTerminator)); + + // Add a dummy version in the exe dir + AddAvailableSdkVersions(_exeSdkBaseDir, "10000.0.0"); + + // Specified CLI version: none + // CWD: empty + // User: empty + // Exe: 9999.0.0, 9999.0.1, 9999.0.0-dummy, 10000.0.0-dummy, 10000.0.0 + // Expected: 10000.0.0 from exe dir + dotnet.Exec("help") + .WorkingDirectory(_currentWorkingDir) + .EnvironmentVariable("COREHOST_TRACE", "1") + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Pass() + .And + .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "10000.0.0", _dotnetSdkDllMessageTerminator)); + + } + // This method adds a list of new sdk version folders in the specified // sdkBaseDir. The files are copied from the _sdkDir. Also, the dotnet.runtimeconfig.json // file is overwritten in order to use a dummy framework version (9999.0.0) From fd7a13aa7a2d9e840e68161714168819b690a49b Mon Sep 17 00:00:00 2001 From: John Beisner Date: Mon, 17 Apr 2017 10:23:49 -0700 Subject: [PATCH 180/625] Use "_exeSelectedMessage" not "_cwdSelectedMessage"; a method rename. --- .../GivenThatICareAboutMultilevelSDKLookup.cs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index cf7d63e2..d5b03a38 100644 --- a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -239,7 +239,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup } [Fact] - public void SdkLookup_Must_Pick_The_Latest_Semantical_Version() + public void SdkLookup_Must_Pick_The_Highest_Semantical_Version() { var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture .Copy(); @@ -263,7 +263,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.0", _dotnetSdkDllMessageTerminator)); + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.0", _dotnetSdkDllMessageTerminator)); // Add a dummy version in the exe dir AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.1"); @@ -282,7 +282,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.1", _dotnetSdkDllMessageTerminator)); + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.1", _dotnetSdkDllMessageTerminator)); // Add a dummy version in the exe dir AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0-dummy"); @@ -301,7 +301,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.1", _dotnetSdkDllMessageTerminator)); + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.1", _dotnetSdkDllMessageTerminator)); // Add a dummy version in the exe dir AddAvailableSdkVersions(_exeSdkBaseDir, "10000.0.0-dummy"); @@ -320,7 +320,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "10000.0.0-dummy", _dotnetSdkDllMessageTerminator)); + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "10000.0.0-dummy", _dotnetSdkDllMessageTerminator)); // Add a dummy version in the exe dir AddAvailableSdkVersions(_exeSdkBaseDir, "10000.0.0"); @@ -339,7 +339,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "10000.0.0", _dotnetSdkDllMessageTerminator)); + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "10000.0.0", _dotnetSdkDllMessageTerminator)); } From fed47cdd5e4003cafce0f8f365b8d428c0058114 Mon Sep 17 00:00:00 2001 From: John Beisner Date: Mon, 17 Apr 2017 11:24:02 -0700 Subject: [PATCH 181/625] Trivial change to a method name. --- .../GivenThatICareAboutMultilevelSDKLookup.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index d5b03a38..9a340413 100644 --- a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -239,7 +239,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup } [Fact] - public void SdkLookup_Must_Pick_The_Highest_Semantical_Version() + public void SdkLookup_Must_Pick_The_Highest_Semantic_Version() { var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture .Copy(); From bd8c5a354a57bcc84784d9276c513abbbd447b49 Mon Sep 17 00:00:00 2001 From: wtgodbe Date: Mon, 17 Apr 2017 15:02:03 -0700 Subject: [PATCH 182/625] Remove CentOS from CI & Pipeline --- README.md | 15 --------------- buildpipeline/pipeline.json | 11 ----------- 2 files changed, 26 deletions(-) diff --git a/README.md b/README.md index abbb2926..ea792104 100644 --- a/README.md +++ b/README.md @@ -72,7 +72,6 @@ Daily Builds | **Ubuntu 16.04 (arm32)** | [![][ubuntu-16.04-arm-badge-master]][ubuntu-16.04-arm-version-master]
[tar.gz][ubuntu-16.04-arm-targz-master]
[Symbols (tar.gz)][ubuntu-16.04-arm-symbols-targz-master] | N/A | N/A | | **Ubuntu 16.10 (x64)** | [![][ubuntu-16.10-badge-master]][ubuntu-16.10-version-master]
[Host][ubuntu-16.10-host-master]
[Host FX Resolver][ubuntu-16.10-hostfxr-master]
[Shared Framework][ubuntu-16.10-sharedfx-master]
[tar.gz][ubuntu-16.10-targz-master]
[Symbols (tar.gz)][ubuntu-16.10-symbols-targz-master] | [![][ubuntu-16.10-badge-1.1.X]][ubuntu-16.10-version-1.1.X]
[Host][ubuntu-16.10-host-1.1.X]
[Host FX Resolver][ubuntu-16.10-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.10-sharedfx-1.1.X]
[tar.gz][ubuntu-16.10-targz-1.1.X] | N/A | | **Debian 8.2 (x64)** | [![][debian-8.2-badge-master]][debian-8.2-version-master]
[Host][debian-8.2-host-master]
[Host FX Resolver][debian-8.2-hostfxr-master]
[Shared Framework][debian-8.2-sharedfx-master]
[tar.gz][debian-8.2-targz-master]
[Symbols (tar.gz)][debian-8.2-symbols-targz-master] | [![][debian-8.2-badge-1.1.X]][debian-8.2-version-1.1.X]
[Host][debian-8.2-host-1.1.X]
[Host FX Resolver][debian-8.2-hostfxr-1.1.X]
[Shared Framework][debian-8.2-sharedfx-1.1.X]
[tar.gz][debian-8.2-targz-1.1.X] | [![][debian-8.2-badge-preview]][debian-8.2-version-preview]
[Host][debian-8.2-host-preview]
[Host FX Resolver][debian-8.2-hostfxr-preview]
[Shared Framework][debian-8.2-sharedfx-preview]
[tar.gz][debian-8.2-targz-preview] | -| **CentOS 7.1 (x64)** | [![][centos-badge-master]][centos-version-master]
[tar.gz][centos-targz-master]
[Symbols (tar.gz)][centos-symbols-targz-master] | [![][centos-badge-1.1.X]][centos-version-1.1.X]
[tar.gz][centos-targz-1.1.X] | [![][centos-badge-preview]][centos-version-preview]
[tar.gz][centos-targz-preview] | | **RHEL 7.2 (x64)** | [![][rhel-badge-master]][rhel-version-master]
[tar.gz][rhel-targz-master]
[Symbols (tar.gz)][rhel-symbols-targz-master] | [![][rhel-badge-1.1.X]][rhel-version-1.1.X]
[tar.gz][rhel-targz-1.1.X] | [![][rhel-badge-preview]][rhel-version-preview]
[tar.gz][rhel-targz-preview] | | **Fedora 23 (x64)** | N/A | [![][fedora-23-badge-1.1.X]][fedora-23-version-1.1.X]
[tar.gz][fedora-23-targz-1.1.X] | [![][fedora-23-badge-preview]][fedora-23-version-preview]
[tar.gz][fedora-23-targz-preview] | | **Fedora 24 (x64)** | [![][fedora-24-badge-master]][fedora-24-version-master]
[tar.gz][fedora-24-targz-master]
[Symbols (tar.gz)][fedora-24-symbols-targz-master] | [![][fedora-24-badge-1.1.X]][fedora-24-version-1.1.X]
[tar.gz][fedora-24-targz-1.1.X] | N/A | @@ -284,20 +283,6 @@ Daily Builds [debian-8.2-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-debian-x64.latest.tar.gz -[centos-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_CentOS_x64_Release_version_badge.svg -[centos-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.centos.x64.version -[centos-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-centos-x64.latest.tar.gz -[centos-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-centos-x64.latest.tar.gz - -[centos-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_CentOS_x64_Release_version_badge.svg -[centos-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.centos.x64.version -[centos-targz-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/dotnet-centos-x64.latest.tar.gz - -[centos-badge-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/sharedfx_CentOS_x64_Release_version_badge.svg -[centos-version-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/dnvm/latest.sharedfx.centos.x64.version -[centos-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-centos-x64.latest.tar.gz - - [rhel-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_RHEL_x64_Release_version_badge.svg [rhel-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.rhel.x64.version [rhel-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-rhel-x64.latest.tar.gz diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 8aee1f69..89b8e11d 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -15,17 +15,6 @@ "BuildConfiguration": "Release" }, "Definitions": [ - { - "Name": "Core-Setup-Linux", - "Parameters": { - "PB_DockerOS": "centos.7" - }, - "ReportingParameters": { - "OperatingSystem": "CentOS 7.1", - "Type": "build/product/", - "Platform": "x64" - } - }, { "Name": "Core-Setup-Linux", "Parameters": { From 624fa9b1fb49722d3ac729db837b6713e516c822 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 17 Apr 2017 21:07:07 -0500 Subject: [PATCH 183/625] Clean up OSX installer. Remove unused resources from sharedhost and hostfxr pkgs. Remove unused conclusion.html from sharedframework product. Start using the welcome.html page for the sharedframework product. --- .../resources/cs.lproj/conclusion.html | 14 --- .../osx/hostfxr/resources/cs.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/cs.lproj/welcome.html | 20 ---- .../resources/de.lproj/conclusion.html | 14 --- .../osx/hostfxr/resources/de.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/de.lproj/welcome.html | 20 ---- .../hostfxr/resources/dotnetbackground.png | Bin 4054 -> 0 bytes .../resources/en.lproj/conclusion.html | 14 --- .../osx/hostfxr/resources/en.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/en.lproj/welcome.html | 20 ---- .../resources/es.lproj/conclusion.html | 14 --- .../osx/hostfxr/resources/es.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/es.lproj/welcome.html | 20 ---- .../resources/fr.lproj/conclusion.html | 14 --- .../osx/hostfxr/resources/fr.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/fr.lproj/welcome.html | 20 ---- .../resources/it.lproj/conclusion.html | 14 --- .../osx/hostfxr/resources/it.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/it.lproj/welcome.html | 20 ---- .../resources/ja.lproj/conclusion.html | 14 --- .../osx/hostfxr/resources/ja.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/ja.lproj/welcome.html | 20 ---- .../resources/ko.lproj/conclusion.html | 14 --- .../osx/hostfxr/resources/ko.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/ko.lproj/welcome.html | 20 ---- .../resources/pl.lproj/conclusion.html | 14 --- .../osx/hostfxr/resources/pl.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/pl.lproj/welcome.html | 20 ---- .../resources/pt-br.lproj/conclusion.html | 14 --- .../hostfxr/resources/pt-br.lproj/eula.rtf | 97 ------------------ .../resources/pt-br.lproj/welcome.html | 20 ---- .../resources/ru.lproj/conclusion.html | 14 --- .../osx/hostfxr/resources/ru.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/ru.lproj/welcome.html | 20 ---- .../resources/tr.lproj/conclusion.html | 14 --- .../osx/hostfxr/resources/tr.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/tr.lproj/welcome.html | 20 ---- .../resources/zh-hans.lproj/conclusion.html | 14 --- .../hostfxr/resources/zh-hans.lproj/eula.rtf | 97 ------------------ .../resources/zh-hans.lproj/welcome.html | 20 ---- .../resources/zh-hant.lproj/conclusion.html | 14 --- .../hostfxr/resources/zh-hant.lproj/eula.rtf | 97 ------------------ .../resources/zh-hant.lproj/welcome.html | 20 ---- .../resources/cs.lproj/conclusion.html | 14 --- .../resources/de.lproj/conclusion.html | 14 --- .../resources/en.lproj/conclusion.html | 14 --- .../resources/es.lproj/conclusion.html | 14 --- .../resources/fr.lproj/conclusion.html | 14 --- .../resources/it.lproj/conclusion.html | 14 --- .../resources/ja.lproj/conclusion.html | 14 --- .../resources/ko.lproj/conclusion.html | 14 --- .../resources/pl.lproj/conclusion.html | 14 --- .../resources/pt-br.lproj/conclusion.html | 14 --- .../resources/ru.lproj/conclusion.html | 14 --- .../resources/tr.lproj/conclusion.html | 14 --- .../resources/zh-hans.lproj/conclusion.html | 14 --- .../resources/zh-hant.lproj/conclusion.html | 14 --- ...shared-framework-distribution-template.xml | 1 + .../resources/cs.lproj/conclusion.html | 14 --- .../sharedhost/resources/cs.lproj/eula.rtf | 97 ------------------ .../resources/cs.lproj/welcome.html | 20 ---- .../resources/de.lproj/conclusion.html | 14 --- .../sharedhost/resources/de.lproj/eula.rtf | 97 ------------------ .../resources/de.lproj/welcome.html | 20 ---- .../sharedhost/resources/dotnetbackground.png | Bin 4054 -> 0 bytes .../resources/en.lproj/conclusion.html | 14 --- .../sharedhost/resources/en.lproj/eula.rtf | 97 ------------------ .../resources/en.lproj/welcome.html | 20 ---- .../resources/es.lproj/conclusion.html | 14 --- .../sharedhost/resources/es.lproj/eula.rtf | 97 ------------------ .../resources/es.lproj/welcome.html | 20 ---- .../resources/fr.lproj/conclusion.html | 14 --- .../sharedhost/resources/fr.lproj/eula.rtf | 97 ------------------ .../resources/fr.lproj/welcome.html | 20 ---- .../resources/it.lproj/conclusion.html | 14 --- .../sharedhost/resources/it.lproj/eula.rtf | 97 ------------------ .../resources/it.lproj/welcome.html | 20 ---- .../resources/ja.lproj/conclusion.html | 14 --- .../sharedhost/resources/ja.lproj/eula.rtf | 97 ------------------ .../resources/ja.lproj/welcome.html | 20 ---- .../resources/ko.lproj/conclusion.html | 14 --- .../sharedhost/resources/ko.lproj/eula.rtf | 97 ------------------ .../resources/ko.lproj/welcome.html | 20 ---- .../resources/pl.lproj/conclusion.html | 14 --- .../sharedhost/resources/pl.lproj/eula.rtf | 97 ------------------ .../resources/pl.lproj/welcome.html | 20 ---- .../resources/pt-br.lproj/conclusion.html | 14 --- .../sharedhost/resources/pt-br.lproj/eula.rtf | 97 ------------------ .../resources/pt-br.lproj/welcome.html | 20 ---- .../resources/ru.lproj/conclusion.html | 14 --- .../sharedhost/resources/ru.lproj/eula.rtf | 97 ------------------ .../resources/ru.lproj/welcome.html | 20 ---- .../resources/tr.lproj/conclusion.html | 14 --- .../sharedhost/resources/tr.lproj/eula.rtf | 97 ------------------ .../resources/tr.lproj/welcome.html | 20 ---- .../resources/zh-hans.lproj/conclusion.html | 14 --- .../resources/zh-hans.lproj/eula.rtf | 97 ------------------ .../resources/zh-hans.lproj/welcome.html | 20 ---- .../resources/zh-hant.lproj/conclusion.html | 14 --- .../resources/zh-hant.lproj/eula.rtf | 97 ------------------ .../resources/zh-hant.lproj/welcome.html | 20 ---- 101 files changed, 1 insertion(+), 3864 deletions(-) delete mode 100644 packaging/osx/hostfxr/resources/cs.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/cs.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/cs.lproj/welcome.html delete mode 100644 packaging/osx/hostfxr/resources/de.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/de.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/de.lproj/welcome.html delete mode 100644 packaging/osx/hostfxr/resources/dotnetbackground.png delete mode 100644 packaging/osx/hostfxr/resources/en.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/en.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/en.lproj/welcome.html delete mode 100644 packaging/osx/hostfxr/resources/es.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/es.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/es.lproj/welcome.html delete mode 100644 packaging/osx/hostfxr/resources/fr.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/fr.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/fr.lproj/welcome.html delete mode 100644 packaging/osx/hostfxr/resources/it.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/it.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/it.lproj/welcome.html delete mode 100644 packaging/osx/hostfxr/resources/ja.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/ja.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/ja.lproj/welcome.html delete mode 100644 packaging/osx/hostfxr/resources/ko.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/ko.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/ko.lproj/welcome.html delete mode 100644 packaging/osx/hostfxr/resources/pl.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/pl.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/pl.lproj/welcome.html delete mode 100644 packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/pt-br.lproj/welcome.html delete mode 100644 packaging/osx/hostfxr/resources/ru.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/ru.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/ru.lproj/welcome.html delete mode 100644 packaging/osx/hostfxr/resources/tr.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/tr.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/tr.lproj/welcome.html delete mode 100644 packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/zh-hans.lproj/welcome.html delete mode 100644 packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html delete mode 100644 packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf delete mode 100644 packaging/osx/hostfxr/resources/zh-hant.lproj/welcome.html delete mode 100644 packaging/osx/sharedframework/resources/cs.lproj/conclusion.html delete mode 100644 packaging/osx/sharedframework/resources/de.lproj/conclusion.html delete mode 100644 packaging/osx/sharedframework/resources/en.lproj/conclusion.html delete mode 100644 packaging/osx/sharedframework/resources/es.lproj/conclusion.html delete mode 100644 packaging/osx/sharedframework/resources/fr.lproj/conclusion.html delete mode 100644 packaging/osx/sharedframework/resources/it.lproj/conclusion.html delete mode 100644 packaging/osx/sharedframework/resources/ja.lproj/conclusion.html delete mode 100644 packaging/osx/sharedframework/resources/ko.lproj/conclusion.html delete mode 100644 packaging/osx/sharedframework/resources/pl.lproj/conclusion.html delete mode 100644 packaging/osx/sharedframework/resources/pt-br.lproj/conclusion.html delete mode 100644 packaging/osx/sharedframework/resources/ru.lproj/conclusion.html delete mode 100644 packaging/osx/sharedframework/resources/tr.lproj/conclusion.html delete mode 100644 packaging/osx/sharedframework/resources/zh-hans.lproj/conclusion.html delete mode 100644 packaging/osx/sharedframework/resources/zh-hant.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/cs.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/cs.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/cs.lproj/welcome.html delete mode 100644 packaging/osx/sharedhost/resources/de.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/de.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/de.lproj/welcome.html delete mode 100644 packaging/osx/sharedhost/resources/dotnetbackground.png delete mode 100644 packaging/osx/sharedhost/resources/en.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/en.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/en.lproj/welcome.html delete mode 100644 packaging/osx/sharedhost/resources/es.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/es.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/es.lproj/welcome.html delete mode 100644 packaging/osx/sharedhost/resources/fr.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/fr.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/fr.lproj/welcome.html delete mode 100644 packaging/osx/sharedhost/resources/it.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/it.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/it.lproj/welcome.html delete mode 100644 packaging/osx/sharedhost/resources/ja.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/ja.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/ja.lproj/welcome.html delete mode 100644 packaging/osx/sharedhost/resources/ko.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/ko.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/ko.lproj/welcome.html delete mode 100644 packaging/osx/sharedhost/resources/pl.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/pl.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/pl.lproj/welcome.html delete mode 100644 packaging/osx/sharedhost/resources/pt-br.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/pt-br.lproj/welcome.html delete mode 100644 packaging/osx/sharedhost/resources/ru.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/ru.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/ru.lproj/welcome.html delete mode 100644 packaging/osx/sharedhost/resources/tr.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/tr.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/tr.lproj/welcome.html delete mode 100644 packaging/osx/sharedhost/resources/zh-hans.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/zh-hans.lproj/welcome.html delete mode 100644 packaging/osx/sharedhost/resources/zh-hant.lproj/conclusion.html delete mode 100644 packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf delete mode 100644 packaging/osx/sharedhost/resources/zh-hant.lproj/welcome.html diff --git a/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html b/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/cs.lproj/eula.rtf b/packaging/osx/hostfxr/resources/cs.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/cs.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/cs.lproj/welcome.html b/packaging/osx/hostfxr/resources/cs.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/cs.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/de.lproj/conclusion.html b/packaging/osx/hostfxr/resources/de.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/de.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/de.lproj/eula.rtf b/packaging/osx/hostfxr/resources/de.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/de.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/de.lproj/welcome.html b/packaging/osx/hostfxr/resources/de.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/de.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/dotnetbackground.png b/packaging/osx/hostfxr/resources/dotnetbackground.png deleted file mode 100644 index 15ce07c36f2e009a6776b3b0a299d1b1600fcfff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4054 zcmeHJdpy&7AD@yF9_dCQJe@)pL&>EYDoJjmQ*l_BQ{*z17}F9_6iFqPhDE2#rdA&N%bIxDSAJ0GM``739{r!I5@B91ye7^6``>Gez zSwl@%4Fm#dxEwzC69}{f0RkzNELQ<${P1_rgFu>vE(iA?Lx1M=Npp^m7QP&uGdXIt zDr|}FNsApj2nRh1b{wZ|&TZ8k{=?XI!7{A`d2%HX0@JceDFRv+16NLbt#rz}|n4zZv*n z8MtS(^xW-kvH6yUl1D`6g!L=g+dYh@{m%1Ugb4M9|6 z1_(qAQP%sm+jrrAV)zc(pTim7M)meGW_(@i!%@clvgmdcvls7%EbK5kx%GlL_fSkE`rSB(jey;HRY-4nvO9a1VOse5p9EmYqj_mX==OF6!Jt8c~F zO#U1AcGE5DdTgYIQy~8RgA`s7(!=Ef_Crs|uOeNjR9a7zH#8L|iD%^L7y8@|P$HfI z+zgazlBQZ#BX+#vaJi0BeM{I0<22V%S}9T1)X|N0^-0qj^}IA_VaD6g!Sf?2tYjXIkFBnMOK=X)D(l<$=LtbxPUuU?RR zc@jB!b*I>x!`MeW?LgXmJl#uRbrmGXQK|OOcFDDBXo??@jUQ+^aAYK{cKTU zL0QiBt0YMRUtjIGN$IP0EGq)?+V76E^+I=E+AzMry?hP%2&!tE)(OwH#EsQF34h@< zD|;hq2LJYMVw{k`86k%BLg)N(;kE}qe?%?>pF)Se+Y}Tmoh1%G@E?qq@7ZH&?%zFe zg8q99zN102v%mL|&vRr~%ej}xV(>i<1gB=kQ6uQfjZS4b< z*CQZwunMgH%wV;!$Few&38f=Oco;U^xD1+Jhw%(OQ7P%tp^OX>`q*q!&VZi!$uCo?U8%9 zZQV0@L+_0VA6zec8o~$bihdRqRJ-3cW)tUUdg(!#9c1`;DG@O<927JbgEJ`6`dXG& zjG@;JVJ(L$+KTw77?D>{Z=E(a(ws4ra58$HRPpc{HP3%6bBmwFspD~UZ?bk5H+TM8 zbbLEhG+?#CIt#NT{X*pVllwg8XuTm%KUt(!8scV)^i{3NLJ(+bJ7cGkXsA@KYW2yA zR`h^}W39j&ER^lY_^eJEHR2xN<=0xLnqXGIP~rJn!Jg08dujMQKD1`%{;o67zF8(N zr<=p!G@Z2<+f-zL>O3}4ABnww7befcggO|Zr z5g9=0J`<-s`H#9XTQT8{Fw>x08ZDlf?N!=jSrmyjxPPDqbrpe=Fm zbq75sQ}weNsk+mqsL#y=IEr^_`9#$ZFp=^?w95;K{XFwy6>k}=U^gY;R>6I3WaTP+ zM-5s6T#Iml_#s&rL6aiq4WT5hZWv_ZDe=^6j{D=n!v=<0d~BZb=lF+4KDX>oRGFEY z`sJG9dbLLoE3Y@iK&O}j2>HRL?#=7;&Y%4fy83Le!`#rrm*vY~0`Vi0N_iMho;GTf zO-5eXYmi1Gr|~O(kCH30OiNn{K5~`*dY9gOBP&k&I{x3wcV@+8gU}#x7aKUDJ{0S z6RK2e&fd-gv`8&N&HA1!o9ec{u^W|HNEEX~&t#Wug?{0~bX#ZA7mR-y&CU=?RC;-Q z9ilKPcl;v7FiP}(x)(QE#5Y|(bvPX7mR1>sVxm8>FLQdzZL8ZfNqh}#Mml9_GQ4hr zs@?q7N!1!?y(7^?BTv&8QDyKo2++PgjNhiWG5QlD<8frli(^!4u8-TRd)&8ip?5FP z(fn#r*H+3&Z%z#UPR;N2_HK(g&_>XXF0r@E&$yFOr;R!XXfWTYaHQF7iC!# zle-0UgGJTu6ZZrY@K2z}(*ccL{&jOVVsles?%VB0E9WD*6)Ox?)+($*#d~<&9Gj?7 zALYKD@dP6DgBedgdB9wveLDW2Rs`jJthgXXm?Gr;|-)RghI?aOcL#ya5ei|?| zibnhb%R`z^x`N5qRm0^31-3ZY<35}u|06)re11q^NW zSO2M{>sa@t#=Z;%w#B_PFE&ndWQ0-H?C@T2fYrH;R8o*=tabKDdxFYL>a}AiU7hs=AnX&z%Sukd+AON`!__ z)+EqI!W*(QBR%wWwG?zK_XPigG;#a#XJea>`T`yy1*l+P89aQuX3L>+k8+vdqNkp? z>T9|9gb+uWO{^Xq8cE6)CEfK)YI}bARwyQvxX7LvhG>*s&avD0kqsf2iroFDY8PKj zZDtIW;RJ|qy>#&g)fm}Az&A{*5rVW@XL*8Yb>U^F?8Qu$m;c_~u-R1SsWHS#eAz2@ z_|grg$Vi=JyD19LGUzAvr$vkrT>CHq@l-1Mx-V06n^_pKnfY8Y>WvpOZ^AKi{aHa# ztWo{DKvk*%{)?;J^9AW1uI+yOQE84N7Q2%%8wk^d`gEN*LoCdeW5hQA`uA*Nn6)P| z(pZq1=EpT3fwW67;&0`3!feT7h;MGj&8-d?Vso(O`e?Zehb68mZhLK#`0zf2EwrX#g&L@vqv;V&%jo|TAE1r2}co`E~@%{MD7^LOE* zIsSut1^|Dx(0^i<0o(p>8~?}fdoy3S7P0Irn1pgKMPgqXD9n4Zx~er>@%T;Nl38(v hMhegUe;odu@}(%@7uUE9!GZ#Yixc!<#Q}KAzW{oKiPQi9 diff --git a/packaging/osx/hostfxr/resources/en.lproj/conclusion.html b/packaging/osx/hostfxr/resources/en.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/en.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/en.lproj/eula.rtf b/packaging/osx/hostfxr/resources/en.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/en.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/en.lproj/welcome.html b/packaging/osx/hostfxr/resources/en.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/en.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/es.lproj/conclusion.html b/packaging/osx/hostfxr/resources/es.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/es.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/es.lproj/eula.rtf b/packaging/osx/hostfxr/resources/es.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/es.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/es.lproj/welcome.html b/packaging/osx/hostfxr/resources/es.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/es.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html b/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/fr.lproj/eula.rtf b/packaging/osx/hostfxr/resources/fr.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/fr.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/fr.lproj/welcome.html b/packaging/osx/hostfxr/resources/fr.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/fr.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/it.lproj/conclusion.html b/packaging/osx/hostfxr/resources/it.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/it.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/it.lproj/eula.rtf b/packaging/osx/hostfxr/resources/it.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/it.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/it.lproj/welcome.html b/packaging/osx/hostfxr/resources/it.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/it.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html b/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/ja.lproj/eula.rtf b/packaging/osx/hostfxr/resources/ja.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/ja.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/ja.lproj/welcome.html b/packaging/osx/hostfxr/resources/ja.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/ja.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html b/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/ko.lproj/eula.rtf b/packaging/osx/hostfxr/resources/ko.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/ko.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/ko.lproj/welcome.html b/packaging/osx/hostfxr/resources/ko.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/ko.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html b/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/pl.lproj/eula.rtf b/packaging/osx/hostfxr/resources/pl.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/pl.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/pl.lproj/welcome.html b/packaging/osx/hostfxr/resources/pl.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/pl.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html b/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf b/packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/pt-br.lproj/welcome.html b/packaging/osx/hostfxr/resources/pt-br.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/pt-br.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html b/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/ru.lproj/eula.rtf b/packaging/osx/hostfxr/resources/ru.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/ru.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/ru.lproj/welcome.html b/packaging/osx/hostfxr/resources/ru.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/ru.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html b/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/tr.lproj/eula.rtf b/packaging/osx/hostfxr/resources/tr.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/tr.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/tr.lproj/welcome.html b/packaging/osx/hostfxr/resources/tr.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/tr.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html b/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf b/packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/zh-hans.lproj/welcome.html b/packaging/osx/hostfxr/resources/zh-hans.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/zh-hans.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html b/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html deleted file mode 100644 index 4fcacec4..00000000 --- a/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core HostFxr! - - -
-

The installation was successful.

-

.NET Core HostFxr was successfully installed.

-
- - diff --git a/packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf b/packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/zh-hant.lproj/welcome.html b/packaging/osx/hostfxr/resources/zh-hant.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/hostfxr/resources/zh-hant.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedframework/resources/cs.lproj/conclusion.html b/packaging/osx/sharedframework/resources/cs.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/cs.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/resources/de.lproj/conclusion.html b/packaging/osx/sharedframework/resources/de.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/de.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/resources/en.lproj/conclusion.html b/packaging/osx/sharedframework/resources/en.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/en.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/resources/es.lproj/conclusion.html b/packaging/osx/sharedframework/resources/es.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/es.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/resources/fr.lproj/conclusion.html b/packaging/osx/sharedframework/resources/fr.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/fr.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/resources/it.lproj/conclusion.html b/packaging/osx/sharedframework/resources/it.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/it.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/resources/ja.lproj/conclusion.html b/packaging/osx/sharedframework/resources/ja.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/ja.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/resources/ko.lproj/conclusion.html b/packaging/osx/sharedframework/resources/ko.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/ko.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/resources/pl.lproj/conclusion.html b/packaging/osx/sharedframework/resources/pl.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/pl.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/resources/pt-br.lproj/conclusion.html b/packaging/osx/sharedframework/resources/pt-br.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/pt-br.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/resources/ru.lproj/conclusion.html b/packaging/osx/sharedframework/resources/ru.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/ru.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/resources/tr.lproj/conclusion.html b/packaging/osx/sharedframework/resources/tr.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/tr.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/resources/zh-hans.lproj/conclusion.html b/packaging/osx/sharedframework/resources/zh-hans.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/zh-hans.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/resources/zh-hant.lproj/conclusion.html b/packaging/osx/sharedframework/resources/zh-hant.lproj/conclusion.html deleted file mode 100644 index d4ffdc3c..00000000 --- a/packaging/osx/sharedframework/resources/zh-hant.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core! - - -
-

The installation was successful.

-

.NET Core was successfully installed.

-
- - diff --git a/packaging/osx/sharedframework/shared-framework-distribution-template.xml b/packaging/osx/sharedframework/shared-framework-distribution-template.xml index 7742018d..38062e4d 100644 --- a/packaging/osx/sharedframework/shared-framework-distribution-template.xml +++ b/packaging/osx/sharedframework/shared-framework-distribution-template.xml @@ -4,6 +4,7 @@ + diff --git a/packaging/osx/sharedhost/resources/cs.lproj/conclusion.html b/packaging/osx/sharedhost/resources/cs.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/cs.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/cs.lproj/eula.rtf b/packaging/osx/sharedhost/resources/cs.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/cs.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/cs.lproj/welcome.html b/packaging/osx/sharedhost/resources/cs.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/cs.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/de.lproj/conclusion.html b/packaging/osx/sharedhost/resources/de.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/de.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/de.lproj/eula.rtf b/packaging/osx/sharedhost/resources/de.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/de.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/de.lproj/welcome.html b/packaging/osx/sharedhost/resources/de.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/de.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/dotnetbackground.png b/packaging/osx/sharedhost/resources/dotnetbackground.png deleted file mode 100644 index 15ce07c36f2e009a6776b3b0a299d1b1600fcfff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4054 zcmeHJdpy&7AD@yF9_dCQJe@)pL&>EYDoJjmQ*l_BQ{*z17}F9_6iFqPhDE2#rdA&N%bIxDSAJ0GM``739{r!I5@B91ye7^6``>Gez zSwl@%4Fm#dxEwzC69}{f0RkzNELQ<${P1_rgFu>vE(iA?Lx1M=Npp^m7QP&uGdXIt zDr|}FNsApj2nRh1b{wZ|&TZ8k{=?XI!7{A`d2%HX0@JceDFRv+16NLbt#rz}|n4zZv*n z8MtS(^xW-kvH6yUl1D`6g!L=g+dYh@{m%1Ugb4M9|6 z1_(qAQP%sm+jrrAV)zc(pTim7M)meGW_(@i!%@clvgmdcvls7%EbK5kx%GlL_fSkE`rSB(jey;HRY-4nvO9a1VOse5p9EmYqj_mX==OF6!Jt8c~F zO#U1AcGE5DdTgYIQy~8RgA`s7(!=Ef_Crs|uOeNjR9a7zH#8L|iD%^L7y8@|P$HfI z+zgazlBQZ#BX+#vaJi0BeM{I0<22V%S}9T1)X|N0^-0qj^}IA_VaD6g!Sf?2tYjXIkFBnMOK=X)D(l<$=LtbxPUuU?RR zc@jB!b*I>x!`MeW?LgXmJl#uRbrmGXQK|OOcFDDBXo??@jUQ+^aAYK{cKTU zL0QiBt0YMRUtjIGN$IP0EGq)?+V76E^+I=E+AzMry?hP%2&!tE)(OwH#EsQF34h@< zD|;hq2LJYMVw{k`86k%BLg)N(;kE}qe?%?>pF)Se+Y}Tmoh1%G@E?qq@7ZH&?%zFe zg8q99zN102v%mL|&vRr~%ej}xV(>i<1gB=kQ6uQfjZS4b< z*CQZwunMgH%wV;!$Few&38f=Oco;U^xD1+Jhw%(OQ7P%tp^OX>`q*q!&VZi!$uCo?U8%9 zZQV0@L+_0VA6zec8o~$bihdRqRJ-3cW)tUUdg(!#9c1`;DG@O<927JbgEJ`6`dXG& zjG@;JVJ(L$+KTw77?D>{Z=E(a(ws4ra58$HRPpc{HP3%6bBmwFspD~UZ?bk5H+TM8 zbbLEhG+?#CIt#NT{X*pVllwg8XuTm%KUt(!8scV)^i{3NLJ(+bJ7cGkXsA@KYW2yA zR`h^}W39j&ER^lY_^eJEHR2xN<=0xLnqXGIP~rJn!Jg08dujMQKD1`%{;o67zF8(N zr<=p!G@Z2<+f-zL>O3}4ABnww7befcggO|Zr z5g9=0J`<-s`H#9XTQT8{Fw>x08ZDlf?N!=jSrmyjxPPDqbrpe=Fm zbq75sQ}weNsk+mqsL#y=IEr^_`9#$ZFp=^?w95;K{XFwy6>k}=U^gY;R>6I3WaTP+ zM-5s6T#Iml_#s&rL6aiq4WT5hZWv_ZDe=^6j{D=n!v=<0d~BZb=lF+4KDX>oRGFEY z`sJG9dbLLoE3Y@iK&O}j2>HRL?#=7;&Y%4fy83Le!`#rrm*vY~0`Vi0N_iMho;GTf zO-5eXYmi1Gr|~O(kCH30OiNn{K5~`*dY9gOBP&k&I{x3wcV@+8gU}#x7aKUDJ{0S z6RK2e&fd-gv`8&N&HA1!o9ec{u^W|HNEEX~&t#Wug?{0~bX#ZA7mR-y&CU=?RC;-Q z9ilKPcl;v7FiP}(x)(QE#5Y|(bvPX7mR1>sVxm8>FLQdzZL8ZfNqh}#Mml9_GQ4hr zs@?q7N!1!?y(7^?BTv&8QDyKo2++PgjNhiWG5QlD<8frli(^!4u8-TRd)&8ip?5FP z(fn#r*H+3&Z%z#UPR;N2_HK(g&_>XXF0r@E&$yFOr;R!XXfWTYaHQF7iC!# zle-0UgGJTu6ZZrY@K2z}(*ccL{&jOVVsles?%VB0E9WD*6)Ox?)+($*#d~<&9Gj?7 zALYKD@dP6DgBedgdB9wveLDW2Rs`jJthgXXm?Gr;|-)RghI?aOcL#ya5ei|?| zibnhb%R`z^x`N5qRm0^31-3ZY<35}u|06)re11q^NW zSO2M{>sa@t#=Z;%w#B_PFE&ndWQ0-H?C@T2fYrH;R8o*=tabKDdxFYL>a}AiU7hs=AnX&z%Sukd+AON`!__ z)+EqI!W*(QBR%wWwG?zK_XPigG;#a#XJea>`T`yy1*l+P89aQuX3L>+k8+vdqNkp? z>T9|9gb+uWO{^Xq8cE6)CEfK)YI}bARwyQvxX7LvhG>*s&avD0kqsf2iroFDY8PKj zZDtIW;RJ|qy>#&g)fm}Az&A{*5rVW@XL*8Yb>U^F?8Qu$m;c_~u-R1SsWHS#eAz2@ z_|grg$Vi=JyD19LGUzAvr$vkrT>CHq@l-1Mx-V06n^_pKnfY8Y>WvpOZ^AKi{aHa# ztWo{DKvk*%{)?;J^9AW1uI+yOQE84N7Q2%%8wk^d`gEN*LoCdeW5hQA`uA*Nn6)P| z(pZq1=EpT3fwW67;&0`3!feT7h;MGj&8-d?Vso(O`e?Zehb68mZhLK#`0zf2EwrX#g&L@vqv;V&%jo|TAE1r2}co`E~@%{MD7^LOE* zIsSut1^|Dx(0^i<0o(p>8~?}fdoy3S7P0Irn1pgKMPgqXD9n4Zx~er>@%T;Nl38(v hMhegUe;odu@}(%@7uUE9!GZ#Yixc!<#Q}KAzW{oKiPQi9 diff --git a/packaging/osx/sharedhost/resources/en.lproj/conclusion.html b/packaging/osx/sharedhost/resources/en.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/en.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/en.lproj/eula.rtf b/packaging/osx/sharedhost/resources/en.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/en.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/en.lproj/welcome.html b/packaging/osx/sharedhost/resources/en.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/en.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/es.lproj/conclusion.html b/packaging/osx/sharedhost/resources/es.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/es.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/es.lproj/eula.rtf b/packaging/osx/sharedhost/resources/es.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/es.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/es.lproj/welcome.html b/packaging/osx/sharedhost/resources/es.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/es.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/fr.lproj/conclusion.html b/packaging/osx/sharedhost/resources/fr.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/fr.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/fr.lproj/eula.rtf b/packaging/osx/sharedhost/resources/fr.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/fr.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/fr.lproj/welcome.html b/packaging/osx/sharedhost/resources/fr.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/fr.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/it.lproj/conclusion.html b/packaging/osx/sharedhost/resources/it.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/it.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/it.lproj/eula.rtf b/packaging/osx/sharedhost/resources/it.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/it.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/it.lproj/welcome.html b/packaging/osx/sharedhost/resources/it.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/it.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/ja.lproj/conclusion.html b/packaging/osx/sharedhost/resources/ja.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/ja.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/ja.lproj/eula.rtf b/packaging/osx/sharedhost/resources/ja.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/ja.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/ja.lproj/welcome.html b/packaging/osx/sharedhost/resources/ja.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/ja.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/ko.lproj/conclusion.html b/packaging/osx/sharedhost/resources/ko.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/ko.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/ko.lproj/eula.rtf b/packaging/osx/sharedhost/resources/ko.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/ko.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/ko.lproj/welcome.html b/packaging/osx/sharedhost/resources/ko.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/ko.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/pl.lproj/conclusion.html b/packaging/osx/sharedhost/resources/pl.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/pl.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/pl.lproj/eula.rtf b/packaging/osx/sharedhost/resources/pl.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/pl.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/pl.lproj/welcome.html b/packaging/osx/sharedhost/resources/pl.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/pl.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/pt-br.lproj/conclusion.html b/packaging/osx/sharedhost/resources/pt-br.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/pt-br.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf b/packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/pt-br.lproj/welcome.html b/packaging/osx/sharedhost/resources/pt-br.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/pt-br.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/ru.lproj/conclusion.html b/packaging/osx/sharedhost/resources/ru.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/ru.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/ru.lproj/eula.rtf b/packaging/osx/sharedhost/resources/ru.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/ru.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/ru.lproj/welcome.html b/packaging/osx/sharedhost/resources/ru.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/ru.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/tr.lproj/conclusion.html b/packaging/osx/sharedhost/resources/tr.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/tr.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/tr.lproj/eula.rtf b/packaging/osx/sharedhost/resources/tr.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/tr.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/tr.lproj/welcome.html b/packaging/osx/sharedhost/resources/tr.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/tr.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/zh-hans.lproj/conclusion.html b/packaging/osx/sharedhost/resources/zh-hans.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/zh-hans.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf b/packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/zh-hans.lproj/welcome.html b/packaging/osx/sharedhost/resources/zh-hans.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/zh-hans.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/zh-hant.lproj/conclusion.html b/packaging/osx/sharedhost/resources/zh-hant.lproj/conclusion.html deleted file mode 100644 index 0902b122..00000000 --- a/packaging/osx/sharedhost/resources/zh-hant.lproj/conclusion.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - Congratulations! You've successfully installed .NET Core Shared Host! - - -
-

The installation was successful.

-

.NET Core Shared Host was successfully installed.

-
- - diff --git a/packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf b/packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/zh-hant.lproj/welcome.html b/packaging/osx/sharedhost/resources/zh-hant.lproj/welcome.html deleted file mode 100644 index 3bf1c66c..00000000 --- a/packaging/osx/sharedhost/resources/zh-hant.lproj/welcome.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Welcome to the .NET Core CLI installer. - - - -

- Microsoft .NET Core CLI -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-

- This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. -

-
- - \ No newline at end of file From fd51d23c54afcba9624d490ca926006d4d7c1cab Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Mon, 17 Apr 2017 21:51:52 -0700 Subject: [PATCH 184/625] Try longer lease acquisition (#2091) --- .../shared-build-targets-utils/Publishing/AzurePublisher.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs b/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs index 603c3a12..64b693ed 100644 --- a/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs +++ b/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs @@ -117,7 +117,7 @@ namespace Microsoft.DotNet.Cli.Build TimeSpan? maxWaitDefault=null, TimeSpan? delayDefault=null) { - TimeSpan maxWait = maxWaitDefault ?? TimeSpan.FromSeconds(120); + TimeSpan maxWait = maxWaitDefault ?? TimeSpan.FromSeconds(1800); TimeSpan delay = delayDefault ?? TimeSpan.FromMilliseconds(500); Stopwatch stopWatch = new Stopwatch(); From b7a488cf01a41b81b9b295140042f3ec4aa1e31f Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Mon, 17 Apr 2017 21:53:48 -0700 Subject: [PATCH 185/625] Updating CoreFx, CoreClr, Standard to preview1-25218-01, preview1-25218-01, preview1-25217-02 respectively (#2095) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 8 ++++---- .../project.json.template | 8 ++++---- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index a6b22c64..8fe4a866 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25215-03"; - public static readonly string JitVersion = "2.0.0-preview1-25215-03"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25218-01"; + public static readonly string JitVersion = "2.0.0-preview1-25218-01"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index 66622234..0bb00017 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25214-03" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-01" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index e11260cc..84234bfb 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25214-03\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25218-01\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index daa649de..d65a7fb2 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25214-03", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25215-03", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25218-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25218-01", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25214-03", - "NETStandard.Library": "2.0.0-preview1-25217-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-01", + "NETStandard.Library": "2.0.0-preview1-25217-02" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 3da9bf4a..571ddda6 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25214-03", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25215-03", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25214-03", - "NETStandard.Library": "2.0.0-preview1-25217-01", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25218-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25218-01", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-01", + "NETStandard.Library": "2.0.0-preview1-25217-02", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From a9ff5f156f842515ebf18f403dbd1cc74389ed6e Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Tue, 18 Apr 2017 08:08:45 -0700 Subject: [PATCH 186/625] Updating CoreFx, CoreClr, Standard to preview1-25218-02, preview1-25218-02, preview1-25218-01 respectively (#2099) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 8 ++++---- .../project.json.template | 8 ++++---- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 8fe4a866..467ca103 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25218-01"; - public static readonly string JitVersion = "2.0.0-preview1-25218-01"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25218-02"; + public static readonly string JitVersion = "2.0.0-preview1-25218-02"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index 0bb00017..199f30e2 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-02" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 84234bfb..e355d6e9 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25218-01\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25218-02\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index d65a7fb2..2061a013 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25218-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25218-01", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25218-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25218-02", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-01", - "NETStandard.Library": "2.0.0-preview1-25217-02" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-02", + "NETStandard.Library": "2.0.0-preview1-25218-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 571ddda6..2be9395e 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25218-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25218-01", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-01", - "NETStandard.Library": "2.0.0-preview1-25217-02", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25218-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25218-02", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-02", + "NETStandard.Library": "2.0.0-preview1-25218-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From ba40f0a3a8bd9ecb849213a151a112b446571a0d Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 18 Apr 2017 10:35:39 -0500 Subject: [PATCH 187/625] Update welcome.html to not say 'Host' --- .../osx/sharedframework/resources/cs.lproj/welcome.html | 6 +++--- .../osx/sharedframework/resources/de.lproj/welcome.html | 6 +++--- .../osx/sharedframework/resources/en.lproj/welcome.html | 6 +++--- .../osx/sharedframework/resources/es.lproj/welcome.html | 6 +++--- .../osx/sharedframework/resources/fr.lproj/welcome.html | 6 +++--- .../osx/sharedframework/resources/it.lproj/welcome.html | 6 +++--- .../osx/sharedframework/resources/ja.lproj/welcome.html | 6 +++--- .../osx/sharedframework/resources/ko.lproj/welcome.html | 6 +++--- .../osx/sharedframework/resources/pl.lproj/welcome.html | 6 +++--- .../osx/sharedframework/resources/pt-br.lproj/welcome.html | 6 +++--- .../osx/sharedframework/resources/ru.lproj/welcome.html | 6 +++--- .../osx/sharedframework/resources/tr.lproj/welcome.html | 6 +++--- .../sharedframework/resources/zh-hans.lproj/welcome.html | 6 +++--- .../sharedframework/resources/zh-hant.lproj/welcome.html | 6 +++--- 14 files changed, 42 insertions(+), 42 deletions(-) diff --git a/packaging/osx/sharedframework/resources/cs.lproj/welcome.html b/packaging/osx/sharedframework/resources/cs.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/cs.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/cs.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + diff --git a/packaging/osx/sharedframework/resources/de.lproj/welcome.html b/packaging/osx/sharedframework/resources/de.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/de.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/de.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + diff --git a/packaging/osx/sharedframework/resources/en.lproj/welcome.html b/packaging/osx/sharedframework/resources/en.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/en.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/en.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + diff --git a/packaging/osx/sharedframework/resources/es.lproj/welcome.html b/packaging/osx/sharedframework/resources/es.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/es.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/es.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + diff --git a/packaging/osx/sharedframework/resources/fr.lproj/welcome.html b/packaging/osx/sharedframework/resources/fr.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/fr.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/fr.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + diff --git a/packaging/osx/sharedframework/resources/it.lproj/welcome.html b/packaging/osx/sharedframework/resources/it.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/it.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/it.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + diff --git a/packaging/osx/sharedframework/resources/ja.lproj/welcome.html b/packaging/osx/sharedframework/resources/ja.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/ja.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/ja.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + diff --git a/packaging/osx/sharedframework/resources/ko.lproj/welcome.html b/packaging/osx/sharedframework/resources/ko.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/ko.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/ko.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + diff --git a/packaging/osx/sharedframework/resources/pl.lproj/welcome.html b/packaging/osx/sharedframework/resources/pl.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/pl.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/pl.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + diff --git a/packaging/osx/sharedframework/resources/pt-br.lproj/welcome.html b/packaging/osx/sharedframework/resources/pt-br.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/pt-br.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/pt-br.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + diff --git a/packaging/osx/sharedframework/resources/ru.lproj/welcome.html b/packaging/osx/sharedframework/resources/ru.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/ru.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/ru.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + diff --git a/packaging/osx/sharedframework/resources/tr.lproj/welcome.html b/packaging/osx/sharedframework/resources/tr.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/tr.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/tr.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + diff --git a/packaging/osx/sharedframework/resources/zh-hans.lproj/welcome.html b/packaging/osx/sharedframework/resources/zh-hans.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/zh-hans.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/zh-hans.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + diff --git a/packaging/osx/sharedframework/resources/zh-hant.lproj/welcome.html b/packaging/osx/sharedframework/resources/zh-hant.lproj/welcome.html index b4dc7dae..6538e4d1 100644 --- a/packaging/osx/sharedframework/resources/zh-hant.lproj/welcome.html +++ b/packaging/osx/sharedframework/resources/zh-hant.lproj/welcome.html @@ -2,16 +2,16 @@ - Welcome to the .NET Core Host installer. + Welcome to the .NET Core installer.

- Microsoft .NET Core Host + Microsoft .NET Core

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.

- \ No newline at end of file + From 4e7a9c2c34d4d31f79e1f8073ea6737d5130f1e6 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 18 Apr 2017 11:16:33 -0500 Subject: [PATCH 188/625] Add sharedhost and hostfxr eulas back since Windows installers need these. --- .../osx/hostfxr/resources/cs.lproj/eula.rtf | 97 +++++++++++++++++++ .../osx/hostfxr/resources/de.lproj/eula.rtf | 97 +++++++++++++++++++ .../osx/hostfxr/resources/en.lproj/eula.rtf | 97 +++++++++++++++++++ .../osx/hostfxr/resources/es.lproj/eula.rtf | 97 +++++++++++++++++++ .../osx/hostfxr/resources/fr.lproj/eula.rtf | 97 +++++++++++++++++++ .../osx/hostfxr/resources/it.lproj/eula.rtf | 97 +++++++++++++++++++ .../osx/hostfxr/resources/ja.lproj/eula.rtf | 97 +++++++++++++++++++ .../osx/hostfxr/resources/ko.lproj/eula.rtf | 97 +++++++++++++++++++ .../osx/hostfxr/resources/pl.lproj/eula.rtf | 97 +++++++++++++++++++ .../hostfxr/resources/pt-br.lproj/eula.rtf | 97 +++++++++++++++++++ .../osx/hostfxr/resources/ru.lproj/eula.rtf | 97 +++++++++++++++++++ .../osx/hostfxr/resources/tr.lproj/eula.rtf | 97 +++++++++++++++++++ .../hostfxr/resources/zh-hans.lproj/eula.rtf | 97 +++++++++++++++++++ .../hostfxr/resources/zh-hant.lproj/eula.rtf | 97 +++++++++++++++++++ .../sharedhost/resources/cs.lproj/eula.rtf | 97 +++++++++++++++++++ .../sharedhost/resources/de.lproj/eula.rtf | 97 +++++++++++++++++++ .../sharedhost/resources/en.lproj/eula.rtf | 97 +++++++++++++++++++ .../sharedhost/resources/es.lproj/eula.rtf | 97 +++++++++++++++++++ .../sharedhost/resources/fr.lproj/eula.rtf | 97 +++++++++++++++++++ .../sharedhost/resources/it.lproj/eula.rtf | 97 +++++++++++++++++++ .../sharedhost/resources/ja.lproj/eula.rtf | 97 +++++++++++++++++++ .../sharedhost/resources/ko.lproj/eula.rtf | 97 +++++++++++++++++++ .../sharedhost/resources/pl.lproj/eula.rtf | 97 +++++++++++++++++++ .../sharedhost/resources/pt-br.lproj/eula.rtf | 97 +++++++++++++++++++ .../sharedhost/resources/ru.lproj/eula.rtf | 97 +++++++++++++++++++ .../sharedhost/resources/tr.lproj/eula.rtf | 97 +++++++++++++++++++ .../resources/zh-hans.lproj/eula.rtf | 97 +++++++++++++++++++ .../resources/zh-hant.lproj/eula.rtf | 97 +++++++++++++++++++ 28 files changed, 2716 insertions(+) create mode 100644 packaging/osx/hostfxr/resources/cs.lproj/eula.rtf create mode 100644 packaging/osx/hostfxr/resources/de.lproj/eula.rtf create mode 100644 packaging/osx/hostfxr/resources/en.lproj/eula.rtf create mode 100644 packaging/osx/hostfxr/resources/es.lproj/eula.rtf create mode 100644 packaging/osx/hostfxr/resources/fr.lproj/eula.rtf create mode 100644 packaging/osx/hostfxr/resources/it.lproj/eula.rtf create mode 100644 packaging/osx/hostfxr/resources/ja.lproj/eula.rtf create mode 100644 packaging/osx/hostfxr/resources/ko.lproj/eula.rtf create mode 100644 packaging/osx/hostfxr/resources/pl.lproj/eula.rtf create mode 100644 packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf create mode 100644 packaging/osx/hostfxr/resources/ru.lproj/eula.rtf create mode 100644 packaging/osx/hostfxr/resources/tr.lproj/eula.rtf create mode 100644 packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf create mode 100644 packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/cs.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/de.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/en.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/es.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/fr.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/it.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/ja.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/ko.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/pl.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/ru.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/tr.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf create mode 100644 packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf diff --git a/packaging/osx/hostfxr/resources/cs.lproj/eula.rtf b/packaging/osx/hostfxr/resources/cs.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/cs.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/de.lproj/eula.rtf b/packaging/osx/hostfxr/resources/de.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/de.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/en.lproj/eula.rtf b/packaging/osx/hostfxr/resources/en.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/en.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/es.lproj/eula.rtf b/packaging/osx/hostfxr/resources/es.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/es.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/fr.lproj/eula.rtf b/packaging/osx/hostfxr/resources/fr.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/fr.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/it.lproj/eula.rtf b/packaging/osx/hostfxr/resources/it.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/it.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/ja.lproj/eula.rtf b/packaging/osx/hostfxr/resources/ja.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/ja.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/ko.lproj/eula.rtf b/packaging/osx/hostfxr/resources/ko.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/ko.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/pl.lproj/eula.rtf b/packaging/osx/hostfxr/resources/pl.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/pl.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf b/packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/ru.lproj/eula.rtf b/packaging/osx/hostfxr/resources/ru.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/ru.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/tr.lproj/eula.rtf b/packaging/osx/hostfxr/resources/tr.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/tr.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf b/packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf b/packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/cs.lproj/eula.rtf b/packaging/osx/sharedhost/resources/cs.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/cs.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/de.lproj/eula.rtf b/packaging/osx/sharedhost/resources/de.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/de.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/en.lproj/eula.rtf b/packaging/osx/sharedhost/resources/en.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/en.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/es.lproj/eula.rtf b/packaging/osx/sharedhost/resources/es.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/es.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/fr.lproj/eula.rtf b/packaging/osx/sharedhost/resources/fr.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/fr.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/it.lproj/eula.rtf b/packaging/osx/sharedhost/resources/it.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/it.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/ja.lproj/eula.rtf b/packaging/osx/sharedhost/resources/ja.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/ja.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/ko.lproj/eula.rtf b/packaging/osx/sharedhost/resources/ko.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/ko.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/pl.lproj/eula.rtf b/packaging/osx/sharedhost/resources/pl.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/pl.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf b/packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/ru.lproj/eula.rtf b/packaging/osx/sharedhost/resources/ru.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/ru.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/tr.lproj/eula.rtf b/packaging/osx/sharedhost/resources/tr.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/tr.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf b/packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file diff --git a/packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf b/packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf new file mode 100644 index 00000000..7f40e11a --- /dev/null +++ b/packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf @@ -0,0 +1,97 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} +{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} +{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 +\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par +\fs24 MICROSOFT .NET LIBRARY\fs28\par +\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par + +\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par +IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par +\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par + +\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par + +\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par + +\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par +\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par +\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par +\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par +\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par +\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par +\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par +\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par +\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par + +\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par + +\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par +\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par +\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par +LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par +\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par + +\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par + +\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par + +\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par +\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par +\kerning0\fs20\lang1036\~\fs19\lang1033\par + +\pard\widctlpar\cf0\b0\f3\fs24\par +} + \ No newline at end of file From 079eeb13c04b686420790c597104f72717f3831b Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Tue, 18 Apr 2017 10:59:09 -0700 Subject: [PATCH 189/625] Updating CoreClr to preview1-25218-03 (#2102) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- .../project.json.template | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 467ca103..521eb241 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25218-02"; - public static readonly string JitVersion = "2.0.0-preview1-25218-02"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25218-03"; + public static readonly string JitVersion = "2.0.0-preview1-25218-03"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 2061a013..9f2fa4dc 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25218-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25218-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25218-03", "Microsoft.DiaSymReader.Native": "1.4.1", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-02", "NETStandard.Library": "2.0.0-preview1-25218-01" diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 2be9395e..a80a9717 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -2,7 +2,7 @@ "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25218-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25218-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25218-03", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-02", "NETStandard.Library": "2.0.0-preview1-25218-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", From 6d17e22b2a9eeb4b50917fe5a306f0cfcfb04794 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Tue, 18 Apr 2017 12:09:03 -0700 Subject: [PATCH 190/625] Ensure Architecture is added to all probe locations --- src/corehost/cli/args.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/corehost/cli/args.cpp b/src/corehost/cli/args.cpp index 456902cb..681a2af3 100644 --- a/src/corehost/cli/args.cpp +++ b/src/corehost/cli/args.cpp @@ -22,11 +22,11 @@ arguments_t::arguments_t() : * Setup the shared store directories. * * o %DOTNET_SHARED_STORE% -- multiple delimited paths - * o $HOME/.dotnet/{x86|x64}/ or %USERPROFILE%\.dotnet\{x86|x64} - * o dotnet.exe relative shared store + * o $HOME/.dotnet/{x86|x64}/tfm or %USERPROFILE%\.dotnet\{x86|x64}\ + * o dotnet.exe relative shared store\\ * o Global location * Windows: C:\Program Files (x86) or - * Unix: directory of dotnet on the path. + * Unix: directory of dotnet on the path.\\ */ void setup_shared_store_paths(const hostpolicy_init_t& init, const pal::string_t& own_dir, arguments_t* args) { @@ -52,12 +52,14 @@ void setup_shared_store_paths(const hostpolicy_init_t& init, const pal::string_t { args->dotnet_shared_store = own_dir; append_path(&args->dotnet_shared_store, RUNTIME_STORE_DIRECTORY_NAME); + append_path(&args->dotnet_shared_store, get_arch()); append_path(&args->dotnet_shared_store, init.tfm.c_str()); } // Global shared store dir if (get_global_shared_store_dir(&args->global_shared_store)) { + append_path(&args->global_shared_store, get_arch()); append_path(&args->global_shared_store, init.tfm.c_str()); } } From 294f324b687015ae3c3de832bc0675d871d1f444 Mon Sep 17 00:00:00 2001 From: wtgodbe Date: Tue, 18 Apr 2017 11:50:07 -0700 Subject: [PATCH 191/625] Add CentOS badges back for 1.1.0/1.0.0 --- README.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/README.md b/README.md index ea792104..c6fa1188 100644 --- a/README.md +++ b/README.md @@ -72,6 +72,7 @@ Daily Builds | **Ubuntu 16.04 (arm32)** | [![][ubuntu-16.04-arm-badge-master]][ubuntu-16.04-arm-version-master]
[tar.gz][ubuntu-16.04-arm-targz-master]
[Symbols (tar.gz)][ubuntu-16.04-arm-symbols-targz-master] | N/A | N/A | | **Ubuntu 16.10 (x64)** | [![][ubuntu-16.10-badge-master]][ubuntu-16.10-version-master]
[Host][ubuntu-16.10-host-master]
[Host FX Resolver][ubuntu-16.10-hostfxr-master]
[Shared Framework][ubuntu-16.10-sharedfx-master]
[tar.gz][ubuntu-16.10-targz-master]
[Symbols (tar.gz)][ubuntu-16.10-symbols-targz-master] | [![][ubuntu-16.10-badge-1.1.X]][ubuntu-16.10-version-1.1.X]
[Host][ubuntu-16.10-host-1.1.X]
[Host FX Resolver][ubuntu-16.10-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.10-sharedfx-1.1.X]
[tar.gz][ubuntu-16.10-targz-1.1.X] | N/A | | **Debian 8.2 (x64)** | [![][debian-8.2-badge-master]][debian-8.2-version-master]
[Host][debian-8.2-host-master]
[Host FX Resolver][debian-8.2-hostfxr-master]
[Shared Framework][debian-8.2-sharedfx-master]
[tar.gz][debian-8.2-targz-master]
[Symbols (tar.gz)][debian-8.2-symbols-targz-master] | [![][debian-8.2-badge-1.1.X]][debian-8.2-version-1.1.X]
[Host][debian-8.2-host-1.1.X]
[Host FX Resolver][debian-8.2-hostfxr-1.1.X]
[Shared Framework][debian-8.2-sharedfx-1.1.X]
[tar.gz][debian-8.2-targz-1.1.X] | [![][debian-8.2-badge-preview]][debian-8.2-version-preview]
[Host][debian-8.2-host-preview]
[Host FX Resolver][debian-8.2-hostfxr-preview]
[Shared Framework][debian-8.2-sharedfx-preview]
[tar.gz][debian-8.2-targz-preview] | +| **CentOS 7.1 (x64)** | N/A | [![][centos-badge-1.1.X]][centos-version-1.1.X]
[tar.gz][centos-targz-1.1.X] | [![][centos-badge-preview]][centos-version-preview]
[tar.gz][centos-targz-preview] | | **RHEL 7.2 (x64)** | [![][rhel-badge-master]][rhel-version-master]
[tar.gz][rhel-targz-master]
[Symbols (tar.gz)][rhel-symbols-targz-master] | [![][rhel-badge-1.1.X]][rhel-version-1.1.X]
[tar.gz][rhel-targz-1.1.X] | [![][rhel-badge-preview]][rhel-version-preview]
[tar.gz][rhel-targz-preview] | | **Fedora 23 (x64)** | N/A | [![][fedora-23-badge-1.1.X]][fedora-23-version-1.1.X]
[tar.gz][fedora-23-targz-1.1.X] | [![][fedora-23-badge-preview]][fedora-23-version-preview]
[tar.gz][fedora-23-targz-preview] | | **Fedora 24 (x64)** | [![][fedora-24-badge-master]][fedora-24-version-master]
[tar.gz][fedora-24-targz-master]
[Symbols (tar.gz)][fedora-24-symbols-targz-master] | [![][fedora-24-badge-1.1.X]][fedora-24-version-1.1.X]
[tar.gz][fedora-24-targz-1.1.X] | N/A | @@ -283,6 +284,15 @@ Daily Builds [debian-8.2-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-debian-x64.latest.tar.gz +[centos-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_CentOS_x64_Release_version_badge.svg +[centos-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.centos.x64.version +[centos-targz-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/dotnet-centos-x64.latest.tar.gz + +[centos-badge-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/sharedfx_CentOS_x64_Release_version_badge.svg +[centos-version-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/dnvm/latest.sharedfx.centos.x64.version +[centos-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-centos-x64.latest.tar.gz + + [rhel-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_RHEL_x64_Release_version_badge.svg [rhel-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.rhel.x64.version [rhel-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-rhel-x64.latest.tar.gz From bd9b9d573abb8d91f73f5c9998cd4db7b585f232 Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Tue, 18 Apr 2017 19:28:51 -0700 Subject: [PATCH 192/625] Revert "Revert "Build Native Debian installers consuming Portable Linux binaries (#2027)" (#2078)" (#2104) This reverts commit e9456614cfe65b6dc7c5326a597337159142c84c. --- .../dotnet-host-build/PackageTargets.cs | 31 ++- .../dotnet-host-build/PrepareTargets.cs | 2 + .../dotnet-host-build/PublishTargets.cs | 17 ++ .../Core-Setup-PortableLinux-x64.json | 212 +++++++++++++++++- buildpipeline/pipeline.json | 58 ----- scripts/dockerbuild.sh | 84 +++++++ scripts/dockerrun.sh | 40 +--- 7 files changed, 338 insertions(+), 106 deletions(-) create mode 100755 scripts/dockerbuild.sh diff --git a/build_projects/dotnet-host-build/PackageTargets.cs b/build_projects/dotnet-host-build/PackageTargets.cs index 645c50df..f276ddb5 100644 --- a/build_projects/dotnet-host-build/PackageTargets.cs +++ b/build_projects/dotnet-host-build/PackageTargets.cs @@ -68,9 +68,11 @@ namespace Microsoft.DotNet.Host.Build Directory.CreateDirectory(sharedHostRoot); - foreach (var file in Directory.GetFiles(Dirs.SharedFrameworkPublish, "*", SearchOption.TopDirectoryOnly)) + string sharedFrameworkPublishPath = GetSharedFrameworkPublishPath(c); + + foreach (var file in Directory.GetFiles(sharedFrameworkPublishPath, "*", SearchOption.TopDirectoryOnly)) { - var destFile = file.Replace(Dirs.SharedFrameworkPublish, sharedHostRoot); + var destFile = file.Replace(sharedFrameworkPublishPath, sharedHostRoot); File.Copy(file, destFile, true); c.Warn(destFile); } @@ -99,7 +101,7 @@ namespace Microsoft.DotNet.Host.Build Directory.CreateDirectory(hostFxrRoot); - string srcHostDir = Path.Combine(Dirs.SharedFrameworkPublish, "host"); + string srcHostDir = Path.Combine(GetSharedFrameworkPublishPath(c), "host"); string destHostDir = Path.Combine(hostFxrRoot, "host"); FS.CopyRecursive(srcHostDir, destHostDir); @@ -119,7 +121,8 @@ namespace Microsoft.DotNet.Host.Build } Directory.CreateDirectory(sharedFxRoot); - Utils.CopyDirectoryRecursively(Path.Combine(Dirs.SharedFrameworkPublish, "shared"), sharedFxRoot, true); + + Utils.CopyDirectoryRecursively(Path.Combine(GetSharedFrameworkPublishPath(c), "shared"), sharedFxRoot, true); FixPermissions(sharedFxRoot); c.BuildContext["SharedFrameworkPublishRoot"] = sharedFxRoot; @@ -266,5 +269,25 @@ namespace Microsoft.DotNet.Host.Build FS.FixModeFlags(directory); } } + + private static string GetSharedFrameworkPublishPath(BuildTargetContext c) + { + string sharedFrameworkPublishPath = string.Empty; + + string preBuiltPortableStagingPath=c.BuildContext.Get("PortableBuildStagingLocation"); + + // If we are not generating distro specific installers for portable build, then we won't have access to staging location and thus, will use default binary location where SharedFX was published + if(preBuiltPortableStagingPath == null) + { + sharedFrameworkPublishPath = Dirs.SharedFrameworkPublish; + } + else + { + Console.WriteLine($"Installers will package binaries from path set by PORTABLE_BUILD_STAGING_LOCATION environment variable :{preBuiltPortableStagingPath}"); + sharedFrameworkPublishPath = preBuiltPortableStagingPath; + } + + return sharedFrameworkPublishPath; + } } } diff --git a/build_projects/dotnet-host-build/PrepareTargets.cs b/build_projects/dotnet-host-build/PrepareTargets.cs index 344fce5b..8c6f4cd4 100644 --- a/build_projects/dotnet-host-build/PrepareTargets.cs +++ b/build_projects/dotnet-host-build/PrepareTargets.cs @@ -127,6 +127,7 @@ namespace Microsoft.DotNet.Host.Build Environment.SetEnvironmentVariable("TARGETRID", targetRID); } + string portableBuildStagingLocation = Environment.GetEnvironmentVariable("PORTABLE_BUILD_STAGING_LOCATION")?.Trim(); c.BuildContext["TargetRID"] = targetRID; @@ -135,6 +136,7 @@ namespace Microsoft.DotNet.Host.Build c.BuildContext["ArtifactsTargetRID"] = realTargetRID; c.BuildContext["LinkPortable"] = linkPortable; c.BuildContext["Platform"] = platformEnv; + c.BuildContext["PortableBuildStagingLocation"] = portableBuildStagingLocation; return c.Success(); } diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index 5e2d84c7..38d62be5 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -58,6 +58,16 @@ namespace Microsoft.DotNet.Host.Build return c.Success(); } + [Target(nameof(PrepareTargets.Init), + nameof(PublishTargets.InitPublish), + nameof(PublishTargets.PublishInstallerArtifacts), + nameof(PublishTargets.FinalizeBuild))] + [Environment("PUBLISH_TO_AZURE_BLOB", "1", "true")] // This is set by CI systems + public static BuildTargetResult PublishInstallers(BuildTargetContext c) + { + return c.Success(); + } + [Target] [BuildPlatforms(BuildPlatform.Ubuntu, "14.04")] [BuildArchitectures(BuildArchitecture.x64)] @@ -287,6 +297,13 @@ namespace Microsoft.DotNet.Host.Build nameof(PublishTargets.PublishSharedFrameworkVersionBadge))] public static BuildTargetResult PublishArtifacts(BuildTargetContext c) => c.Success(); + [Target( + nameof(PublishTargets.PublishInstallerFilesToAzure), + nameof(PublishTargets.PublishDotnetDebToolPackage), + nameof(PublishTargets.PublishDebFilesToDebianRepo), + nameof(PublishTargets.PublishSharedFrameworkVersionBadge))] + public static BuildTargetResult PublishInstallerArtifacts(BuildTargetContext c) => c.Success(); + [Target( nameof(PublishTargets.PublishSharedHostInstallerFileToAzure), nameof(PublishTargets.PublishHostFxrInstallerFileToAzure), diff --git a/buildpipeline/Core-Setup-PortableLinux-x64.json b/buildpipeline/Core-Setup-PortableLinux-x64.json index 5626f166..6b53eeb0 100644 --- a/buildpipeline/Core-Setup-PortableLinux-x64.json +++ b/buildpipeline/Core-Setup-PortableLinux-x64.json @@ -95,6 +95,178 @@ "failOnStandardError": "false" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Copy built Portable binaries to staging directory", + "timeoutInMinutes": 0, + "task": { + "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "SourceFolder": "$(Build.SourcesDirectory)/artifacts/linux-x64/intermediate/sharedFrameworkPublish", + "Contents": "**", + "TargetFolder": "$(Build.StagingDirectory)/sharedFrameworkPublish", + "CleanTargetFolder": "false", + "OverWrite": "false", + "flattenFolders": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Ubuntu.14.04 docker image", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerbuild.sh", + "args": "-d $(Build.SourcesDirectory)/scripts/docker/ubuntu.14.04 -t ubuntu.14.04-coresetup", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Debian Installer in Ubuntu.14.04 docker container", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerrun-as-current-user.sh", + "args": "--rm $(DockerBuildEnvironmentVariables) -e CLI_NUGET_API_KEY -e CLI_NUGET_FEED_URL -e CLI_NUGET_SYMBOLS_FEED_URL -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code ubuntu.14.04-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Ubuntu.16.04 docker image", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerbuild.sh", + "args": "-d $(Build.SourcesDirectory)/scripts/docker/ubuntu.16.04 -t ubuntu.16.04-coresetup", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Debian Installer in Ubuntu.16.04 docker container", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerrun-as-current-user.sh", + "args": "--rm $(DockerBuildEnvironmentVariables) -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code ubuntu.16.04-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Ubuntu.16.10 docker image", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerbuild.sh", + "args": "-d $(Build.SourcesDirectory)/scripts/docker/ubuntu.16.10 -t ubuntu.16.10-coresetup", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Debian Installer in Ubuntu 16.10 docker container", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerrun-as-current-user.sh", + "args": "--rm $(DockerBuildEnvironmentVariables) -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code ubuntu.16.10-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Debian.8 docker image ", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerbuild.sh", + "args": "-d $(Build.SourcesDirectory)/scripts/docker/debian.8 -t debian.8-coresetup", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Debian Installer in Debian.8 docker container", + "timeoutInMinutes": 0, + "task": { + "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "scriptPath": "scripts/dockerrun-as-current-user.sh", + "args": "--rm $(DockerBuildEnvironmentVariables) -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code debian.8-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", + "disableAutoCwd": "false", + "cwd": "", + "failOnStandardError": "false" + } + }, { "enabled": true, "continueOnError": true, @@ -241,6 +413,33 @@ }, "NUGET_SYMBOLS_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + }, + "REPO_ID": { + "value": "579f8fb0fedca9aeeb399132" + }, + "REPO_USER": { + "value": "dotnet" + }, + "REPO_PASS": { + "value": "PassedViaPipeBuild" + }, + "REPO_SERVER": { + "value": "azure-apt-cat.cloudapp.net" + }, + "DockerBuildEnvironmentVariables": { + "value": "-e PORTABLE_BUILD_STAGING_LOCATION=/opt/sharedFrameworkPublish -e CONNECTION_STRING -e PUBLISH_TO_AZURE_BLOB -e REPO_ID -e REPO_USER -e REPO_PASS -e REPO_SERVER -e NUGET_FEED_URL -e NUGET_API_KEY -e NUGET_SYMBOLS_FEED_URL -e GITHUB_PASSWORD" + }, + "InstallerOnlyBuildArguments": { + "value": "Init,Prepare,InitPackage,GenerateVersionBadge,GenerateInstaller,TestInstaller,PublishInstallers" + }, + "CLI_NUGET_API_KEY": { + "value": "PassedViaPipeBuild" + }, + "CLI_NUGET_FEED_URL": { + "value": "https://dotnet.myget.org/F/cli-deps/api/v2/package" + }, + "CLI_NUGET_SYMBOLS_FEED_URL": { + "value": "https://dotnet.myget.org/F/cli-deps/symbols/api/v2/package" } }, "demands": [ @@ -265,6 +464,7 @@ "buildNumberFormat": "$(Date:yyyMMdd)$(Rev:.r)", "jobAuthorizationScope": "projectCollection", "jobTimeoutInMinutes": 90, + "jobCancelTimeoutInMinutes": 5, "badgeEnabled": true, "repository": { "properties": { @@ -288,23 +488,23 @@ }, "quality": "definition", "queue": { + "id": 36, + "name": "DotNet-Build", "pool": { "id": 39, "name": "DotNet-Build" - }, - "id": 36, - "name": "DotNet-Build" + } }, - "path": "\\", - "type": "build", "id": 4573, "name": "Core-Setup-PortableLinux-x64", + "path": "\\", + "type": "build", "project": { "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", "name": "DevDiv", "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097620 + "revision": 418097642 } } \ No newline at end of file diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 89b8e11d..0523f699 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -15,20 +15,6 @@ "BuildConfiguration": "Release" }, "Definitions": [ - { - "Name": "Core-Setup-Linux", - "Parameters": { - "PB_DockerOS": "debian.8", - "REPO_ID": "579f8fb0fedca9aeeb399132", - "REPO_USER": "dotnet", - "REPO_SERVER": "azure-apt-cat.cloudapp.net" - }, - "ReportingParameters": { - "OperatingSystem": "Debian 8.2", - "Type": "build/product/", - "Platform": "x64" - } - }, { "Name": "Core-Setup-Linux", "Parameters": { @@ -51,50 +37,6 @@ "Platform": "x64" } }, - { - "Name": "Core-Setup-Linux", - "Parameters": { - "PB_DockerOS": "ubuntu.14.04", - "REPO_ID": "562fbfe0b2d7d0e0a43780c4", - "REPO_USER": "dotnet", - "REPO_SERVER": "azure-apt-cat.cloudapp.net", - "CLI_NUGET_FEED_URL": "https://dotnet.myget.org/F/cli-deps/api/v2/package", - "CLI_NUGET_SYMBOLS_FEED_URL": "https://dotnet.myget.org/F/cli-deps/symbols/api/v2/package" - }, - "ReportingParameters": { - "OperatingSystem": "Ubuntu 14.04", - "Type": "build/product/", - "Platform": "x64" - } - }, - { - "Name": "Core-Setup-Linux", - "Parameters": { - "PB_DockerOS": "ubuntu.16.04", - "REPO_ID": "575f40f3797ef7280505232f", - "REPO_USER": "dotnet", - "REPO_SERVER": "azure-apt-cat.cloudapp.net" - }, - "ReportingParameters": { - "OperatingSystem": "Ubuntu 16.04", - "Type": "build/product/", - "Platform": "x64" - } - }, - { - "Name": "Core-Setup-Linux", - "Parameters": { - "PB_DockerOS": "ubuntu.16.10", - "REPO_ID": "575f40f3797ef7280505232f", - "REPO_USER": "dotnet", - "REPO_SERVER": "azure-apt-cat.cloudapp.net" - }, - "ReportingParameters": { - "OperatingSystem": "Ubuntu 16.10", - "Type": "build/product/", - "Platform": "x64" - } - }, { "Name": "Core-Setup-OSX-x64", "ReportingParameters": { diff --git a/scripts/dockerbuild.sh b/scripts/dockerbuild.sh new file mode 100755 index 00000000..6f15ca8e --- /dev/null +++ b/scripts/dockerbuild.sh @@ -0,0 +1,84 @@ +#!/usr/bin/env bash +# +# Copyright (c) .NET Foundation and contributors. All rights reserved. +# Licensed under the MIT license. See LICENSE file in the project root for full license information. +# + +set -e + +SOURCE="${BASH_SOURCE[0]}" +while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink + DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" + SOURCE="$(readlink "$SOURCE")" + [[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located +done +DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" + +cd "$DIR/.." + +while [[ $# > 0 ]]; do + key=$1 + + case $key in + -t|--tag) + DOCKER_TAG=$2 + shift + ;; + -d|--dockerfile) + DOCKERFILE=$2 + shift + ;; + -h|-?|--help) + echo "Usage: $0 [-d|--dockerfile ] [-t|--tag ] " + echo "" + echo "Options:" + echo " The path to the folder that contains a Dockerfile to use to create the build container" + echo " The name of docker image tag" + exit 0 + ;; + *) + break # the first non-switch we get ends parsing + ;; + esac + + shift +done + +# Executes a command and retries if it fails. +# NOTE: This function is the exact copy from init-docker.sh. +# Reason for not invoking init.docker.sh directly is since that script +# also performs cleanup, which we do not want in this case. +execute() { + local count=0 + local retries=5 + local waitFactor=6 + until "$@"; do + local exit=$? + count=$(( $count + 1 )) + if [ $count -lt $retries ]; then + local wait=$(( waitFactor ** (( count - 1 )) )) + echo "Retry $count/$retries exited $exit, retrying in $wait seconds..." + sleep $wait + else + say_err "Retry $count/$retries exited $exit, no more retries left." + return $exit + fi + done + + return 0 +} + +# Build the docker container (will be fast if it is already built) +echo "Building Docker Container using Dockerfile: $DOCKERFILE" + +# Get the name of Docker image. +image=$(grep -i "^FROM " "$DOCKERFILE/Dockerfile" | awk '{ print $2 }') + +# Explicitly pull the base image with retry logic. +# This eliminates intermittent failures during docker build caused by failing to retrieve the base image. +if [ ! -z "$image" ]; then + echo "Pulling Docker image $image" + execute docker pull $image +fi + +docker build --build-arg USER_ID=$(id -u) -t $DOCKER_TAG $DOCKERFILE diff --git a/scripts/dockerrun.sh b/scripts/dockerrun.sh index 80f3d089..4d5a3d85 100755 --- a/scripts/dockerrun.sh +++ b/scripts/dockerrun.sh @@ -87,44 +87,8 @@ fi # VSO [ ! -z "$BUILD_BUILDID" ] && DOTNET_BUILD_CONTAINER_NAME="${BUILD_BUILDID}-${BUILD_BUILDNUMBER}" -# Executes a command and retries if it fails. -# NOTE: This function is the exact copy from init-docker.sh. -# Reason for not invoking init.docker.sh directly is since that script -# also performs cleanup, which we do not want in this case. -execute() { - local count=0 - local retries=5 - local waitFactor=6 - until "$@"; do - local exit=$? - count=$(( $count + 1 )) - if [ $count -lt $retries ]; then - local wait=$(( waitFactor ** (( count - 1 )) )) - echo "Retry $count/$retries exited $exit, retrying in $wait seconds..." - sleep $wait - else - say_err "Retry $count/$retries exited $exit, no more retries left." - return $exit - fi - done - - return 0 -} - -# Build the docker container (will be fast if it is already built) -echo "Building Docker Container using Dockerfile: $DOCKERFILE" - -# Get the name of Docker image. -image=$(grep -i "^FROM " "$DOCKERFILE/Dockerfile" | awk '{ print $2 }') - -# Explicitly pull the base image with retry logic. -# This eliminates intermittent failures during docker build caused by failing to retrieve the base image. -if [ ! -z "$image" ]; then - echo "Pulling Docker image $image" - execute docker pull $image -fi - -docker build --build-arg USER_ID=$(id -u) -t $DOTNET_BUILD_CONTAINER_TAG $DOCKERFILE +#Build the docker image +"$DIR/dockerbuild.sh" -t $DOTNET_BUILD_CONTAINER_TAG -d $DOCKERFILE # Run the build in the container echo "Launching build in Docker Container" From f578dd5bcdd46d798626789a73149e7825ef3feb Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Wed, 19 Apr 2017 09:04:15 -0700 Subject: [PATCH 193/625] Updating CoreFx, CoreClr, Standard to preview1-25218-03, preview1-25219-03, preview1-25219-01 respectively (#2110) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 8 ++++---- .../project.json.template | 8 ++++---- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 521eb241..476f4d3d 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25218-03"; - public static readonly string JitVersion = "2.0.0-preview1-25218-03"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25219-03"; + public static readonly string JitVersion = "2.0.0-preview1-25219-03"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index 199f30e2..804aa616 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-02" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-03" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index e355d6e9..c5ce97b0 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25218-02\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25218-03\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 9f2fa4dc..fc06315e 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25218-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25218-03", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25218-03", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25219-03", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-02", - "NETStandard.Library": "2.0.0-preview1-25218-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-03", + "NETStandard.Library": "2.0.0-preview1-25219-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index a80a9717..ca237baa 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25218-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25218-03", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-02", - "NETStandard.Library": "2.0.0-preview1-25218-01", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25218-03", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25219-03", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-03", + "NETStandard.Library": "2.0.0-preview1-25219-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From 5f86fc25c32f9e5132aa1ec86eb6c22b80d3ac72 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Wed, 19 Apr 2017 11:18:33 -0700 Subject: [PATCH 194/625] Updating CoreFx, CoreClr to preview1-25219-04, preview1-25219-04 respectively (#2112) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 6 +++--- .../project.json.template | 6 +++--- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 476f4d3d..b72bf2f6 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25219-03"; - public static readonly string JitVersion = "2.0.0-preview1-25219-03"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25219-04"; + public static readonly string JitVersion = "2.0.0-preview1-25219-04"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index 804aa616..52ed57a4 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-03" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25219-04" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index c5ce97b0..54291c0d 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25218-03\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25219-04\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index fc06315e..5ca08393 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25218-03", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25219-03", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25219-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25219-04", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-03", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25219-04", "NETStandard.Library": "2.0.0-preview1-25219-01" }, "frameworks": { diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index ca237baa..4338aa9c 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25218-03", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25219-03", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25218-03", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25219-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25219-04", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25219-04", "NETStandard.Library": "2.0.0-preview1-25219-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", From 3478757a98e4fb556b4becdb41b7c9ca7e726cc5 Mon Sep 17 00:00:00 2001 From: Peter Marcu Date: Wed, 19 Apr 2017 14:25:47 -0700 Subject: [PATCH 195/625] Update dummy.txt --- Documentation/dummy.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/dummy.txt b/Documentation/dummy.txt index 99bb40e9..1cfd054e 100644 --- a/Documentation/dummy.txt +++ b/Documentation/dummy.txt @@ -1 +1 @@ -4/10/2017 09:03:50 AM +4/19/2017 02:25:00 PM From 53197ea64e61759132ef1929f6780e825893b3f3 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Wed, 19 Apr 2017 15:44:16 -0700 Subject: [PATCH 196/625] Updating CoreClr to preview1-25219-05 (#2114) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- .../project.json.template | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index b72bf2f6..9e98ff61 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25219-04"; - public static readonly string JitVersion = "2.0.0-preview1-25219-04"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25219-05"; + public static readonly string JitVersion = "2.0.0-preview1-25219-05"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 5ca08393..fd339786 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25219-04", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25219-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25219-05", "Microsoft.DiaSymReader.Native": "1.4.1", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25219-04", "NETStandard.Library": "2.0.0-preview1-25219-01" diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 4338aa9c..bad8bd60 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -2,7 +2,7 @@ "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25219-04", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25219-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25219-05", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25219-04", "NETStandard.Library": "2.0.0-preview1-25219-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", From 98f9b432b011840eacd76cde4243918e904e6293 Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Wed, 19 Apr 2017 18:12:01 -0500 Subject: [PATCH 197/625] Disable publish to Azure for testing release/2.0.0 builds. This change will be reverted after testing is complete. --- buildpipeline/Core-Setup-CrossBuild.json | 2 +- buildpipeline/Core-Setup-Linux.json | 2 +- buildpipeline/Core-Setup-OSX-x64.json | 2 +- buildpipeline/Core-Setup-PortableLinux-x64.json | 2 +- buildpipeline/Core-Setup-RHEL7-x64.json | 2 +- buildpipeline/Core-Setup-Signing-Windows-x64.json | 4 ++-- buildpipeline/Core-Setup-Signing-Windows-x86.json | 4 ++-- buildpipeline/Core-Setup-Windows-arm32.json | 2 +- buildpipeline/Core-Setup-Windows-arm64.json | 2 +- 9 files changed, 11 insertions(+), 11 deletions(-) diff --git a/buildpipeline/Core-Setup-CrossBuild.json b/buildpipeline/Core-Setup-CrossBuild.json index 84c624c7..e5abc257 100644 --- a/buildpipeline/Core-Setup-CrossBuild.json +++ b/buildpipeline/Core-Setup-CrossBuild.json @@ -251,7 +251,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "true", + "value": "false", "allowOverride": true }, "REPO_ID": { diff --git a/buildpipeline/Core-Setup-Linux.json b/buildpipeline/Core-Setup-Linux.json index 2de3dea3..06434212 100644 --- a/buildpipeline/Core-Setup-Linux.json +++ b/buildpipeline/Core-Setup-Linux.json @@ -207,7 +207,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "true", + "value": "false", "allowOverride": true }, "NUGET_FEED_URL": { diff --git a/buildpipeline/Core-Setup-OSX-x64.json b/buildpipeline/Core-Setup-OSX-x64.json index 1cd99bc4..08a8e4fb 100644 --- a/buildpipeline/Core-Setup-OSX-x64.json +++ b/buildpipeline/Core-Setup-OSX-x64.json @@ -154,7 +154,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "true", + "value": "false", "allowOverride": true }, "NUGET_FEED_URL": { diff --git a/buildpipeline/Core-Setup-PortableLinux-x64.json b/buildpipeline/Core-Setup-PortableLinux-x64.json index 6b53eeb0..82cfebd0 100644 --- a/buildpipeline/Core-Setup-PortableLinux-x64.json +++ b/buildpipeline/Core-Setup-PortableLinux-x64.json @@ -386,7 +386,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "true", + "value": "false", "allowOverride": true }, "NUGET_FEED_URL": { diff --git a/buildpipeline/Core-Setup-RHEL7-x64.json b/buildpipeline/Core-Setup-RHEL7-x64.json index 4fc44bae..7998aa14 100644 --- a/buildpipeline/Core-Setup-RHEL7-x64.json +++ b/buildpipeline/Core-Setup-RHEL7-x64.json @@ -214,7 +214,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "true", + "value": "false", "allowOverride": true }, "NUGET_FEED_URL": { diff --git a/buildpipeline/Core-Setup-Signing-Windows-x64.json b/buildpipeline/Core-Setup-Signing-Windows-x64.json index 0a0417cd..204f1d62 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x64.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x64.json @@ -366,7 +366,7 @@ "inputs": {} }, { - "enabled": true, + "enabled": false, "continueOnError": false, "alwaysRun": false, "displayName": "Publish Build Artifacts", @@ -466,7 +466,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "true" + "value": "false" }, "NUGET_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" diff --git a/buildpipeline/Core-Setup-Signing-Windows-x86.json b/buildpipeline/Core-Setup-Signing-Windows-x86.json index dd712eaa..3b3cd709 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x86.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x86.json @@ -339,7 +339,7 @@ "inputs": {} }, { - "enabled": true, + "enabled": false, "continueOnError": false, "alwaysRun": false, "displayName": "Publish Build Artifacts", @@ -439,7 +439,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "true" + "value": "false" }, "NUGET_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" diff --git a/buildpipeline/Core-Setup-Windows-arm32.json b/buildpipeline/Core-Setup-Windows-arm32.json index d09b53d0..7bed0af7 100644 --- a/buildpipeline/Core-Setup-Windows-arm32.json +++ b/buildpipeline/Core-Setup-Windows-arm32.json @@ -123,7 +123,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "true", + "value": "false", "allowOverride": true }, "PB_PortableBuild": { diff --git a/buildpipeline/Core-Setup-Windows-arm64.json b/buildpipeline/Core-Setup-Windows-arm64.json index 7dbb7510..b46c30ce 100644 --- a/buildpipeline/Core-Setup-Windows-arm64.json +++ b/buildpipeline/Core-Setup-Windows-arm64.json @@ -123,7 +123,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "true", + "value": "false", "allowOverride": true }, "PB_PortableBuild": { From 12fa96a5d8c136e0a25871be257b0b608190901d Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Wed, 19 Apr 2017 18:15:27 -0500 Subject: [PATCH 198/625] Revert "Disable publish to Azure for testing release/2.0.0 builds. This change will be reverted after testing is complete." This reverts commit 98f9b432b011840eacd76cde4243918e904e6293. --- buildpipeline/Core-Setup-CrossBuild.json | 2 +- buildpipeline/Core-Setup-Linux.json | 2 +- buildpipeline/Core-Setup-OSX-x64.json | 2 +- buildpipeline/Core-Setup-PortableLinux-x64.json | 2 +- buildpipeline/Core-Setup-RHEL7-x64.json | 2 +- buildpipeline/Core-Setup-Signing-Windows-x64.json | 4 ++-- buildpipeline/Core-Setup-Signing-Windows-x86.json | 4 ++-- buildpipeline/Core-Setup-Windows-arm32.json | 2 +- buildpipeline/Core-Setup-Windows-arm64.json | 2 +- 9 files changed, 11 insertions(+), 11 deletions(-) diff --git a/buildpipeline/Core-Setup-CrossBuild.json b/buildpipeline/Core-Setup-CrossBuild.json index e5abc257..84c624c7 100644 --- a/buildpipeline/Core-Setup-CrossBuild.json +++ b/buildpipeline/Core-Setup-CrossBuild.json @@ -251,7 +251,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "false", + "value": "true", "allowOverride": true }, "REPO_ID": { diff --git a/buildpipeline/Core-Setup-Linux.json b/buildpipeline/Core-Setup-Linux.json index 06434212..2de3dea3 100644 --- a/buildpipeline/Core-Setup-Linux.json +++ b/buildpipeline/Core-Setup-Linux.json @@ -207,7 +207,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "false", + "value": "true", "allowOverride": true }, "NUGET_FEED_URL": { diff --git a/buildpipeline/Core-Setup-OSX-x64.json b/buildpipeline/Core-Setup-OSX-x64.json index 08a8e4fb..1cd99bc4 100644 --- a/buildpipeline/Core-Setup-OSX-x64.json +++ b/buildpipeline/Core-Setup-OSX-x64.json @@ -154,7 +154,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "false", + "value": "true", "allowOverride": true }, "NUGET_FEED_URL": { diff --git a/buildpipeline/Core-Setup-PortableLinux-x64.json b/buildpipeline/Core-Setup-PortableLinux-x64.json index 82cfebd0..6b53eeb0 100644 --- a/buildpipeline/Core-Setup-PortableLinux-x64.json +++ b/buildpipeline/Core-Setup-PortableLinux-x64.json @@ -386,7 +386,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "false", + "value": "true", "allowOverride": true }, "NUGET_FEED_URL": { diff --git a/buildpipeline/Core-Setup-RHEL7-x64.json b/buildpipeline/Core-Setup-RHEL7-x64.json index 7998aa14..4fc44bae 100644 --- a/buildpipeline/Core-Setup-RHEL7-x64.json +++ b/buildpipeline/Core-Setup-RHEL7-x64.json @@ -214,7 +214,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "false", + "value": "true", "allowOverride": true }, "NUGET_FEED_URL": { diff --git a/buildpipeline/Core-Setup-Signing-Windows-x64.json b/buildpipeline/Core-Setup-Signing-Windows-x64.json index 204f1d62..0a0417cd 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x64.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x64.json @@ -366,7 +366,7 @@ "inputs": {} }, { - "enabled": false, + "enabled": true, "continueOnError": false, "alwaysRun": false, "displayName": "Publish Build Artifacts", @@ -466,7 +466,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "false" + "value": "true" }, "NUGET_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" diff --git a/buildpipeline/Core-Setup-Signing-Windows-x86.json b/buildpipeline/Core-Setup-Signing-Windows-x86.json index 3b3cd709..dd712eaa 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x86.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x86.json @@ -339,7 +339,7 @@ "inputs": {} }, { - "enabled": false, + "enabled": true, "continueOnError": false, "alwaysRun": false, "displayName": "Publish Build Artifacts", @@ -439,7 +439,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "false" + "value": "true" }, "NUGET_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" diff --git a/buildpipeline/Core-Setup-Windows-arm32.json b/buildpipeline/Core-Setup-Windows-arm32.json index 7bed0af7..d09b53d0 100644 --- a/buildpipeline/Core-Setup-Windows-arm32.json +++ b/buildpipeline/Core-Setup-Windows-arm32.json @@ -123,7 +123,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "false", + "value": "true", "allowOverride": true }, "PB_PortableBuild": { diff --git a/buildpipeline/Core-Setup-Windows-arm64.json b/buildpipeline/Core-Setup-Windows-arm64.json index b46c30ce..7dbb7510 100644 --- a/buildpipeline/Core-Setup-Windows-arm64.json +++ b/buildpipeline/Core-Setup-Windows-arm64.json @@ -123,7 +123,7 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "false", + "value": "true", "allowOverride": true }, "PB_PortableBuild": { From 009f31c6154df2a7aba19c4d00420a63a757f04a Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Wed, 19 Apr 2017 17:38:09 -0700 Subject: [PATCH 199/625] FinalizeBuild step is skipped with below message : (#2118) 2017-04-19T22:16:31.9992830Z [TARGET >] [....] [00:02:33.737] FinalizeBuild (Microsoft.DotNet.Host.Build.PublishTargets.FinalizeBuild) 2017-04-19T22:16:32.3717000Z Not all builds complete, badge not found: sharedfx_CentOS_x64 This change will complete the intended fix for : https://github.com/dotnet/core-setup/pull/2087 Finalize step expects the listed badges and since centos are not being built anymore, it should not have entry in the list of expected badge list .Finalize step is marked as complete with below message : --- build_projects/dotnet-host-build/PublishTargets.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index 38d62be5..03e71e4a 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -155,7 +155,6 @@ namespace Microsoft.DotNet.Host.Build "osx.x64.portable.version", "debian.8.armel.version", "debian.x64.version", - "centos.x64.version", "fedora.24.x64.version", "opensuse.42.1.x64.version" }; @@ -238,7 +237,6 @@ namespace Microsoft.DotNet.Host.Build { "sharedfx_osx_portable_x64", false }, // { "sharedfx_Debian_8_armel", false }, { "sharedfx_Debian_x64", false }, - { "sharedfx_CentOS_x64", false }, { "sharedfx_Fedora_24_x64", false }, { "sharedfx_openSUSE_42_1_x64", false } }; From 6b305e8b5ddf6c08db828e9604e20ec5231a8864 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Wed, 19 Apr 2017 20:42:45 -0700 Subject: [PATCH 200/625] Updating CoreFx, CoreClr to preview1-25220-01, preview1-25220-01 respectively (#2121) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 6 +++--- .../project.json.template | 6 +++--- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 9e98ff61..5f8c5b8a 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25219-05"; - public static readonly string JitVersion = "2.0.0-preview1-25219-05"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25220-01"; + public static readonly string JitVersion = "2.0.0-preview1-25220-01"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index 52ed57a4..22720cc8 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25219-04" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-01" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 54291c0d..8e5bcc95 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25219-04\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25220-01\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index fd339786..09b9e366 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25219-04", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25219-05", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25220-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25220-01", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25219-04", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-01", "NETStandard.Library": "2.0.0-preview1-25219-01" }, "frameworks": { diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index bad8bd60..7b325222 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25219-04", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25219-05", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25219-04", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25220-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25220-01", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-01", "NETStandard.Library": "2.0.0-preview1-25219-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", From 3a1bf35a83d0e29854f980cf2ab0c9129ada3db9 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Thu, 20 Apr 2017 07:12:08 -0700 Subject: [PATCH 201/625] Updating CoreFx, CoreClr, Standard to preview1-25220-02, preview1-25220-02, preview1-25220-01 respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 8 ++++---- .../project.json.template | 8 ++++---- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 5f8c5b8a..500b1fac 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25220-01"; - public static readonly string JitVersion = "2.0.0-preview1-25220-01"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25220-02"; + public static readonly string JitVersion = "2.0.0-preview1-25220-02"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index 22720cc8..fc2a5c0f 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-02" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 8e5bcc95..e5588342 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25220-01\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25220-02\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 09b9e366..cb1ec5da 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25220-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25220-01", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25220-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25220-02", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-01", - "NETStandard.Library": "2.0.0-preview1-25219-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-02", + "NETStandard.Library": "2.0.0-preview1-25220-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 7b325222..53548a0c 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25220-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25220-01", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-01", - "NETStandard.Library": "2.0.0-preview1-25219-01", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25220-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25220-02", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-02", + "NETStandard.Library": "2.0.0-preview1-25220-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From 87ca3f37131e9a619bcc5baeb940b43f861a941d Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 20 Apr 2017 10:53:20 -0500 Subject: [PATCH 202/625] Update update-dependencies to use VersionTools. --- .../Utils/BranchInfo.cs | 9 - .../BuildContextProperties.cs | 30 -- build_projects/update-dependencies/Config.cs | 12 +- .../update-dependencies/DependencyInfo.cs | 23 -- build_projects/update-dependencies/Program.cs | 196 +++++++++++- .../update-dependencies/PushPRTargets.cs | 162 ---------- .../update-dependencies/UpdateFilesTargets.cs | 299 ------------------ .../update-dependencies/project.json.template | 19 +- .../update-dependencies.ps1 | 15 +- .../update-dependencies.sh | 12 +- 10 files changed, 215 insertions(+), 562 deletions(-) delete mode 100644 build_projects/update-dependencies/BuildContextProperties.cs delete mode 100644 build_projects/update-dependencies/DependencyInfo.cs delete mode 100644 build_projects/update-dependencies/PushPRTargets.cs delete mode 100644 build_projects/update-dependencies/UpdateFilesTargets.cs diff --git a/build_projects/shared-build-targets-utils/Utils/BranchInfo.cs b/build_projects/shared-build-targets-utils/Utils/BranchInfo.cs index 7927b428..72f36508 100644 --- a/build_projects/shared-build-targets-utils/Utils/BranchInfo.cs +++ b/build_projects/shared-build-targets-utils/Utils/BranchInfo.cs @@ -1,14 +1,5 @@ -using System; using System.Collections.Generic; using System.IO; -using System.Linq; -using System.Net.Http; -using System.Text; -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.WindowsAzure.Storage; -using Microsoft.WindowsAzure.Storage.Blob; - -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; namespace Microsoft.DotNet.Cli.Build { diff --git a/build_projects/update-dependencies/BuildContextProperties.cs b/build_projects/update-dependencies/BuildContextProperties.cs deleted file mode 100644 index 6cd48839..00000000 --- a/build_projects/update-dependencies/BuildContextProperties.cs +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using System.Collections.Generic; -using Microsoft.DotNet.Cli.Build.Framework; - -namespace Microsoft.DotNet.Scripts -{ - public static class BuildContextProperties - { - public static List GetDependencyInfos(this BuildTargetContext c) - { - const string propertyName = "DependencyInfos"; - - List dependencyInfos; - object dependencyInfosObj; - if (c.BuildContext.Properties.TryGetValue(propertyName, out dependencyInfosObj)) - { - dependencyInfos = (List)dependencyInfosObj; - } - else - { - dependencyInfos = new List(); - c.BuildContext[propertyName] = dependencyInfos; - } - - return dependencyInfos; - } - } -} diff --git a/build_projects/update-dependencies/Config.cs b/build_projects/update-dependencies/Config.cs index c9a3f176..fd6f7703 100644 --- a/build_projects/update-dependencies/Config.cs +++ b/build_projects/update-dependencies/Config.cs @@ -19,8 +19,8 @@ namespace Microsoft.DotNet.Scripts /// /// The following Environment Variables can optionally be specified: /// - /// COREFX_VERSION_URL - The Url to get the current CoreFx version. (ex. "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/corefx/master/Latest_Packages.txt") - /// CORECLR_VERSION_URL - The Url to get the current CoreCLR version. (ex. "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/coreclr/master/Latest_Packages.txt") + /// COREFX_VERSION_URL - The Url to get the current CoreFx version. (ex. "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/corefx/master/") + /// CORECLR_VERSION_URL - The Url to get the current CoreCLR version. (ex. "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/coreclr/master/") /// GITHUB_ORIGIN_OWNER - The owner of the GitHub fork to push the commit and create the PR from. (ex. "dotnet-bot") /// GITHUB_UPSTREAM_OWNER - The owner of the GitHub base repo to create the PR to. (ex. "dotnet") /// GITHUB_PROJECT - The repo name under the ORIGIN and UPSTREAM owners. (ex. "cli") @@ -36,9 +36,9 @@ namespace Microsoft.DotNet.Scripts private Lazy _userName = new Lazy(() => GetEnvironmentVariable("GITHUB_USER")); private Lazy _email = new Lazy(() => GetEnvironmentVariable("GITHUB_EMAIL")); private Lazy _password = new Lazy(() => GetEnvironmentVariable("GITHUB_PASSWORD")); - private Lazy _coreFxVersionUrl = new Lazy(() => GetEnvironmentVariable("COREFX_VERSION_URL", "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/corefx/master/Latest_Packages.txt")); - private Lazy _coreClrVersionUrl = new Lazy(() => GetEnvironmentVariable("CORECLR_VERSION_URL", "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/coreclr/master/Latest_Packages.txt")); - private Lazy _standardVersionUrl = new Lazy(() => GetEnvironmentVariable("STANDARD_VERSION_URL", "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/standard/master/Latest_Packages.txt")); + private Lazy _coreFxVersionUrl = new Lazy(() => GetEnvironmentVariable("COREFX_VERSION_URL", "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/corefx/master/")); + private Lazy _coreClrVersionUrl = new Lazy(() => GetEnvironmentVariable("CORECLR_VERSION_URL", "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/coreclr/master/")); + private Lazy _standardVersionUrl = new Lazy(() => GetEnvironmentVariable("STANDARD_VERSION_URL", "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/standard/master/")); private Lazy _gitHubOriginOwner; private Lazy _gitHubUpstreamOwner = new Lazy(() => GetEnvironmentVariable("GITHUB_UPSTREAM_OWNER", "dotnet")); private Lazy _gitHubProject = new Lazy(() => GetEnvironmentVariable("GITHUB_PROJECT", "core-setup")); @@ -74,7 +74,7 @@ namespace Microsoft.DotNet.Scripts if (value == null) { - throw new BuildFailureException($"Can't find environment variable '{name}'."); + throw new InvalidOperationException($"Can't find environment variable '{name}'."); } return value; diff --git a/build_projects/update-dependencies/DependencyInfo.cs b/build_projects/update-dependencies/DependencyInfo.cs deleted file mode 100644 index 48b4d8f8..00000000 --- a/build_projects/update-dependencies/DependencyInfo.cs +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using System.Collections.Generic; -using NuGet.Versioning; - -namespace Microsoft.DotNet.Scripts -{ - public class DependencyInfo - { - public string Name { get; set; } - public List NewVersions { get; set; } - public string NewReleaseVersion { get; set; } - - public bool IsUpdated { get; set; } - } - - public class PackageInfo - { - public string Id { get; set; } - public NuGetVersion Version { get; set; } - } -} diff --git a/build_projects/update-dependencies/Program.cs b/build_projects/update-dependencies/Program.cs index 8452be58..d8f6a0c3 100644 --- a/build_projects/update-dependencies/Program.cs +++ b/build_projects/update-dependencies/Program.cs @@ -2,24 +2,200 @@ // Licensed under the MIT license. See LICENSE file in the project root for full license information. using Microsoft.DotNet.Cli.Build.Framework; +using Microsoft.DotNet.VersionTools; +using Microsoft.DotNet.VersionTools.Automation; +using Microsoft.DotNet.VersionTools.Dependencies; +using NuGet.Versioning; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text.RegularExpressions; +using System.Threading.Tasks; namespace Microsoft.DotNet.Scripts { public class Program { - public static int Main(string[] args) + private static readonly Config s_config = Config.Instance; + + public static void Main(string[] args) { DebugHelper.HandleDebugSwitch(ref args); - return BuildSetup.Create(".NET core-setup Dependency Updater") - .UseTargets(new[] + bool onlyUpdate; + ParseArgs(args, out onlyUpdate); + + List buildInfos = new List(); + + buildInfos.Add(GetBuildInfo("CoreFx", s_config.CoreFxVersionUrl, fetchLatestReleaseFile: false)); + buildInfos.Add(GetBuildInfo("CoreClr", s_config.CoreClrVersionUrl, fetchLatestReleaseFile: false)); + buildInfos.Add(GetBuildInfo("Standard", s_config.StandardVersionUrl, fetchLatestReleaseFile: false)); + + IEnumerable updaters = GetUpdaters(); + var dependencyBuildInfos = buildInfos.Select(buildInfo => + new DependencyBuildInfo( + buildInfo, + upgradeStableVersions: true, + disabledPackages: Enumerable.Empty())); + DependencyUpdateResults updateResults = DependencyUpdateUtils.Update(updaters, dependencyBuildInfos); + + if (!onlyUpdate && updateResults.ChangesDetected()) + { + GitHubAuth gitHubAuth = new GitHubAuth(s_config.Password, s_config.UserName, s_config.Email); + GitHubProject origin = new GitHubProject(s_config.GitHubProject, s_config.UserName); + GitHubBranch upstreamBranch = new GitHubBranch( + s_config.GitHubUpstreamBranch, + new GitHubProject(s_config.GitHubProject, s_config.GitHubUpstreamOwner)); + + string suggestedMessage = updateResults.GetSuggestedCommitMessage(); + string body = string.Empty; + if (s_config.GitHubPullRequestNotifications.Any()) { - new BuildTarget("Default", "Dependency Updater Goals", new [] { "UpdateFiles", "PushPR" }), - new BuildTarget("UpdateFiles", "Dependency Updater Goals"), - new BuildTarget("PushPR", "Dependency Updater Goals"), - }) - .UseAllTargetsFromAssembly() - .Run(args); + body += PullRequestCreator.NotificationString(s_config.GitHubPullRequestNotifications); + } + + new PullRequestCreator(gitHubAuth, origin, upstreamBranch) + .CreateOrUpdateAsync( + suggestedMessage, + suggestedMessage + $" ({upstreamBranch.Name})", + body) + .Wait(); + } + } + + private static bool ParseArgs(string[] args, out bool updateOnly) + { + updateOnly = false; + + for (int i = 0; i < args.Length; i++) + { + if (string.Equals(args[i], "--update", StringComparison.OrdinalIgnoreCase)) + { + updateOnly = true; + } + if (args[i] == "-e") + { + i++; + while (i < args.Length && !args[i].StartsWith("-", StringComparison.Ordinal)) + { + int idx = args[i].IndexOf('='); + if (idx < 0) + { + Console.Error.WriteLine($"Unrecognized argument '{args[i]}'"); + return false; + } + + string name = args[i].Substring(0, idx); + string value = args[i].Substring(idx + 1); + Environment.SetEnvironmentVariable(name, value); + i++; + } + } + } + + return true; + } + + private static BuildInfo GetBuildInfo(string name, string packageVersionsUrl, bool fetchLatestReleaseFile = true) + { + const string FileUrlProtocol = "file://"; + + if (packageVersionsUrl.StartsWith(FileUrlProtocol, StringComparison.Ordinal)) + { + return LocalFileGetAsync( + name, + packageVersionsUrl.Substring(FileUrlProtocol.Length), + fetchLatestReleaseFile) + .Result; + } + else + { + return BuildInfo.Get(name, packageVersionsUrl, fetchLatestReleaseFile); + } + } + + private static async Task LocalFileGetAsync( + string name, + string path, + bool fetchLatestReleaseFile = true) + { + string latestPackagesPath = Path.Combine(path, BuildInfo.LatestPackagesTxtFilename); + using (var packageFileStream = File.OpenRead(latestPackagesPath)) + using (var packageReader = new StreamReader(packageFileStream)) + { + Dictionary packages = await BuildInfo.ReadPackageListAsync(packageReader); + + string latestReleaseVersion; + if (fetchLatestReleaseFile) + { + string latestReleasePath = Path.Combine(path, BuildInfo.LatestTxtFilename); + latestReleaseVersion = File.ReadLines(latestReleasePath).First().Trim(); + } + else + { + latestReleaseVersion = FindLatestReleaseFromPackages(packages); + } + + return new BuildInfo + { + Name = name, + LatestPackages = packages, + LatestReleaseVersion = latestReleaseVersion + }; + } + } + + private static string FindLatestReleaseFromPackages(IDictionary packages) + { + IEnumerable versions = packages.Values + .Select(versionString => new NuGetVersion(versionString)); + + return + versions.FirstOrDefault(v => v.IsPrerelease)?.Release ?? + // if there are no prerelease versions, just grab the first version + versions.FirstOrDefault()?.ToNormalizedString(); + } + + private static IEnumerable GetUpdaters() + { + yield return CreateProjectJsonUpdater(); + + yield return CreateDependencyVersionsUpdater("CoreCLRVersion", "transport.Microsoft.NETCore.Runtime.CoreCLR"); + yield return CreateDependencyVersionsUpdater("JitVersion", "transport.Microsoft.NETCore.Jit"); + + yield return CreateRegexUpdater(Path.Combine("pkg", "dir.props"), new Regex(@"Microsoft\.NETCore\.Platforms\\(?.*)\\runtime\.json"), "Microsoft.NETCore.Platforms"); + } + + private static IDependencyUpdater CreateProjectJsonUpdater() + { + var projectJsonFiles = new List + { + Path.Combine(Dirs.PkgProjects, "Microsoft.NETCore.App", "project.json.template"), + Path.Combine(Dirs.PkgProjects, "Microsoft.NETCore.UniversalWindowsPlatform", "project.json.template"), + Path.Combine(Dirs.PkgDeps, "project.json") + }; + + return new ProjectJsonUpdater(projectJsonFiles); + } + + private static IDependencyUpdater CreateDependencyVersionsUpdater(string dependencyPropertyName, string packageId) + { + string dependencyVersionsPath = Path.Combine("build_projects", "shared-build-targets-utils", "DependencyVersions.cs"); + Regex dependencyVersionsRegex = new Regex($@"{dependencyPropertyName} = ""(?.*)"";"); + + return CreateRegexUpdater(dependencyVersionsPath, dependencyVersionsRegex, packageId); + } + + private static IDependencyUpdater CreateRegexUpdater(string repoRelativePath, Regex regex, string packageId) + { + return new FileRegexPackageUpdater() + { + Path = Path.Combine(Dirs.RepoRoot, repoRelativePath), + PackageId = packageId, + Regex = regex, + VersionGroupName = "version" + }; } } -} +} \ No newline at end of file diff --git a/build_projects/update-dependencies/PushPRTargets.cs b/build_projects/update-dependencies/PushPRTargets.cs deleted file mode 100644 index 8968ec10..00000000 --- a/build_projects/update-dependencies/PushPRTargets.cs +++ /dev/null @@ -1,162 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using System; -using System.Linq; -using Microsoft.DotNet.Cli.Build.Framework; -using Octokit; - -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; - -namespace Microsoft.DotNet.Scripts -{ - /// - /// Creates a GitHub Pull Request for the current changes in the repo. - /// - public static class PushPRTargets - { - private static readonly Config s_config = Config.Instance; - - [Target(nameof(CommitChanges), nameof(CreatePR))] - public static BuildTargetResult PushPR(BuildTargetContext c) => c.Success(); - - /// - /// Commits all the current changes in the repo and pushes the commit to a remote - /// so a PR can be created for it. - /// - [Target] - public static BuildTargetResult CommitChanges(BuildTargetContext c) - { - CommandResult statusResult = Cmd("git", "status", "--porcelain") - .CaptureStdOut() - .Execute(); - statusResult.EnsureSuccessful(); - - bool hasModifiedFiles = !string.IsNullOrWhiteSpace(statusResult.StdOut); - bool hasUpdatedDependencies = c.GetDependencyInfos().Where(d => d.IsUpdated).Any(); - - if (hasModifiedFiles != hasUpdatedDependencies) - { - return c.Failed($"'git status' does not match DependencyInfo information. Git has modified files: {hasModifiedFiles}. DependencyInfo is updated: {hasUpdatedDependencies}."); - } - - if (!hasUpdatedDependencies) - { - c.Warn("Dependencies are currently up to date"); - return c.Success(); - } - - string userName = s_config.UserName; - string email = s_config.Email; - - string commitMessage = GetCommitMessage(c); - - Cmd("git", "commit", "-a", "-m", commitMessage, "--author", $"{userName} <{email}>") - .EnvironmentVariable("GIT_COMMITTER_NAME", userName) - .EnvironmentVariable("GIT_COMMITTER_EMAIL", email) - .Execute() - .EnsureSuccessful(); - - string remoteUrl = $"github.com/{s_config.GitHubOriginOwner}/{s_config.GitHubProject}.git"; - string remoteBranchName = $"UpdateDependencies{DateTime.UtcNow.ToString("yyyyMMddhhmmss")}"; - string refSpec = $"HEAD:refs/heads/{remoteBranchName}"; - - string logMessage = $"git push https://{remoteUrl} {refSpec}"; - BuildReporter.BeginSection("EXEC", logMessage); - - CommandResult pushResult = - Cmd("git", "push", $"https://{userName}:{s_config.Password}@{remoteUrl}", refSpec) - .QuietBuildReporter() // we don't want secrets showing up in our logs - .CaptureStdErr() // git push will write to StdErr upon success, disable that - .CaptureStdOut() - .Execute(); - - var message = logMessage + $" exited with {pushResult.ExitCode}"; - if (pushResult.ExitCode == 0) - { - BuildReporter.EndSection("EXEC", message.Green(), success: true); - } - else - { - BuildReporter.EndSection("EXEC", message.Red().Bold(), success: false); - } - - pushResult.EnsureSuccessful(suppressOutput: true); - - c.SetRemoteBranchName(remoteBranchName); - - return c.Success(); - } - - /// - /// Creates a GitHub PR for the remote branch created above. - /// - [Target] - public static BuildTargetResult CreatePR(BuildTargetContext c) - { - string remoteBranchName = c.GetRemoteBranchName(); - string commitMessage = c.GetCommitMessage(); - - NewPullRequest prInfo = new NewPullRequest( - $"[{s_config.GitHubUpstreamBranch}] {commitMessage}", - s_config.GitHubOriginOwner + ":" + remoteBranchName, - s_config.GitHubUpstreamBranch); - - string[] prNotifications = s_config.GitHubPullRequestNotifications; - if (prNotifications.Length > 0) - { - prInfo.Body = $"/cc @{string.Join(" @", prNotifications)}"; - } - - GitHubClient gitHub = new GitHubClient(new ProductHeaderValue("dotnetDependencyUpdater")); - - gitHub.Credentials = new Credentials(s_config.Password); - - PullRequest createdPR = gitHub.PullRequest.Create(s_config.GitHubUpstreamOwner, s_config.GitHubProject, prInfo).Result; - c.Info($"Created Pull Request: {createdPR.HtmlUrl}"); - - return c.Success(); - } - - private static string GetRemoteBranchName(this BuildTargetContext c) - { - return (string)c.BuildContext["RemoteBranchName"]; - } - - private static void SetRemoteBranchName(this BuildTargetContext c, string value) - { - c.BuildContext["RemoteBranchName"] = value; - } - - private static string GetCommitMessage(this BuildTargetContext c) - { - const string commitMessagePropertyName = "CommitMessage"; - - string message; - object messageObject; - if (c.BuildContext.Properties.TryGetValue(commitMessagePropertyName, out messageObject)) - { - message = (string)messageObject; - } - else - { - DependencyInfo[] updatedDependencies = c.GetDependencyInfos() - .Where(d => d.IsUpdated) - .ToArray(); - - string updatedDependencyNames = string.Join(", ", updatedDependencies.Select(d => d.Name)); - string updatedDependencyVersions = string.Join(", ", updatedDependencies.Select(d => d.NewReleaseVersion)); - - message = $"Updating {updatedDependencyNames} to {updatedDependencyVersions}"; - if (updatedDependencies.Count() > 1) - { - message += " respectively"; - } - - c.BuildContext[commitMessagePropertyName] = message; - } - - return message; - } - } -} diff --git a/build_projects/update-dependencies/UpdateFilesTargets.cs b/build_projects/update-dependencies/UpdateFilesTargets.cs deleted file mode 100644 index 434ae4f3..00000000 --- a/build_projects/update-dependencies/UpdateFilesTargets.cs +++ /dev/null @@ -1,299 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Net.Http; -using System.Text; -using System.Text.RegularExpressions; -using System.Threading.Tasks; -using Microsoft.DotNet.Cli.Build.Framework; -using Newtonsoft.Json; -using Newtonsoft.Json.Linq; -using NuGet.Versioning; - -namespace Microsoft.DotNet.Scripts -{ - public static class UpdateFilesTargets - { - private static HttpClient s_client = new HttpClient(); - private static readonly string FileUrlScheme = "file://"; - - [Target(nameof(GetDependencies), nameof(ReplaceVersions))] - public static BuildTargetResult UpdateFiles(BuildTargetContext c) => c.Success(); - - /// - /// Gets all the dependency information and puts it in the build properties. - /// - [Target] - public static BuildTargetResult GetDependencies(BuildTargetContext c) - { - List dependencyInfos = c.GetDependencyInfos(); - - dependencyInfos.Add(CreateDependencyInfo("CoreFx", Config.Instance.CoreFxVersionUrl).Result); - dependencyInfos.Add(CreateDependencyInfo("CoreClr", Config.Instance.CoreClrVersionUrl).Result); - dependencyInfos.Add(CreateDependencyInfo("Standard", Config.Instance.StandardVersionUrl).Result); - - return c.Success(); - } - - private static async Task CreateDependencyInfo(string name, string packageVersionsUrl) - { - List newPackageVersions = new List(); - - using (Stream versionsStream = packageVersionsUrl.StartsWith(FileUrlScheme, StringComparison.Ordinal) ? File.OpenRead(packageVersionsUrl.Substring(FileUrlScheme.Length)) : await s_client.GetStreamAsync(packageVersionsUrl)) - using (StreamReader reader = new StreamReader(versionsStream)) - { - string currentLine; - while ((currentLine = await reader.ReadLineAsync()) != null) - { - int spaceIndex = currentLine.IndexOf(' '); - - newPackageVersions.Add(new PackageInfo() - { - Id = currentLine.Substring(0, spaceIndex), - Version = new NuGetVersion(currentLine.Substring(spaceIndex + 1)) - }); - } - } - - string newReleaseVersion = newPackageVersions - .Where(p => p.Version.IsPrerelease) - .Select(p => p.Version.Release) - .FirstOrDefault() - ?? - // if there are no prerelease versions, just grab the first version - newPackageVersions - .Select(p => p.Version.ToNormalizedString()) - .FirstOrDefault(); - - return new DependencyInfo() - { - Name = name, - NewVersions = newPackageVersions, - NewReleaseVersion = newReleaseVersion - }; - } - - [Target(nameof(ReplaceProjectJson), nameof(ReplaceDependencyVersions), nameof(ReplaceCoreHostPackaging))] - public static BuildTargetResult ReplaceVersions(BuildTargetContext c) => c.Success(); - - /// - /// Replaces all the dependency versions in the project.json files. - /// - [Target] - public static BuildTargetResult ReplaceProjectJson(BuildTargetContext c) - { - List dependencyInfos = c.GetDependencyInfos(); - - var projectJsonFiles = new List - { - Path.Combine(Dirs.PkgProjects, "Microsoft.NETCore.App", "project.json.template"), - Path.Combine(Dirs.PkgProjects, "Microsoft.NETCore.UniversalWindowsPlatform", "project.json.template"), - Path.Combine(Dirs.PkgDeps, "project.json") - }; - //projectJsonFiles.AddRange(Directory.GetFiles(Dirs.RepoRoot, "project.json", SearchOption.AllDirectories)); - - JObject projectRoot; - foreach (string projectJsonFile in projectJsonFiles) - { - try - { - projectRoot = ReadProject(projectJsonFile); - } - catch (Exception e) - { - c.Warn($"Non-fatal exception occurred reading '{projectJsonFile}'. Skipping file. Exception: {e}. "); - continue; - } - - if (projectRoot == null) - { - c.Warn($"A non valid JSON file was encountered '{projectJsonFile}'. Skipping file."); - continue; - } - - bool changedAnyPackage = FindAllDependencyProperties(projectRoot) - .Select(dependencyProperty => ReplaceDependencyVersion(dependencyProperty, dependencyInfos)) - .ToArray() - .Any(shouldWrite => shouldWrite); - - if (changedAnyPackage) - { - c.Info($"Writing changes to {projectJsonFile}"); - WriteProject(projectRoot, projectJsonFile); - } - } - - return c.Success(); - } - - /// - /// Replaces the single dependency with the updated version, if it matches any of the dependencies that need to be updated. - /// - private static bool ReplaceDependencyVersion(JProperty dependencyProperty, List dependencyInfos) - { - string id = dependencyProperty.Name; - foreach (DependencyInfo dependencyInfo in dependencyInfos) - { - foreach (PackageInfo packageInfo in dependencyInfo.NewVersions) - { - if (id == packageInfo.Id) - { - string oldVersion; - if (dependencyProperty.Value is JObject) - { - oldVersion = (string)dependencyProperty.Value["version"]; - } - else - { - oldVersion = (string)dependencyProperty.Value; - } - - string newVersion = packageInfo.Version.ToNormalizedString(); - if (oldVersion != newVersion) - { - if (dependencyProperty.Value is JObject) - { - dependencyProperty.Value["version"] = newVersion; - } - else - { - dependencyProperty.Value = newVersion; - } - - // mark the DependencyInfo as updated so we can tell which dependencies were updated - dependencyInfo.IsUpdated = true; - - return true; - } - } - } - } - - return false; - } - - private static JObject ReadProject(string projectJsonPath) - { - using (TextReader projectFileReader = File.OpenText(projectJsonPath)) - { - var projectJsonReader = new JsonTextReader(projectFileReader); - - var serializer = new JsonSerializer(); - return serializer.Deserialize(projectJsonReader); - } - } - - private static void WriteProject(JObject projectRoot, string projectJsonPath) - { - string projectJson = JsonConvert.SerializeObject(projectRoot, Formatting.Indented); - - File.WriteAllText(projectJsonPath, projectJson + Environment.NewLine); - } - - private static IEnumerable FindAllDependencyProperties(JObject projectJsonRoot) - { - return projectJsonRoot - .Descendants() - .OfType() - .Where(property => property.Name == "dependencies") - .Select(property => property.Value) - .SelectMany(o => o.Children()); - } - - /// - /// Replaces version numbers hard-coded in DependencyVersions.cs. - /// - [Target] - public static BuildTargetResult ReplaceDependencyVersions(BuildTargetContext c) - { - ReplaceFileContents(Path.Combine("build_projects", "shared-build-targets-utils", "DependencyVersions.cs"), fileContents => - { - fileContents = ReplaceDependencyVersion(c, fileContents, "CoreCLRVersion", "transport.Microsoft.NETCore.Runtime.CoreCLR"); - fileContents = ReplaceDependencyVersion(c, fileContents, "JitVersion", "transport.Microsoft.NETCore.Jit"); - - return fileContents; - }); - - return c.Success(); - } - - private static string ReplaceDependencyVersion(BuildTargetContext c, string fileContents, string dependencyPropertyName, string packageId) - { - Regex regex = new Regex($@"{dependencyPropertyName} = ""(?.*)"";"); - string newVersion = c.GetNewVersion(packageId); - - if (newVersion != null) - { - fileContents = regex.ReplaceGroupValue(fileContents, "version", newVersion); - } - return fileContents; - } - - /// - /// Replaces version number that is hard-coded in the corehost packaging dir.props file. - /// - [Target] - public static BuildTargetResult ReplaceCoreHostPackaging(BuildTargetContext c) - { - ReplaceFileContents(Path.Combine("pkg", "dir.props"), contents => - { - Regex regex = new Regex(@"Microsoft\.NETCore\.Platforms\\(?.*)\\runtime\.json"); - string newNetCorePlatformsVersion = c.GetNewVersion("Microsoft.NETCore.Platforms"); - - if (newNetCorePlatformsVersion != null) - { - contents = regex.ReplaceGroupValue(contents, "version", newNetCorePlatformsVersion); - } - return contents; - }); - - return c.Success(); - } - - private static string GetNewVersion(this BuildTargetContext c, string packageId) - { - string newVersion = c.GetDependencyInfos() - .SelectMany(d => d.NewVersions) - .FirstOrDefault(p => p.Id == packageId) - ?.Version - .ToNormalizedString(); - - if (string.IsNullOrEmpty(newVersion)) - { - c.Info($"Could not find package version information for '{packageId}'"); - return null; - } - - return newVersion; - } - - private static void ReplaceFileContents(string repoRelativePath, Func replacement) - { - string fullPath = Path.Combine(Dirs.RepoRoot, repoRelativePath); - string contents = File.ReadAllText(fullPath); - - contents = replacement(contents); - - File.WriteAllText(fullPath, contents, Encoding.UTF8); - } - - private static string ReplaceGroupValue(this Regex regex, string input, string groupName, string newValue) - { - return regex.Replace(input, m => - { - string replacedValue = m.Value; - Group group = m.Groups[groupName]; - int startIndex = group.Index - m.Index; - - replacedValue = replacedValue.Remove(startIndex, group.Length); - replacedValue = replacedValue.Insert(startIndex, newValue); - - return replacedValue; - }); - } - } -} diff --git a/build_projects/update-dependencies/project.json.template b/build_projects/update-dependencies/project.json.template index 4a34368f..c9d24c40 100644 --- a/build_projects/update-dependencies/project.json.template +++ b/build_projects/update-dependencies/project.json.template @@ -2,23 +2,16 @@ "version": "1.0.0-*", "description": "Updates the repos dependencies", "buildOptions": { - "emitEntryPoint": true + "emitEntryPoint": true, + "compile": [ + "../Microsoft.DotNet.Cli.Build.Framework/DebugHelper.cs", + "../shared-build-targets-utils/Utils/BranchInfo.cs" + ] }, "dependencies": { "NETStandard.Library": "1.6.1-beta-24506-02", - "Microsoft.CSharp": "4.0.1", "Microsoft.NETCore.Runtime.CoreCLR": "1.1.0-beta-24507-05", - "System.Runtime.Serialization.Primitives": "4.1.1", - "Microsoft.DotNet.Cli.Build.Framework": { - "target": "project" - }, - "shared-build-targets-utils": { - "target": "project" - }, - "NuGet.Versioning": "3.5.0-rc-1285", - "Newtonsoft.Json": "9.0.1", - "Octokit": "0.18.0", - "Microsoft.Net.Http": "2.2.29" + "Microsoft.DotNet.VersionTools": "1.0.27-prerelease-01518-03" }, "frameworks": { "netcoreapp1.0": { diff --git a/build_projects/update-dependencies/update-dependencies.ps1 b/build_projects/update-dependencies/update-dependencies.ps1 index 416db8df..55e03066 100644 --- a/build_projects/update-dependencies/update-dependencies.ps1 +++ b/build_projects/update-dependencies/update-dependencies.ps1 @@ -4,16 +4,16 @@ # param( - [string[]]$Targets=@("Default"), + [switch]$Update, [string[]]$EnvVars=@(), [switch]$Help) if($Help) { - Write-Host "Usage: .\update-dependencies.ps1 [-Targets ]" + Write-Host "Usage: .\update-dependencies.ps1" Write-Host "" Write-Host "Options:" - Write-Host " -Targets Comma separated build targets to run (UpdateFiles, PushPR; Default is everything)" + Write-Host " -Update Update dependencies (but don't open a PR)" Write-Host " -EnvVars <'V1=val1','V2=val2'...> Comma separated list of environment variable name-value pairs" Write-Host " -Help Display this help message" exit 0 @@ -22,6 +22,13 @@ if($Help) $Architecture='x64' $RepoRoot = "$PSScriptRoot\..\.." +$ProjectArgs = "" + +if ($Update) +{ + $ProjectArgs = "--update" +} + # Use a repo-local install directory (but not the artifacts directory because that gets cleaned a lot if (!$env:DOTNET_INSTALL_DIR) { @@ -72,5 +79,5 @@ if($LASTEXITCODE -ne 0) { throw "Failed to compile build scripts" } # Run the app Write-Host "Invoking App $appPath..." Write-Host " Configuration: $env:CONFIGURATION" -& "$appPath\bin\update-dependencies.exe" -t @Targets -e @EnvVars +& "$appPath\bin\update-dependencies.exe" $ProjectArgs -e @EnvVars if($LASTEXITCODE -ne 0) { throw "Build failed" } diff --git a/build_projects/update-dependencies/update-dependencies.sh b/build_projects/update-dependencies/update-dependencies.sh index 0ee743b6..1b0f771f 100755 --- a/build_projects/update-dependencies/update-dependencies.sh +++ b/build_projects/update-dependencies/update-dependencies.sh @@ -16,24 +16,24 @@ DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" OLDPATH="$PATH" REPOROOT="$DIR/../.." +PROJECTARGS="" source "$REPOROOT/scripts/common/_prettyprint.sh" while [[ $# > 0 ]]; do lowerI="$(echo $1 | awk '{print tolower($0)}')" case $lowerI in - --targets) - IFS=',' read -r -a targets <<< $2 - shift + --update) + PROJECTARGS="--update" ;; --env-vars) IFS=',' read -r -a envVars <<< $2 shift ;; --help) - echo "Usage: $0 [--targets ]" + echo "Usage: $0" echo "" echo "Options:" - echo " --targets Comma separated build targets to run (UpdateFile, PushPR; Default is everything" + echo " --update Update dependencies (but don't open a PR)" echo " --env-vars <'V1=val1','V2=val2'...> Comma separated list of environment variable name value-pairs" echo " --help Display this help message" exit 0 @@ -93,5 +93,5 @@ export PATH="$OLDPATH" echo "Invoking Build Scripts..." echo "Configuration: $CONFIGURATION" -$DIR/bin/update-dependencies -t ${targets[@]} -e ${envVars[@]} +$DIR/bin/update-dependencies "$PROJECTARGS" -e ${envVars[@]} exit $? From 9ac892bbd59b032c152510a63d2212a1d6306ed6 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Thu, 20 Apr 2017 11:23:52 -0700 Subject: [PATCH 203/625] Updating CoreClr to preview1-25220-03 (#2126) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- .../project.json.template | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 500b1fac..1fdb832c 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25220-02"; - public static readonly string JitVersion = "2.0.0-preview1-25220-02"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25220-03"; + public static readonly string JitVersion = "2.0.0-preview1-25220-03"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index cb1ec5da..d8dc24ce 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25220-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25220-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25220-03", "Microsoft.DiaSymReader.Native": "1.4.1", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-02", "NETStandard.Library": "2.0.0-preview1-25220-01" diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 53548a0c..971367d4 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -2,7 +2,7 @@ "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25220-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25220-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25220-03", "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-02", "NETStandard.Library": "2.0.0-preview1-25220-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", From ead13ca320af6984a8bcb0eb31ad5c20f3eae513 Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Thu, 20 Apr 2017 12:02:58 -0700 Subject: [PATCH 204/625] Revert "Revert "Revert "Build Native Debian installers consuming Portable Linux binaries (#2027)" (#2078)" (#2104)" (#2128) Reverting to get the baseline for myget push issue breaking official build. This reverts commit bd9b9d573abb8d91f73f5c9998cd4db7b585f232. --- .../dotnet-host-build/PackageTargets.cs | 31 +-- .../dotnet-host-build/PrepareTargets.cs | 2 - .../dotnet-host-build/PublishTargets.cs | 17 -- .../Core-Setup-PortableLinux-x64.json | 212 +----------------- buildpipeline/pipeline.json | 58 +++++ scripts/dockerbuild.sh | 84 ------- scripts/dockerrun.sh | 40 +++- 7 files changed, 106 insertions(+), 338 deletions(-) delete mode 100755 scripts/dockerbuild.sh diff --git a/build_projects/dotnet-host-build/PackageTargets.cs b/build_projects/dotnet-host-build/PackageTargets.cs index f276ddb5..645c50df 100644 --- a/build_projects/dotnet-host-build/PackageTargets.cs +++ b/build_projects/dotnet-host-build/PackageTargets.cs @@ -68,11 +68,9 @@ namespace Microsoft.DotNet.Host.Build Directory.CreateDirectory(sharedHostRoot); - string sharedFrameworkPublishPath = GetSharedFrameworkPublishPath(c); - - foreach (var file in Directory.GetFiles(sharedFrameworkPublishPath, "*", SearchOption.TopDirectoryOnly)) + foreach (var file in Directory.GetFiles(Dirs.SharedFrameworkPublish, "*", SearchOption.TopDirectoryOnly)) { - var destFile = file.Replace(sharedFrameworkPublishPath, sharedHostRoot); + var destFile = file.Replace(Dirs.SharedFrameworkPublish, sharedHostRoot); File.Copy(file, destFile, true); c.Warn(destFile); } @@ -101,7 +99,7 @@ namespace Microsoft.DotNet.Host.Build Directory.CreateDirectory(hostFxrRoot); - string srcHostDir = Path.Combine(GetSharedFrameworkPublishPath(c), "host"); + string srcHostDir = Path.Combine(Dirs.SharedFrameworkPublish, "host"); string destHostDir = Path.Combine(hostFxrRoot, "host"); FS.CopyRecursive(srcHostDir, destHostDir); @@ -121,8 +119,7 @@ namespace Microsoft.DotNet.Host.Build } Directory.CreateDirectory(sharedFxRoot); - - Utils.CopyDirectoryRecursively(Path.Combine(GetSharedFrameworkPublishPath(c), "shared"), sharedFxRoot, true); + Utils.CopyDirectoryRecursively(Path.Combine(Dirs.SharedFrameworkPublish, "shared"), sharedFxRoot, true); FixPermissions(sharedFxRoot); c.BuildContext["SharedFrameworkPublishRoot"] = sharedFxRoot; @@ -269,25 +266,5 @@ namespace Microsoft.DotNet.Host.Build FS.FixModeFlags(directory); } } - - private static string GetSharedFrameworkPublishPath(BuildTargetContext c) - { - string sharedFrameworkPublishPath = string.Empty; - - string preBuiltPortableStagingPath=c.BuildContext.Get("PortableBuildStagingLocation"); - - // If we are not generating distro specific installers for portable build, then we won't have access to staging location and thus, will use default binary location where SharedFX was published - if(preBuiltPortableStagingPath == null) - { - sharedFrameworkPublishPath = Dirs.SharedFrameworkPublish; - } - else - { - Console.WriteLine($"Installers will package binaries from path set by PORTABLE_BUILD_STAGING_LOCATION environment variable :{preBuiltPortableStagingPath}"); - sharedFrameworkPublishPath = preBuiltPortableStagingPath; - } - - return sharedFrameworkPublishPath; - } } } diff --git a/build_projects/dotnet-host-build/PrepareTargets.cs b/build_projects/dotnet-host-build/PrepareTargets.cs index 8c6f4cd4..344fce5b 100644 --- a/build_projects/dotnet-host-build/PrepareTargets.cs +++ b/build_projects/dotnet-host-build/PrepareTargets.cs @@ -127,7 +127,6 @@ namespace Microsoft.DotNet.Host.Build Environment.SetEnvironmentVariable("TARGETRID", targetRID); } - string portableBuildStagingLocation = Environment.GetEnvironmentVariable("PORTABLE_BUILD_STAGING_LOCATION")?.Trim(); c.BuildContext["TargetRID"] = targetRID; @@ -136,7 +135,6 @@ namespace Microsoft.DotNet.Host.Build c.BuildContext["ArtifactsTargetRID"] = realTargetRID; c.BuildContext["LinkPortable"] = linkPortable; c.BuildContext["Platform"] = platformEnv; - c.BuildContext["PortableBuildStagingLocation"] = portableBuildStagingLocation; return c.Success(); } diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index 03e71e4a..5b2fd0d8 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -58,16 +58,6 @@ namespace Microsoft.DotNet.Host.Build return c.Success(); } - [Target(nameof(PrepareTargets.Init), - nameof(PublishTargets.InitPublish), - nameof(PublishTargets.PublishInstallerArtifacts), - nameof(PublishTargets.FinalizeBuild))] - [Environment("PUBLISH_TO_AZURE_BLOB", "1", "true")] // This is set by CI systems - public static BuildTargetResult PublishInstallers(BuildTargetContext c) - { - return c.Success(); - } - [Target] [BuildPlatforms(BuildPlatform.Ubuntu, "14.04")] [BuildArchitectures(BuildArchitecture.x64)] @@ -295,13 +285,6 @@ namespace Microsoft.DotNet.Host.Build nameof(PublishTargets.PublishSharedFrameworkVersionBadge))] public static BuildTargetResult PublishArtifacts(BuildTargetContext c) => c.Success(); - [Target( - nameof(PublishTargets.PublishInstallerFilesToAzure), - nameof(PublishTargets.PublishDotnetDebToolPackage), - nameof(PublishTargets.PublishDebFilesToDebianRepo), - nameof(PublishTargets.PublishSharedFrameworkVersionBadge))] - public static BuildTargetResult PublishInstallerArtifacts(BuildTargetContext c) => c.Success(); - [Target( nameof(PublishTargets.PublishSharedHostInstallerFileToAzure), nameof(PublishTargets.PublishHostFxrInstallerFileToAzure), diff --git a/buildpipeline/Core-Setup-PortableLinux-x64.json b/buildpipeline/Core-Setup-PortableLinux-x64.json index 6b53eeb0..5626f166 100644 --- a/buildpipeline/Core-Setup-PortableLinux-x64.json +++ b/buildpipeline/Core-Setup-PortableLinux-x64.json @@ -95,178 +95,6 @@ "failOnStandardError": "false" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Copy built Portable binaries to staging directory", - "timeoutInMinutes": 0, - "task": { - "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "SourceFolder": "$(Build.SourcesDirectory)/artifacts/linux-x64/intermediate/sharedFrameworkPublish", - "Contents": "**", - "TargetFolder": "$(Build.StagingDirectory)/sharedFrameworkPublish", - "CleanTargetFolder": "false", - "OverWrite": "false", - "flattenFolders": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Ubuntu.14.04 docker image", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerbuild.sh", - "args": "-d $(Build.SourcesDirectory)/scripts/docker/ubuntu.14.04 -t ubuntu.14.04-coresetup", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Debian Installer in Ubuntu.14.04 docker container", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerrun-as-current-user.sh", - "args": "--rm $(DockerBuildEnvironmentVariables) -e CLI_NUGET_API_KEY -e CLI_NUGET_FEED_URL -e CLI_NUGET_SYMBOLS_FEED_URL -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code ubuntu.14.04-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Ubuntu.16.04 docker image", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerbuild.sh", - "args": "-d $(Build.SourcesDirectory)/scripts/docker/ubuntu.16.04 -t ubuntu.16.04-coresetup", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Debian Installer in Ubuntu.16.04 docker container", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerrun-as-current-user.sh", - "args": "--rm $(DockerBuildEnvironmentVariables) -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code ubuntu.16.04-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Ubuntu.16.10 docker image", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerbuild.sh", - "args": "-d $(Build.SourcesDirectory)/scripts/docker/ubuntu.16.10 -t ubuntu.16.10-coresetup", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Debian Installer in Ubuntu 16.10 docker container", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerrun-as-current-user.sh", - "args": "--rm $(DockerBuildEnvironmentVariables) -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code ubuntu.16.10-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Debian.8 docker image ", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerbuild.sh", - "args": "-d $(Build.SourcesDirectory)/scripts/docker/debian.8 -t debian.8-coresetup", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build Debian Installer in Debian.8 docker container", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerrun-as-current-user.sh", - "args": "--rm $(DockerBuildEnvironmentVariables) -v $(Build.SourcesDirectory):/opt/code/ -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/opt/sharedFrameworkPublish/ -w /opt/code debian.8-coresetup /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh --skip-prereqs --configuration Release --targets $(InstallerOnlyBuildArguments)\"", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": true, @@ -413,33 +241,6 @@ }, "NUGET_SYMBOLS_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" - }, - "REPO_ID": { - "value": "579f8fb0fedca9aeeb399132" - }, - "REPO_USER": { - "value": "dotnet" - }, - "REPO_PASS": { - "value": "PassedViaPipeBuild" - }, - "REPO_SERVER": { - "value": "azure-apt-cat.cloudapp.net" - }, - "DockerBuildEnvironmentVariables": { - "value": "-e PORTABLE_BUILD_STAGING_LOCATION=/opt/sharedFrameworkPublish -e CONNECTION_STRING -e PUBLISH_TO_AZURE_BLOB -e REPO_ID -e REPO_USER -e REPO_PASS -e REPO_SERVER -e NUGET_FEED_URL -e NUGET_API_KEY -e NUGET_SYMBOLS_FEED_URL -e GITHUB_PASSWORD" - }, - "InstallerOnlyBuildArguments": { - "value": "Init,Prepare,InitPackage,GenerateVersionBadge,GenerateInstaller,TestInstaller,PublishInstallers" - }, - "CLI_NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, - "CLI_NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/cli-deps/api/v2/package" - }, - "CLI_NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/cli-deps/symbols/api/v2/package" } }, "demands": [ @@ -464,7 +265,6 @@ "buildNumberFormat": "$(Date:yyyMMdd)$(Rev:.r)", "jobAuthorizationScope": "projectCollection", "jobTimeoutInMinutes": 90, - "jobCancelTimeoutInMinutes": 5, "badgeEnabled": true, "repository": { "properties": { @@ -488,23 +288,23 @@ }, "quality": "definition", "queue": { - "id": 36, - "name": "DotNet-Build", "pool": { "id": 39, "name": "DotNet-Build" - } + }, + "id": 36, + "name": "DotNet-Build" }, - "id": 4573, - "name": "Core-Setup-PortableLinux-x64", "path": "\\", "type": "build", + "id": 4573, + "name": "Core-Setup-PortableLinux-x64", "project": { "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", "name": "DevDiv", "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097642 + "revision": 418097620 } } \ No newline at end of file diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 0523f699..89b8e11d 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -15,6 +15,20 @@ "BuildConfiguration": "Release" }, "Definitions": [ + { + "Name": "Core-Setup-Linux", + "Parameters": { + "PB_DockerOS": "debian.8", + "REPO_ID": "579f8fb0fedca9aeeb399132", + "REPO_USER": "dotnet", + "REPO_SERVER": "azure-apt-cat.cloudapp.net" + }, + "ReportingParameters": { + "OperatingSystem": "Debian 8.2", + "Type": "build/product/", + "Platform": "x64" + } + }, { "Name": "Core-Setup-Linux", "Parameters": { @@ -37,6 +51,50 @@ "Platform": "x64" } }, + { + "Name": "Core-Setup-Linux", + "Parameters": { + "PB_DockerOS": "ubuntu.14.04", + "REPO_ID": "562fbfe0b2d7d0e0a43780c4", + "REPO_USER": "dotnet", + "REPO_SERVER": "azure-apt-cat.cloudapp.net", + "CLI_NUGET_FEED_URL": "https://dotnet.myget.org/F/cli-deps/api/v2/package", + "CLI_NUGET_SYMBOLS_FEED_URL": "https://dotnet.myget.org/F/cli-deps/symbols/api/v2/package" + }, + "ReportingParameters": { + "OperatingSystem": "Ubuntu 14.04", + "Type": "build/product/", + "Platform": "x64" + } + }, + { + "Name": "Core-Setup-Linux", + "Parameters": { + "PB_DockerOS": "ubuntu.16.04", + "REPO_ID": "575f40f3797ef7280505232f", + "REPO_USER": "dotnet", + "REPO_SERVER": "azure-apt-cat.cloudapp.net" + }, + "ReportingParameters": { + "OperatingSystem": "Ubuntu 16.04", + "Type": "build/product/", + "Platform": "x64" + } + }, + { + "Name": "Core-Setup-Linux", + "Parameters": { + "PB_DockerOS": "ubuntu.16.10", + "REPO_ID": "575f40f3797ef7280505232f", + "REPO_USER": "dotnet", + "REPO_SERVER": "azure-apt-cat.cloudapp.net" + }, + "ReportingParameters": { + "OperatingSystem": "Ubuntu 16.10", + "Type": "build/product/", + "Platform": "x64" + } + }, { "Name": "Core-Setup-OSX-x64", "ReportingParameters": { diff --git a/scripts/dockerbuild.sh b/scripts/dockerbuild.sh deleted file mode 100755 index 6f15ca8e..00000000 --- a/scripts/dockerbuild.sh +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/env bash -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -set -e - -SOURCE="${BASH_SOURCE[0]}" -while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink - DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" - SOURCE="$(readlink "$SOURCE")" - [[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located -done -DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" - -cd "$DIR/.." - -while [[ $# > 0 ]]; do - key=$1 - - case $key in - -t|--tag) - DOCKER_TAG=$2 - shift - ;; - -d|--dockerfile) - DOCKERFILE=$2 - shift - ;; - -h|-?|--help) - echo "Usage: $0 [-d|--dockerfile ] [-t|--tag ] " - echo "" - echo "Options:" - echo " The path to the folder that contains a Dockerfile to use to create the build container" - echo " The name of docker image tag" - exit 0 - ;; - *) - break # the first non-switch we get ends parsing - ;; - esac - - shift -done - -# Executes a command and retries if it fails. -# NOTE: This function is the exact copy from init-docker.sh. -# Reason for not invoking init.docker.sh directly is since that script -# also performs cleanup, which we do not want in this case. -execute() { - local count=0 - local retries=5 - local waitFactor=6 - until "$@"; do - local exit=$? - count=$(( $count + 1 )) - if [ $count -lt $retries ]; then - local wait=$(( waitFactor ** (( count - 1 )) )) - echo "Retry $count/$retries exited $exit, retrying in $wait seconds..." - sleep $wait - else - say_err "Retry $count/$retries exited $exit, no more retries left." - return $exit - fi - done - - return 0 -} - -# Build the docker container (will be fast if it is already built) -echo "Building Docker Container using Dockerfile: $DOCKERFILE" - -# Get the name of Docker image. -image=$(grep -i "^FROM " "$DOCKERFILE/Dockerfile" | awk '{ print $2 }') - -# Explicitly pull the base image with retry logic. -# This eliminates intermittent failures during docker build caused by failing to retrieve the base image. -if [ ! -z "$image" ]; then - echo "Pulling Docker image $image" - execute docker pull $image -fi - -docker build --build-arg USER_ID=$(id -u) -t $DOCKER_TAG $DOCKERFILE diff --git a/scripts/dockerrun.sh b/scripts/dockerrun.sh index 4d5a3d85..80f3d089 100755 --- a/scripts/dockerrun.sh +++ b/scripts/dockerrun.sh @@ -87,8 +87,44 @@ fi # VSO [ ! -z "$BUILD_BUILDID" ] && DOTNET_BUILD_CONTAINER_NAME="${BUILD_BUILDID}-${BUILD_BUILDNUMBER}" -#Build the docker image -"$DIR/dockerbuild.sh" -t $DOTNET_BUILD_CONTAINER_TAG -d $DOCKERFILE +# Executes a command and retries if it fails. +# NOTE: This function is the exact copy from init-docker.sh. +# Reason for not invoking init.docker.sh directly is since that script +# also performs cleanup, which we do not want in this case. +execute() { + local count=0 + local retries=5 + local waitFactor=6 + until "$@"; do + local exit=$? + count=$(( $count + 1 )) + if [ $count -lt $retries ]; then + local wait=$(( waitFactor ** (( count - 1 )) )) + echo "Retry $count/$retries exited $exit, retrying in $wait seconds..." + sleep $wait + else + say_err "Retry $count/$retries exited $exit, no more retries left." + return $exit + fi + done + + return 0 +} + +# Build the docker container (will be fast if it is already built) +echo "Building Docker Container using Dockerfile: $DOCKERFILE" + +# Get the name of Docker image. +image=$(grep -i "^FROM " "$DOCKERFILE/Dockerfile" | awk '{ print $2 }') + +# Explicitly pull the base image with retry logic. +# This eliminates intermittent failures during docker build caused by failing to retrieve the base image. +if [ ! -z "$image" ]; then + echo "Pulling Docker image $image" + execute docker pull $image +fi + +docker build --build-arg USER_ID=$(id -u) -t $DOTNET_BUILD_CONTAINER_TAG $DOCKERFILE # Run the build in the container echo "Launching build in Docker Container" From 2763ab48f7295795a06cfb1ee713ad9c4bd4ea68 Mon Sep 17 00:00:00 2001 From: wtgodbe Date: Wed, 19 Apr 2017 14:05:58 -0700 Subject: [PATCH 205/625] Exit with failure when build-rootfs.sh fails --- cross/build-rootfs.sh | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/cross/build-rootfs.sh b/cross/build-rootfs.sh index 21c1b2be..10405b26 100755 --- a/cross/build-rootfs.sh +++ b/cross/build-rootfs.sh @@ -128,20 +128,46 @@ fi if [ -d "$__RootfsDir" ]; then if [ $__SkipUnmount == 0 ]; then umount $__RootfsDir/* + if [ $? -ne 0 ]; then + echo "Failed to unmount RootfsDir." + exit 1 + fi fi rm -rf $__RootfsDir fi if [[ -n $__LinuxCodeName ]]; then qemu-debootstrap --arch $__UbuntuArch $__LinuxCodeName $__RootfsDir $__UbuntuRepo + if [ $? -ne 0 ]; then + install_Failed + fi cp $__CrossDir/$__BuildArch/sources.list.$__LinuxCodeName $__RootfsDir/etc/apt/sources.list + if [ $? -ne 0 ]; then + install_Failed + fi chroot $__RootfsDir apt-get update + if [ $? -ne 0 ]; then + install_Failed + fi chroot $__RootfsDir apt-get -f -y install + if [ $? -ne 0 ]; then + install_Failed + fi chroot $__RootfsDir apt-get -y install $__UbuntuPackages + if [ $? -ne 0 ]; then + install_Failed + fi chroot $__RootfsDir symlinks -cr /usr + if [ $? -ne 0 ]; then + install_Failed + fi if [ $__SkipUnmount == 0 ]; then umount $__RootfsDir/* + if [ $? -ne 0 ]; then + echo "Failed to unmount RootfsDir." + exit 1 + fi fi if [[ "$__BuildArch" == "arm" && "$__LinuxCodeName" == "trusty" ]]; then @@ -156,3 +182,9 @@ else usage; exit 1 fi + +install_Failed() +{ + echo "Failed to install/symlink packages." + exit 1 +} \ No newline at end of file From f4cdbf3742198d8114303aaf1a40e86a5d167508 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Fri, 21 Apr 2017 07:13:13 -0700 Subject: [PATCH 206/625] Update CoreClr, CoreFx, Standard to preview1-25221-02, preview1-25221-02, preview1-25221-01, respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 8 ++++---- .../project.json.template | 8 ++++---- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 1fdb832c..6eb919ed 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25220-03"; - public static readonly string JitVersion = "2.0.0-preview1-25220-03"; + public static readonly string CoreCLRVersion = "2.0.0-preview1-25221-02"; + public static readonly string JitVersion = "2.0.0-preview1-25221-02"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index fc2a5c0f..f751b68f 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-02" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25221-02" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index e5588342..25d64e5c 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25220-02\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25221-02\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index d8dc24ce..7564507e 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25220-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25220-03", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25221-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25221-02", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-02", - "NETStandard.Library": "2.0.0-preview1-25220-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25221-02", + "NETStandard.Library": "2.0.0-preview1-25221-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 971367d4..dc0c9872 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25220-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25220-03", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25220-02", - "NETStandard.Library": "2.0.0-preview1-25220-01", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25221-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25221-02", + "Microsoft.NETCore.Platforms": "2.0.0-preview1-25221-02", + "NETStandard.Library": "2.0.0-preview1-25221-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From 462c384d2be0f6d73f1e46bccbd5440a46ecfee4 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Fri, 21 Apr 2017 07:49:04 -0700 Subject: [PATCH 207/625] Specify portable RID for Windows build for binaries to be signed. (#2135) --- buildpipeline/Core-Setup-Signing-Windows-x64.json | 3 ++- buildpipeline/Core-Setup-Signing-Windows-x86.json | 3 ++- buildpipeline/pipeline.json | 6 ++++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/buildpipeline/Core-Setup-Signing-Windows-x64.json b/buildpipeline/Core-Setup-Signing-Windows-x64.json index 0a0417cd..d973401c 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x64.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x64.json @@ -484,7 +484,8 @@ "value": "400" }, "RID": { - "value": "win81-x64" + "value": "win81-x64", + "allowOverride": true }, "MsbuildSigningArguments": { "value": "/p:RID=$(RID) /p:CertificateId=$(CertificateId) /v:detailed" diff --git a/buildpipeline/Core-Setup-Signing-Windows-x86.json b/buildpipeline/Core-Setup-Signing-Windows-x86.json index dd712eaa..ade23e6f 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x86.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x86.json @@ -457,7 +457,8 @@ "value": "400" }, "RID": { - "value": "win81-x86" + "value": "win81-x86", + "allowOverride": true }, "PB_PortableBuild": { "value": "", diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 89b8e11d..76b06e17 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -150,7 +150,8 @@ { "Name": "Core-Setup-Signing-Windows-x64", "Parameters": { - "PB_PortableBuild": "-portable" + "PB_PortableBuild": "-portable", + "RID": "win-x64" }, "ReportingParameters": { "OperatingSystem": "Windows", @@ -170,7 +171,8 @@ { "Name": "Core-Setup-Signing-Windows-x86", "Parameters": { - "PB_PortableBuild": "-portable" + "PB_PortableBuild": "-portable", + "RID": "win-x86" }, "ReportingParameters": { "OperatingSystem": "Windows", From 44ea63c523c85af5b171f9075e51ba609e2b6053 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Fri, 21 Apr 2017 11:04:52 -0500 Subject: [PATCH 208/625] Kicking off a new build --- Documentation/dummy.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/dummy.txt b/Documentation/dummy.txt index 1cfd054e..bda413fd 100644 --- a/Documentation/dummy.txt +++ b/Documentation/dummy.txt @@ -1 +1 @@ -4/19/2017 02:25:00 PM +4/21/2017 11:04:00 AM From 84fbfb71acb5eeff2cd737098c0fbc43ff4da356 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Fri, 21 Apr 2017 16:30:01 -0500 Subject: [PATCH 209/625] Disable non-portable windows and osx builds. --- README.md | 138 +++++++----------- .../dotnet-host-build/PublishTargets.cs | 10 -- .../Core-Setup-Signing-Windows-x64.json | 4 +- .../Core-Setup-Signing-Windows-x86.json | 2 +- buildpipeline/pipeline.json | 49 +------ pkg/projects/netcoreappRIDs.props | 11 -- 6 files changed, 60 insertions(+), 154 deletions(-) diff --git a/README.md b/README.md index c6fa1188..df216be6 100644 --- a/README.md +++ b/README.md @@ -10,33 +10,6 @@ The all-up installation experience is described in the [installation scenarios]( document in the dotnet/cli repo. That is the first step to get acquainted with the overall plan and experience we have thought up for installing .NET Core bits. -# Debian daily feed - -Newest Runtime binaries for 2.0.0 in debian feed may be delayed due to external issues by up to 24h. - -## Obtaining binaries - -Add debian feed: - -For ubuntu 14.04 : trusty , ubuntu 16.04:xenial -``` -sudo sh -c 'echo "deb [arch=amd64] http://apt-mo.trafficmanager.net/repos/dotnet/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list' - -sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893 - -sudo apt-get update -``` - -Install: -``` -sudo apt-get install = -``` - -To list available packages: -``` -apt-cache search dotnet-sharedframework | grep 2.0.0 -``` - ## Filing issues This repo should contain issues that are tied to the installation of the "muxer" (the `dotnet` binary) and installation of the .NET Core runtime and libraries. @@ -59,11 +32,11 @@ Daily Builds | Platform | Master
[![][build-badge-master]][build-master] | Release/1.1.X
[![][build-badge-1.X.X]][build-1.X.X] | Release/1.0.X
[![][build-badge-1.0.X]][build-1.0.X] | |---------|:----------:|:----------:|:----------:| -| **Windows (x64)** | [![][win-x64-badge-master]][win-x64-version-master]
[Installer][win-x64-installer-master]
[zip][win-x64-zip-master]
[Symbols (zip)][win-x64-symbols-zip-master]
Portable Build
[Installer][win-x64-installer-master]
[zip][win-x64-zip-master]
[Symbols (zip)][win-x64-symbols-zip-master] | [![][win-x64-badge-1.1.X]][win-x64-version-1.1.X]
[Installer][win-x64-installer-1.1.X]
[zip][win-x64-zip-1.1.X] | [![][win-x64-badge-preview]][win-x64-version-preview]
[Installer][win-x64-installer-preview]
[zip][win-x64-zip-preview] | -| **Windows (x86)** | [![][win-x86-badge-master]][win-x86-version-master]
[Installer][win-x86-installer-master]
[zip][win-x86-zip-master]
[Symbols (zip)][win-x86-symbols-zip-master]
Portable Build
[Installer][win-x86-installer-master]
[zip][win-x86-zip-master]
[Symbols (zip)][win-x86-symbols-zip-master] | [![][win-x86-badge-1.1.X]][win-x86-version-1.1.X]
[Installer][win-x86-installer-1.1.X]
[zip][win-x86-zip-1.1.X] | [![][win-x86-badge-preview]][win-x86-version-preview]
[Installer][win-x86-installer-preview]
[zip][win-x86-zip-preview] | -| **Windows (arm32)** | [![][win-arm-badge-master]][win-arm-version-master]
[zip][win-arm-zip-master]
[Symbols (zip)][win-arm-symbols-zip-master]
Portable Build
[zip][win-arm-zip-master]
[Symbols (zip)][win-arm-symbols-zip-master] | N/A | N/A | -| **Windows (arm64)** | [![][win-arm64-badge-master]][win-arm64-version-master]
[zip][win-arm64-zip-master]
[Symbols (zip)][win-arm64-symbols-zip-master]
Portable Build
[zip][win-arm64-zip-master]
[Symbols (zip)][win-arm64-symbols-zip-master] | N/A | N/A | -| **Mac OS X (x64)** | [![][osx-badge-master]][osx-version-master]
[Installer][osx-installer-master]
[tar.gz][osx-targz-master]
[Symbols (tar.gz)][osx-symbols-targz-master]
Portable Build
[Installer][osx-installer-master]
[tar.gz][osx-targz-master]
[Symbols (tar.gz)][osx-symbols-targz-master] | [![][osx-badge-1.1.X]][osx-version-1.1.X]
[Installer][osx-installer-1.1.X]
[tar.gz][osx-targz-1.1.X] | [![][osx-badge-preview]][osx-version-preview]
[Installer][osx-installer-preview]
[tar.gz][osx-targz-preview] | +| **Windows (x64)** | [![][win-x64-badge-master]][win-x64-version-master]
[Installer][win-x64-installer-master]
[zip][win-x64-zip-master]
[Symbols (zip)][win-x64-symbols-zip-master] | [![][win-x64-badge-1.1.X]][win-x64-version-1.1.X]
[Installer][win-x64-installer-1.1.X]
[zip][win-x64-zip-1.1.X] | [![][win-x64-badge-preview]][win-x64-version-preview]
[Installer][win-x64-installer-preview]
[zip][win-x64-zip-preview] | +| **Windows (x86)** | [![][win-x86-badge-master]][win-x86-version-master]
[Installer][win-x86-installer-master]
[zip][win-x86-zip-master]
[Symbols (zip)][win-x86-symbols-zip-master] | [![][win-x86-badge-1.1.X]][win-x86-version-1.1.X]
[Installer][win-x86-installer-1.1.X]
[zip][win-x86-zip-1.1.X] | [![][win-x86-badge-preview]][win-x86-version-preview]
[Installer][win-x86-installer-preview]
[zip][win-x86-zip-preview] | +| **Windows (arm32)** | [![][win-arm-badge-master]][win-arm-version-master]
[zip][win-arm-zip-master]
[Symbols (zip)][win-arm-symbols-zip-master] | N/A | N/A | +| **Windows (arm64)** | [![][win-arm64-badge-master]][win-arm64-version-master]
[zip][win-arm64-zip-master]
[Symbols (zip)][win-arm64-symbols-zip-master] | N/A | N/A | +| **Mac OS X (x64)** | [![][osx-badge-master]][osx-version-master]
[Installer][osx-installer-master]
[tar.gz][osx-targz-master]
[Symbols (tar.gz)][osx-symbols-targz-master] | [![][osx-badge-1.1.X]][osx-version-1.1.X]
[Installer][osx-installer-1.1.X]
[tar.gz][osx-targz-1.1.X] | [![][osx-badge-preview]][osx-version-preview]
[Installer][osx-installer-preview]
[tar.gz][osx-targz-preview] | | **Linux (x64)** (for glibc based OS) | [![][linux-x64-badge-master-portable]][linux-x64-version-master-portable]
[tar.gz][linux-x64-targz-master-portable]
[Symbols (tar.gz)][linux-x64-symbols-targz-master-portable] | N/A | N/A | | **Linux (arm)** (for glibc based OS) | [![][linux-arm-badge-master-portable]][linux-arm-version-master-portable]
[tar.gz][linux-arm-targz-master-portable]
[Symbols (tar.gz)][linux-arm-symbols-targz-master-portable] | N/A | N/A | | **Ubuntu 14.04 (x64)** | [![][ubuntu-14.04-badge-master]][ubuntu-14.04-version-master]
[Host][ubuntu-14.04-host-master]
[Host FX Resolver][ubuntu-14.04-hostfxr-master]
[Shared Framework][ubuntu-14.04-sharedfx-master]
[tar.gz][ubuntu-14.04-targz-master]
[Symbols (tar.gz)][ubuntu-14.04-symbols-targz-master] | [![][ubuntu-14.04-badge-1.1.X]][ubuntu-14.04-version-1.1.X]
[Host][ubuntu-14.04-host-1.1.X]
[Host FX Resolver][ubuntu-14.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-14.04-sharedfx-1.1.X]
[tar.gz][ubuntu-14.04-targz-1.1.X] | [![][ubuntu-14.04-badge-preview]][ubuntu-14.04-version-preview]
[Host][ubuntu-14.04-host-preview]
[Host FX Resolver][ubuntu-14.04-hostfxr-preview]
[Shared Framework][ubuntu-14.04-sharedfx-preview]
[tar.gz][ubuntu-14.04-targz-preview] | @@ -90,17 +63,11 @@ Daily Builds [build-1.0.X]: https://devdiv.visualstudio.com/DevDiv/_build/index?definitionId=4187&_a=completed -[win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Windows_x64_Release_version_badge.svg -[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x64.version -[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64.latest.exe -[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest.zip -[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest.zip - -[win-x64-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_x64_Release_version_badge.svg -[win-x64-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x64.portable.version -[win-x64-installer-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64.latest-portable.exe -[win-x64-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest-portable.zip -[win-x64-symbols-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest-portable.zip +[win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_x64_Release_version_badge.svg +[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x64.portable.version +[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64.latest-portable.exe +[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest-portable.zip +[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest-portable.zip [win-x64-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x64_Release_version_badge.svg [win-x64-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x64.version @@ -112,17 +79,11 @@ Daily Builds [win-x64-installer-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-win-x64.latest.exe [win-x64-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x64.latest.zip -[win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Windows_x86_Release_version_badge.svg -[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x86.version -[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86.latest.exe -[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest.zip -[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest.zip - -[win-x86-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_x86_Release_version_badge.svg -[win-x86-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x86.portable.version -[win-x86-installer-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86.latest-portable.exe -[win-x86-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest-portable.zip -[win-x86-symbols-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest-portable.zip +[win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_x86_Release_version_badge.svg +[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x86.portable.version +[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86.latest-portable.exe +[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest-portable.zip +[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest-portable.zip [win-x86-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x86_Release_version_badge.svg [win-x86-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x86.version @@ -134,37 +95,21 @@ Daily Builds [win-x86-installer-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-win-x86.latest.exe [win-x86-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x86.latest.zip -[win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Windows_arm_Release_version_badge.svg -[win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm.version -[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm.latest.zip -[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm.latest.zip +[win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_arm_Release_version_badge.svg +[win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm.portable.version +[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm.latest-portable.zip +[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm.latest-portable.zip -[win-arm-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_arm_Release_version_badge.svg -[win-arm-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm.portable.version -[win-arm-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm.latest-portable.zip -[win-arm-symbols-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm.latest-portable.zip +[win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_arm64_Release_version_badge.svg +[win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm64.portable.version +[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest-portable.zip +[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest-portable.zip -[win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Windows_arm64_Release_version_badge.svg -[win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm64.version -[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest.zip -[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest.zip - -[win-arm64-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_arm64_Release_version_badge.svg -[win-arm64-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm64.portable.version -[win-arm64-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest-portable.zip -[win-arm64-symbols-zip-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest-portable.zip - -[osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_OSX_x64_Release_version_badge.svg -[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx.x64.version -[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64.latest.pkg -[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest.tar.gz -[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz - -[osx-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx_portable_x64_Release_version_badge.svg -[osx-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx.x64.portable.version -[osx-installer-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64.latest-portable.pkg -[osx-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest-portable.tar.gz -[osx-symbols-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest-portable.tar.gz +[osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx_portable_x64_Release_version_badge.svg +[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx.x64.portable.version +[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64.latest-portable.pkg +[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest-portable.tar.gz +[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest-portable.tar.gz [osx-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_OSX_x64_Release_version_badge.svg [osx-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.osx.x64.version @@ -334,3 +279,30 @@ Daily Builds [opensuse-42.1-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_openSUSE_42_1_x64_Release_version_badge.svg [opensuse-42.1-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.opensuse.42.1.x64.version [opensuse-42.1-targz-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/dotnet-opensuse.42.1-x64.latest.tar.gz + +# Debian daily feed + +Newest Runtime binaries for 2.0.0 in debian feed may be delayed due to external issues by up to 24h. + +## Obtaining binaries + +Add debian feed: + +For ubuntu 14.04 : trusty , ubuntu 16.04:xenial +``` +sudo sh -c 'echo "deb [arch=amd64] http://apt-mo.trafficmanager.net/repos/dotnet/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list' + +sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893 + +sudo apt-get update +``` + +Install: +``` +sudo apt-get install = +``` + +To list available packages: +``` +apt-cache search dotnet-sharedframework | grep 2.0.0 +``` diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index 5b2fd0d8..d0a0da0c 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -125,10 +125,6 @@ namespace Microsoft.DotNet.Host.Build // Generate the Sharedfx Version text files List versionFiles = new List() { - "win.x86.version", - "win.x64.version", - "win.arm.version", - "win.arm64.version", "win.x86.portable.version", "win.x64.portable.version", "win.arm.portable.version", @@ -141,7 +137,6 @@ namespace Microsoft.DotNet.Host.Build "ubuntu.16.04.arm.version", "ubuntu.16.10.x64.version", "rhel.x64.version", - "osx.x64.version", "osx.x64.portable.version", "debian.8.armel.version", "debian.x64.version", @@ -207,10 +202,6 @@ namespace Microsoft.DotNet.Host.Build { Dictionary badges = new Dictionary() { - { "sharedfx_Windows_x86", false }, - { "sharedfx_Windows_x64", false }, - { "sharedfx_Windows_arm", false }, - { "sharedfx_Windows_arm64", false }, { "sharedfx_win_portable_x86", false }, { "sharedfx_win_portable_x64", false }, { "sharedfx_win_portable_arm", false }, @@ -223,7 +214,6 @@ namespace Microsoft.DotNet.Host.Build { "sharedfx_Ubuntu_16_04_arm", false }, { "sharedfx_Ubuntu_16_10_x64", false }, { "sharedfx_RHEL_x64", false }, - { "sharedfx_OSX_x64", false }, { "sharedfx_osx_portable_x64", false }, // { "sharedfx_Debian_8_armel", false }, { "sharedfx_Debian_x64", false }, diff --git a/buildpipeline/Core-Setup-Signing-Windows-x64.json b/buildpipeline/Core-Setup-Signing-Windows-x64.json index d973401c..975be01b 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x64.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x64.json @@ -478,13 +478,13 @@ "value": "PassedViaPipeBuild" }, "SIGNED_PACKAGES": { - "value": "false" + "value": "true" }, "CertificateId": { "value": "400" }, "RID": { - "value": "win81-x64", + "value": "win-x64", "allowOverride": true }, "MsbuildSigningArguments": { diff --git a/buildpipeline/Core-Setup-Signing-Windows-x86.json b/buildpipeline/Core-Setup-Signing-Windows-x86.json index ade23e6f..1d921b6d 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x86.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x86.json @@ -457,7 +457,7 @@ "value": "400" }, "RID": { - "value": "win81-x86", + "value": "win-x86", "allowOverride": true }, "PB_PortableBuild": { diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 76b06e17..9ee9f3af 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -95,14 +95,6 @@ "Platform": "x64" } }, - { - "Name": "Core-Setup-OSX-x64", - "ReportingParameters": { - "OperatingSystem": "OSX", - "Type": "build/product/", - "Platform": "x64" - } - }, { "Name": "Core-Setup-OSX-x64", "Parameters": { @@ -139,19 +131,7 @@ { "Name": "Core-Setup-Signing-Windows-x64", "Parameters": { - "SIGNED_PACKAGES": "true" - }, - "ReportingParameters": { - "OperatingSystem": "Windows", - "Type": "build/product/", - "Platform": "x64" - } - }, - { - "Name": "Core-Setup-Signing-Windows-x64", - "Parameters": { - "PB_PortableBuild": "-portable", - "RID": "win-x64" + "PB_PortableBuild": "-portable" }, "ReportingParameters": { "OperatingSystem": "Windows", @@ -160,19 +140,10 @@ "Platform": "x64" } }, - { - "Name": "Core-Setup-Signing-Windows-x86", - "ReportingParameters": { - "OperatingSystem": "Windows", - "Type": "build/product/", - "Platform": "x86" - } - }, { "Name": "Core-Setup-Signing-Windows-x86", "Parameters": { - "PB_PortableBuild": "-portable", - "RID": "win-x86" + "PB_PortableBuild": "-portable" }, "ReportingParameters": { "OperatingSystem": "Windows", @@ -219,14 +190,6 @@ "Type": "build/product/" } }, - { - "Name": "Core-Setup-Windows-arm32", - "ReportingParameters": { - "OperatingSystem": "Windows", - "Type": "build/product/", - "Platform": "arm" - } - }, { "Name": "Core-Setup-Windows-arm32", "Parameters": { @@ -250,14 +213,6 @@ "Type": "build/product/", "Platform": "arm64" } - }, - { - "Name": "Core-Setup-Windows-arm64", - "ReportingParameters": { - "OperatingSystem": "Windows", - "Type": "build/product/", - "Platform": "arm64" - } } ] } diff --git a/pkg/projects/netcoreappRIDs.props b/pkg/projects/netcoreappRIDs.props index b09f79ae..3f180d93 100644 --- a/pkg/projects/netcoreappRIDs.props +++ b/pkg/projects/netcoreappRIDs.props @@ -20,22 +20,11 @@ armel - - - x86 - x86 - - - arm - - - arm64 - arm From 2fd5f10b4ab0ae774ca89176afcc4750da138deb Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Fri, 21 Apr 2017 15:07:49 -0700 Subject: [PATCH 210/625] Move Core-Setup to Preview2 (#2145) --- TestAssets/TestProjects/LightupClient/project.json | 2 +- TestAssets/TestProjects/LightupLib/project.json | 2 +- TestAssets/TestProjects/PortableApp/project.json | 2 +- TestAssets/TestProjects/PortableTestApp/project.json | 2 +- TestAssets/TestProjects/SharedFxLookupPortableApp/project.json | 2 +- TestAssets/TestProjects/StandaloneApp/project.json.template | 2 +- TestAssets/TestProjects/StandaloneTestApp/project.json.template | 2 +- branchinfo.txt | 2 +- src/Microsoft.DotNet.PlatformAbstractions/project.json | 2 +- src/Microsoft.Extensions.DependencyModel/project.json | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/TestAssets/TestProjects/LightupClient/project.json b/TestAssets/TestProjects/LightupClient/project.json index 76ffade3..b98525da 100644 --- a/TestAssets/TestProjects/LightupClient/project.json +++ b/TestAssets/TestProjects/LightupClient/project.json @@ -9,7 +9,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-preview1-*" + "version": "2.0.0-preview2-*" } } } diff --git a/TestAssets/TestProjects/LightupLib/project.json b/TestAssets/TestProjects/LightupLib/project.json index a9b59a19..7607c6ae 100644 --- a/TestAssets/TestProjects/LightupLib/project.json +++ b/TestAssets/TestProjects/LightupLib/project.json @@ -9,7 +9,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-preview1-*" + "version": "2.0.0-preview2-*" }, "Newtonsoft.Json": "9.0.1-beta1", "Microsoft.CodeAnalysis.Analyzers": { diff --git a/TestAssets/TestProjects/PortableApp/project.json b/TestAssets/TestProjects/PortableApp/project.json index 01cbfa32..29ccd7e6 100644 --- a/TestAssets/TestProjects/PortableApp/project.json +++ b/TestAssets/TestProjects/PortableApp/project.json @@ -9,7 +9,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-preview1-*" + "version": "2.0.0-preview2-*" }, "Newtonsoft.Json": "9.0.1-beta1", "Microsoft.CodeAnalysis.Analyzers": { diff --git a/TestAssets/TestProjects/PortableTestApp/project.json b/TestAssets/TestProjects/PortableTestApp/project.json index 45d6ad60..63f7ef5b 100644 --- a/TestAssets/TestProjects/PortableTestApp/project.json +++ b/TestAssets/TestProjects/PortableTestApp/project.json @@ -12,7 +12,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-preview1-*" + "version": "2.0.0-preview2-*" }, "Newtonsoft.Json": "9.0.1-beta1", "xunit": "2.1.0", diff --git a/TestAssets/TestProjects/SharedFxLookupPortableApp/project.json b/TestAssets/TestProjects/SharedFxLookupPortableApp/project.json index 01cbfa32..29ccd7e6 100644 --- a/TestAssets/TestProjects/SharedFxLookupPortableApp/project.json +++ b/TestAssets/TestProjects/SharedFxLookupPortableApp/project.json @@ -9,7 +9,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-preview1-*" + "version": "2.0.0-preview2-*" }, "Newtonsoft.Json": "9.0.1-beta1", "Microsoft.CodeAnalysis.Analyzers": { diff --git a/TestAssets/TestProjects/StandaloneApp/project.json.template b/TestAssets/TestProjects/StandaloneApp/project.json.template index 8d6afbeb..1870907b 100644 --- a/TestAssets/TestProjects/StandaloneApp/project.json.template +++ b/TestAssets/TestProjects/StandaloneApp/project.json.template @@ -5,7 +5,7 @@ "frameworks": { "netcoreapp2.0": { "dependencies": { - "Microsoft.NETCore.App": "2.0.0-preview1-*", + "Microsoft.NETCore.App": "2.0.0-preview2-*", "Newtonsoft.Json": "9.0.1-beta1", "Microsoft.CodeAnalysis.Analyzers": { diff --git a/TestAssets/TestProjects/StandaloneTestApp/project.json.template b/TestAssets/TestProjects/StandaloneTestApp/project.json.template index 1b5a4784..718e76e8 100644 --- a/TestAssets/TestProjects/StandaloneTestApp/project.json.template +++ b/TestAssets/TestProjects/StandaloneTestApp/project.json.template @@ -9,7 +9,7 @@ "portable-net451+win8" ], "dependencies": { - "Microsoft.NETCore.App": "2.0.0-preview1-*", + "Microsoft.NETCore.App": "2.0.0-preview2-*", "Newtonsoft.Json": "9.0.1-beta1", "xunit": "2.1.0", "xunit.netcore.extensions": "1.0.0-prerelease-00206", diff --git a/branchinfo.txt b/branchinfo.txt index 21e76bf0..4c97cb55 100644 --- a/branchinfo.txt +++ b/branchinfo.txt @@ -6,6 +6,6 @@ MINOR_VERSION=0 PATCH_VERSION=0 STABILIZE_PACKAGE_VERSION=false LOCK_HOST_VERSION=false -RELEASE_SUFFIX=preview1 +RELEASE_SUFFIX=preview2 CHANNEL=master BRANCH_NAME=master diff --git a/src/Microsoft.DotNet.PlatformAbstractions/project.json b/src/Microsoft.DotNet.PlatformAbstractions/project.json index fb404957..767fd2e5 100644 --- a/src/Microsoft.DotNet.PlatformAbstractions/project.json +++ b/src/Microsoft.DotNet.PlatformAbstractions/project.json @@ -1,6 +1,6 @@ { "description": "Abstractions for making code that uses file system and environment testable.", - "version": "2.0.0-preview1-*", + "version": "2.0.0-preview2-*", "buildOptions": { "warningsAsErrors": true, "keyFile": "../../setuptools/Key.snk", diff --git a/src/Microsoft.Extensions.DependencyModel/project.json b/src/Microsoft.Extensions.DependencyModel/project.json index 33ebb0ad..f6708aeb 100644 --- a/src/Microsoft.Extensions.DependencyModel/project.json +++ b/src/Microsoft.Extensions.DependencyModel/project.json @@ -1,6 +1,6 @@ { "description": "Abstractions for reading `.deps` files.", - "version": "2.0.0-preview1-*", + "version": "2.0.0-preview2-*", "buildOptions": { "warningsAsErrors": true, "keyFile": "../../setuptools/Key.snk" From 94cf72279ec1bd0693ed1d24fb98b835d4a0c831 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Fri, 21 Apr 2017 17:48:45 -0500 Subject: [PATCH 211/625] Disable non-portable linux builds. --- README.md | 35 +- .../dotnet-host-build/PublishTargets.cs | 12 - buildpipeline/Core-Setup-RHEL7-x64.json | 306 ------------------ buildpipeline/pipeline.json | 55 ---- pkg/projects/netcoreappRIDs.props | 6 - 5 files changed, 3 insertions(+), 411 deletions(-) delete mode 100644 buildpipeline/Core-Setup-RHEL7-x64.json diff --git a/README.md b/README.md index df216be6..268b3163 100644 --- a/README.md +++ b/README.md @@ -40,16 +40,14 @@ Daily Builds | **Linux (x64)** (for glibc based OS) | [![][linux-x64-badge-master-portable]][linux-x64-version-master-portable]
[tar.gz][linux-x64-targz-master-portable]
[Symbols (tar.gz)][linux-x64-symbols-targz-master-portable] | N/A | N/A | | **Linux (arm)** (for glibc based OS) | [![][linux-arm-badge-master-portable]][linux-arm-version-master-portable]
[tar.gz][linux-arm-targz-master-portable]
[Symbols (tar.gz)][linux-arm-symbols-targz-master-portable] | N/A | N/A | | **Ubuntu 14.04 (x64)** | [![][ubuntu-14.04-badge-master]][ubuntu-14.04-version-master]
[Host][ubuntu-14.04-host-master]
[Host FX Resolver][ubuntu-14.04-hostfxr-master]
[Shared Framework][ubuntu-14.04-sharedfx-master]
[tar.gz][ubuntu-14.04-targz-master]
[Symbols (tar.gz)][ubuntu-14.04-symbols-targz-master] | [![][ubuntu-14.04-badge-1.1.X]][ubuntu-14.04-version-1.1.X]
[Host][ubuntu-14.04-host-1.1.X]
[Host FX Resolver][ubuntu-14.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-14.04-sharedfx-1.1.X]
[tar.gz][ubuntu-14.04-targz-1.1.X] | [![][ubuntu-14.04-badge-preview]][ubuntu-14.04-version-preview]
[Host][ubuntu-14.04-host-preview]
[Host FX Resolver][ubuntu-14.04-hostfxr-preview]
[Shared Framework][ubuntu-14.04-sharedfx-preview]
[tar.gz][ubuntu-14.04-targz-preview] | -| **Ubuntu 14.04 (arm32)** | [![][ubuntu-14.04-arm-badge-master]][ubuntu-14.04-arm-version-master]
[tar.gz][ubuntu-14.04-arm-targz-master]
[Symbols (tar.gz)][ubuntu-14.04-arm-symbols-targz-master] | N/A | N/A | | **Ubuntu 16.04 (x64)** | [![][ubuntu-16.04-badge-master]][ubuntu-16.04-version-master]
[Host][ubuntu-16.04-host-master]
[Host FX Resolver][ubuntu-16.04-hostfxr-master]
[Shared Framework][ubuntu-16.04-sharedfx-master]
[tar.gz][ubuntu-16.04-targz-master]
[Symbols (tar.gz)][ubuntu-16.04-symbols-targz-master] | [![][ubuntu-16.04-badge-1.1.X]][ubuntu-16.04-version-1.1.X]
[Host][ubuntu-16.04-host-1.1.X]
[Host FX Resolver][ubuntu-16.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.04-sharedfx-1.1.X]
[tar.gz][ubuntu-16.04-targz-1.1.X] | [![][ubuntu-16.04-badge-preview]][ubuntu-16.04-version-preview]
[Host][ubuntu-16.04-host-preview]
[Host FX Resolver][ubuntu-16.04-hostfxr-preview]
[Shared Framework][ubuntu-16.04-sharedfx-preview]
[tar.gz][ubuntu-16.04-targz-preview] | -| **Ubuntu 16.04 (arm32)** | [![][ubuntu-16.04-arm-badge-master]][ubuntu-16.04-arm-version-master]
[tar.gz][ubuntu-16.04-arm-targz-master]
[Symbols (tar.gz)][ubuntu-16.04-arm-symbols-targz-master] | N/A | N/A | | **Ubuntu 16.10 (x64)** | [![][ubuntu-16.10-badge-master]][ubuntu-16.10-version-master]
[Host][ubuntu-16.10-host-master]
[Host FX Resolver][ubuntu-16.10-hostfxr-master]
[Shared Framework][ubuntu-16.10-sharedfx-master]
[tar.gz][ubuntu-16.10-targz-master]
[Symbols (tar.gz)][ubuntu-16.10-symbols-targz-master] | [![][ubuntu-16.10-badge-1.1.X]][ubuntu-16.10-version-1.1.X]
[Host][ubuntu-16.10-host-1.1.X]
[Host FX Resolver][ubuntu-16.10-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.10-sharedfx-1.1.X]
[tar.gz][ubuntu-16.10-targz-1.1.X] | N/A | | **Debian 8.2 (x64)** | [![][debian-8.2-badge-master]][debian-8.2-version-master]
[Host][debian-8.2-host-master]
[Host FX Resolver][debian-8.2-hostfxr-master]
[Shared Framework][debian-8.2-sharedfx-master]
[tar.gz][debian-8.2-targz-master]
[Symbols (tar.gz)][debian-8.2-symbols-targz-master] | [![][debian-8.2-badge-1.1.X]][debian-8.2-version-1.1.X]
[Host][debian-8.2-host-1.1.X]
[Host FX Resolver][debian-8.2-hostfxr-1.1.X]
[Shared Framework][debian-8.2-sharedfx-1.1.X]
[tar.gz][debian-8.2-targz-1.1.X] | [![][debian-8.2-badge-preview]][debian-8.2-version-preview]
[Host][debian-8.2-host-preview]
[Host FX Resolver][debian-8.2-hostfxr-preview]
[Shared Framework][debian-8.2-sharedfx-preview]
[tar.gz][debian-8.2-targz-preview] | | **CentOS 7.1 (x64)** | N/A | [![][centos-badge-1.1.X]][centos-version-1.1.X]
[tar.gz][centos-targz-1.1.X] | [![][centos-badge-preview]][centos-version-preview]
[tar.gz][centos-targz-preview] | -| **RHEL 7.2 (x64)** | [![][rhel-badge-master]][rhel-version-master]
[tar.gz][rhel-targz-master]
[Symbols (tar.gz)][rhel-symbols-targz-master] | [![][rhel-badge-1.1.X]][rhel-version-1.1.X]
[tar.gz][rhel-targz-1.1.X] | [![][rhel-badge-preview]][rhel-version-preview]
[tar.gz][rhel-targz-preview] | +| **RHEL 7.2 (x64)** | N/A | [![][rhel-badge-1.1.X]][rhel-version-1.1.X]
[tar.gz][rhel-targz-1.1.X] | [![][rhel-badge-preview]][rhel-version-preview]
[tar.gz][rhel-targz-preview] | | **Fedora 23 (x64)** | N/A | [![][fedora-23-badge-1.1.X]][fedora-23-version-1.1.X]
[tar.gz][fedora-23-targz-1.1.X] | [![][fedora-23-badge-preview]][fedora-23-version-preview]
[tar.gz][fedora-23-targz-preview] | -| **Fedora 24 (x64)** | [![][fedora-24-badge-master]][fedora-24-version-master]
[tar.gz][fedora-24-targz-master]
[Symbols (tar.gz)][fedora-24-symbols-targz-master] | [![][fedora-24-badge-1.1.X]][fedora-24-version-1.1.X]
[tar.gz][fedora-24-targz-1.1.X] | N/A | -| **OpenSUSE 42.1 (x64)** | [![][opensuse-42.1-badge-master]][opensuse-42.1-version-master]
[tar.gz][opensuse-42.1-targz-master]
[Symbols (tar.gz)][opensuse-42.1-symbols-targz-master] | [![][opensuse-42.1-badge-1.1.X]][opensuse-42.1-version-1.1.X]
[tar.gz][opensuse-42.1-targz-1.1.X] | N/A | +| **Fedora 24 (x64)** | N/A | [![][fedora-24-badge-1.1.X]][fedora-24-version-1.1.X]
[tar.gz][fedora-24-targz-1.1.X] | N/A | +| **OpenSUSE 42.1 (x64)** | N/A | [![][opensuse-42.1-badge-1.1.X]][opensuse-42.1-version-1.1.X]
[tar.gz][opensuse-42.1-targz-1.1.X] | N/A | *Note: Our .deb packages are put together slightly differently than the other OS specific installers. Instead of combining everything, we have separate component packages that depend on each other. If you're installing these directly from the .deb files (via dpkg or similar), then you'll need to install them in the order presented above.* @@ -155,12 +153,6 @@ Daily Builds [ubuntu-14.04-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-ubuntu-x64.latest.tar.gz -[ubuntu-14.04-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Ubuntu_arm_Release_version_badge.svg -[ubuntu-14.04-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.arm.version -[ubuntu-14.04-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu-arm.latest.tar.gz -[ubuntu-14.04-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu-arm.latest.tar.gz - - [ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Ubuntu_16_04_x64_Release_version_badge.svg [ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04.x64.version [ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.04-x64.latest.deb @@ -184,12 +176,6 @@ Daily Builds [ubuntu-16.04-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-ubuntu.16.04-x64.latest.tar.gz -[ubuntu-16.04-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Ubuntu_16_04_arm_Release_version_badge.svg -[ubuntu-16.04-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04.arm.version -[ubuntu-16.04-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu.16.04-arm.latest.tar.gz -[ubuntu-16.04-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu.16.04-arm.latest.tar.gz - - [ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Ubuntu_16_10_x64_Release_version_badge.svg [ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.10.x64.version [ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.10-x64.latest.deb @@ -238,11 +224,6 @@ Daily Builds [centos-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-centos-x64.latest.tar.gz -[rhel-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_RHEL_x64_Release_version_badge.svg -[rhel-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.rhel.x64.version -[rhel-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-rhel-x64.latest.tar.gz -[rhel-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-rhel-x64.latest.tar.gz - [rhel-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_RHEL_x64_Release_version_badge.svg [rhel-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.rhel.x64.version [rhel-targz-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/dotnet-rhel-x64.latest.tar.gz @@ -261,21 +242,11 @@ Daily Builds [fedora-23-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-fedora.23-x64.latest.tar.gz -[fedora-24-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Fedora_24_x64_Release_version_badge.svg -[fedora-24-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.fedora.24.x64.version -[fedora-24-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-fedora.24-x64.latest.tar.gz -[fedora-24-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-fedora.24-x64.latest.tar.gz - [fedora-24-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Fedora_24_x64_Release_version_badge.svg [fedora-24-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.fedora.24.x64.version [fedora-24-targz-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/dotnet-fedora.24-x64.latest.tar.gz -[opensuse-42.1-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_openSUSE_42_1_x64_Release_version_badge.svg -[opensuse-42.1-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.opensuse.42.1.x64.version -[opensuse-42.1-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-opensuse.42.1-x64.latest.tar.gz -[opensuse-42.1-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-opensuse.42.1-x64.latest.tar.gz - [opensuse-42.1-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_openSUSE_42_1_x64_Release_version_badge.svg [opensuse-42.1-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.opensuse.42.1.x64.version [opensuse-42.1-targz-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/dotnet-opensuse.42.1-x64.latest.tar.gz diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index d0a0da0c..dc14ce7f 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -132,16 +132,10 @@ namespace Microsoft.DotNet.Host.Build "linux.x64.portable.version", "ubuntu.x64.version", "linux.arm.portable.version", - "ubuntu.arm.version", "ubuntu.16.04.x64.version", - "ubuntu.16.04.arm.version", "ubuntu.16.10.x64.version", - "rhel.x64.version", "osx.x64.portable.version", - "debian.8.armel.version", "debian.x64.version", - "fedora.24.x64.version", - "opensuse.42.1.x64.version" }; PublishCoreHostPackagesToFeed(); @@ -208,17 +202,11 @@ namespace Microsoft.DotNet.Host.Build { "sharedfx_win_portable_arm64", false }, { "sharedfx_linux_portable_x64", false }, { "sharedfx_Ubuntu_x64", false }, - { "sharedfx_Ubuntu_arm", false }, { "sharedfx_linux_portable_arm", false }, { "sharedfx_Ubuntu_16_04_x64", false }, - { "sharedfx_Ubuntu_16_04_arm", false }, { "sharedfx_Ubuntu_16_10_x64", false }, - { "sharedfx_RHEL_x64", false }, { "sharedfx_osx_portable_x64", false }, - // { "sharedfx_Debian_8_armel", false }, { "sharedfx_Debian_x64", false }, - { "sharedfx_Fedora_24_x64", false }, - { "sharedfx_openSUSE_42_1_x64", false } }; List blobs = new List(AzurePublisherTool.ListBlobs($"{Channel}/Binaries/{SharedFrameworkNugetVersion}/")); diff --git a/buildpipeline/Core-Setup-RHEL7-x64.json b/buildpipeline/Core-Setup-RHEL7-x64.json deleted file mode 100644 index 4fc44bae..00000000 --- a/buildpipeline/Core-Setup-RHEL7-x64.json +++ /dev/null @@ -1,306 +0,0 @@ -{ - "build": [ - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "git checkout", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "git", - "arguments": "checkout $(SourceVersion)", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Create host machine tools sandbox", - "timeoutInMinutes": 0, - "task": { - "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "SourceFolder": "pkg", - "Contents": "**", - "TargetFolder": "$(DockerHost_Sandbox)", - "CleanTargetFolder": "false", - "OverWrite": "false", - "flattenFolders": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Initialize tools for host machine", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "$(DockerHost_Sandbox)/init-tools.sh", - "args": "", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Initialize Docker", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "$(DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", - "args": "$(DockerImageName)", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Run build in Docker container", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerrun-as-current-user.sh", - "args": "-t --rm --sig-proxy=true --name $(DockerContainerName) -v $(Build.SourcesDirectory):/opt/code -w /opt/code -e CONNECTION_STRING -e PUBLISH_TO_AZURE_BLOB $(DockerImageName) /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh $(BuildArguments)\"", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Cleanup Docker", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "perl", - "arguments": "$(DockerHost_ToolsDirectory)/scripts/docker/cleanup-docker.sh", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Copy Publish Artifact: Build Logs", - "timeoutInMinutes": 0, - "task": { - "id": "1d341bb0-2106-458c-8422-d00bcea6512a", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "CopyRoot": "", - "Contents": "**/*.log", - "ArtifactName": "Build Logs", - "ArtifactType": "Container", - "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Cleanup VSTS Agent", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "$(DockerHost_ToolsDirectory)/msbuild.sh", - "arguments": "cleanupagent.proj /p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", - "workingFolder": "$(DockerHost_ToolsDirectory)/scripts/vstsagent/", - "failOnStandardError": "false" - } - } - ], - "options": [ - { - "enabled": false, - "definition": { - "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" - }, - "inputs": { - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "7c555368-ca64-4199-add6-9ebaf0b0137d" - }, - "inputs": { - "multipliers": "[]", - "parallel": "false", - "continueOnError": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "a9db38f9-9fdc-478c-b0f9-464221e58316" - }, - "inputs": { - "workItemType": "4777", - "assignToRequestor": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "57578776-4c22-4526-aeb0-86b6da17ee9c" - }, - "inputs": { - "additionalFields": "{}" - } - } - ], - "variables": { - "BuildConfiguration": { - "value": "Release", - "allowOverride": true - }, - "BuildArguments": { - "value": "--skip-prereqs --configuration $(BuildConfiguration) --targets Default", - "allowOverride": true - }, - "DockerImageName": { - "value": "microsoft/dotnet-buildtools-prereqs:rhel7_prereqs_2" - }, - "DockerContainerName": { - "value": "core-setup-rhel-$(Build.BuildId)", - "allowOverride": true - }, - "CONNECTION_STRING": { - "value": "PassedViaPipeBuild" - }, - "PUBLISH_TO_AZURE_BLOB": { - "value": "true", - "allowOverride": true - }, - "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" - }, - "NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, - "GITHUB_PASSWORD": { - "value": "PassedViaPipeBuild" - }, - "PB_CleanAgent": { - "value": "true" - }, - "DockerHost_Sandbox": { - "value": "$(Build.StagingDirectory)/HostSandbox" - }, - "DockerHost_ToolsDirectory": { - "value": "$(DockerHost_Sandbox)/Tools" - }, - "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" - } - }, - "demands": [ - "Agent.OS -equals linux" - ], - "retentionRules": [ - { - "branches": [ - "+refs/heads/*" - ], - "artifacts": [], - "artifactTypesToDelete": [ - "FilePath", - "SymbolStore" - ], - "daysToKeep": 2, - "minimumToKeep": 1, - "deleteBuildRecord": true, - "deleteTestResults": true - } - ], - "buildNumberFormat": "$(Date:yyyMMdd)$(Rev:.r)", - "jobAuthorizationScope": "projectCollection", - "jobTimeoutInMinutes": 90, - "badgeEnabled": true, - "repository": { - "properties": { - "connectedServiceId": "f4c31735-42d2-4c3a-bc47-7ac06fd0dccc", - "apiUrl": "https://api.github.com/repos/dotnet/core-setup", - "branchesUrl": "https://api.github.com/repos/dotnet/core-setup/branches", - "cloneUrl": "https://github.com/dotnet/core-setup.git", - "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", - "gitLfsSupport": "false", - "skipSyncSource": "false", - "fetchDepth": "0", - "cleanOptions": "0" - }, - "id": "https://github.com/dotnet/core-setup.git", - "type": "GitHub", - "name": "dotnet/core-setup", - "url": "https://github.com/dotnet/core-setup.git", - "defaultBranch": "master", - "clean": "true", - "checkoutSubmodules": false - }, - "quality": "definition", - "queue": { - "pool": { - "id": 39, - "name": "DotNet-Build" - }, - "id": 36, - "name": "DotNet-Build" - }, - "path": "\\", - "type": "build", - "id": 3545, - "name": "Core-Setup-RHEL7-x64", - "project": { - "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "name": "DevDiv", - "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", - "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "state": "wellFormed", - "revision": 418097620 - } -} \ No newline at end of file diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 9ee9f3af..a7bce991 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -29,28 +29,6 @@ "Platform": "x64" } }, - { - "Name": "Core-Setup-Linux", - "Parameters": { - "PB_DockerOS": "fedora.24" - }, - "ReportingParameters": { - "OperatingSystem": "Fedora 24", - "Type": "build/product/", - "Platform": "x64" - } - }, - { - "Name": "Core-Setup-Linux", - "Parameters": { - "PB_DockerOS": "opensuse.42.1" - }, - "ReportingParameters": { - "OperatingSystem": "OpenSuse 42.1", - "Type": "build/product/", - "Platform": "x64" - } - }, { "Name": "Core-Setup-Linux", "Parameters": { @@ -119,15 +97,6 @@ "Platform": "x64" } }, - { - "Name": "Core-Setup-RHEL7-x64", - "ReportingParameters": { - "SubType": "Native", - "OperatingSystem": "RedHat 7", - "Type": "build/product/", - "Platform": "x64" - } - }, { "Name": "Core-Setup-Signing-Windows-x64", "Parameters": { @@ -152,18 +121,6 @@ "Platform": "x86" } }, - { - "Name": "Core-Setup-CrossBuild", - "Parameters": { - "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", - "PB_Architecture": "arm", - "TargetRid": "ubuntu.14.04-arm" - }, - "ReportingParameters": { - "OperatingSystem": "Ubuntu 14.04", - "Type": "build/product/" - } - }, { "Name": "Core-Setup-CrossBuild", "Parameters": { @@ -178,18 +135,6 @@ "Type": "build/product/" } }, - { - "Name": "Core-Setup-CrossBuild", - "Parameters": { - "PB_DockerTag": "ubuntu-16.04-cross-ef0ac75-20175511035548", - "PB_Architecture": "arm", - "TargetRid": "ubuntu.16.04-arm" - }, - "ReportingParameters": { - "OperatingSystem": "Ubuntu 16.04", - "Type": "build/product/" - } - }, { "Name": "Core-Setup-Windows-arm32", "Parameters": { diff --git a/pkg/projects/netcoreappRIDs.props b/pkg/projects/netcoreappRIDs.props index 3f180d93..dce4ae8e 100644 --- a/pkg/projects/netcoreappRIDs.props +++ b/pkg/projects/netcoreappRIDs.props @@ -31,15 +31,9 @@ arm64 - - arm - arm - - arm - armel From b4bb6cfc7beda3f60aaea0e46df5578d3d7fd74c Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Fri, 21 Apr 2017 20:13:01 -0500 Subject: [PATCH 212/625] Kick off new build --- Documentation/dummy.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/dummy.txt b/Documentation/dummy.txt index bda413fd..d5bfe986 100644 --- a/Documentation/dummy.txt +++ b/Documentation/dummy.txt @@ -1 +1 @@ -4/21/2017 11:04:00 AM +4/21/2017 08:12:00 PM From 2bd171a3cf633244ba08b5944c2ace4191aea684 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 24 Apr 2017 11:58:47 -0500 Subject: [PATCH 213/625] Only publish identity packages from a single build leg (windows x64). Also, fail publishing if an existing blob exists - no more overwriting azure storage blobs. We need to ensure each leg publishes distinct packages so we don't get into race conditions in publishing. --- .../dotnet-host-build/PublishTargets.cs | 21 +++++++++++++++---- .../Publishing/AzurePublisher.cs | 6 +++++- .../Utils/EnvVars.cs | 2 +- .../Core-Setup-Signing-Windows-x64.json | 5 ++++- .../Microsoft.NETCore.App.pkgproj | 2 +- ...t.NETCore.UniversalWindowsPlatform.pkgproj | 2 +- 6 files changed, 29 insertions(+), 9 deletions(-) diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs index dc14ce7f..908a092f 100644 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ b/build_projects/dotnet-host-build/PublishTargets.cs @@ -309,21 +309,34 @@ namespace Microsoft.DotNet.Host.Build { foreach (var file in Directory.GetFiles(Dirs.CorehostLocalPackages, "*.nupkg")) { - var hostBlob = $"{Channel}/Binaries/{SharedFrameworkNugetVersion}/{Path.GetFileName(file)}"; - AzurePublisherTool.PublishFile(hostBlob, file); - Console.WriteLine($"Publishing package {hostBlob} to Azure."); + if (!IsRidAgnosticPackage(file) || EnvVars.PublishRidAgnosticPackages) + { + var hostBlob = $"{Channel}/Binaries/{SharedFrameworkNugetVersion}/{Path.GetFileName(file)}"; + AzurePublisherTool.PublishFile(hostBlob, file); + Console.WriteLine($"Publishing package {hostBlob} to Azure."); + } + else + { + Console.WriteLine($"Skipping publishing package {file} to Azure because it is RID-agnostic and EnvVars.PublishRidAgnosticPackages is not set to true."); + } } return c.Success(); } + private static bool IsRidAgnosticPackage(string packagePath) + { + var fileName = Path.GetFileName(packagePath); + return !fileName.StartsWith("runtime.", StringComparison.OrdinalIgnoreCase); + } + [Target] public static BuildTargetResult PublishManagedPackages(BuildTargetContext c) { // When building on non windows platforms, we don't compile the full set of // tfms a package targets (to prevent the need of having mono and the reference // assemblies installed. So we shouldn't publish these packages. - if (EnvVars.Signed && CurrentPlatform.IsWindows) + if (EnvVars.PublishRidAgnosticPackages && CurrentPlatform.IsWindows) { foreach (var file in Directory.GetFiles(Dirs.Packages, "*.nupkg")) { diff --git a/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs b/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs index 64b693ed..8de30ba9 100644 --- a/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs +++ b/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs @@ -57,7 +57,11 @@ namespace Microsoft.DotNet.Cli.Build Console.WriteLine($"Publishing file '{file}' to '{blob}'"); CloudBlockBlob blockBlob = _blobContainer.GetBlockBlobReference(blob); - blockBlob.UploadFromFileAsync(file).Wait(); + blockBlob.UploadFromFileAsync( + file, + AccessCondition.GenerateIfNotExistsCondition(), + options: null, + operationContext: null).Wait(); SetBlobPropertiesBasedOnFileType(blockBlob); } diff --git a/build_projects/shared-build-targets-utils/Utils/EnvVars.cs b/build_projects/shared-build-targets-utils/Utils/EnvVars.cs index 58244648..1fd48c6d 100644 --- a/build_projects/shared-build-targets-utils/Utils/EnvVars.cs +++ b/build_projects/shared-build-targets-utils/Utils/EnvVars.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public static readonly bool Verbose = GetBool("DOTNET_BUILD_VERBOSE"); - public static readonly bool Signed = GetBool("SIGNED_PACKAGES"); + public static readonly bool PublishRidAgnosticPackages = GetBool("PUBLISH_RID_AGNOSTIC_PACKAGES"); private static bool GetBool(string name, bool defaultValue = false) { diff --git a/buildpipeline/Core-Setup-Signing-Windows-x64.json b/buildpipeline/Core-Setup-Signing-Windows-x64.json index 975be01b..0bf7454c 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x64.json +++ b/buildpipeline/Core-Setup-Signing-Windows-x64.json @@ -477,7 +477,10 @@ "GITHUB_PASSWORD": { "value": "PassedViaPipeBuild" }, - "SIGNED_PACKAGES": { + "BUILD_FULL_PLATFORM_MANIFEST": { + "value": "true" + }, + "PUBLISH_RID_AGNOSTIC_PACKAGES": { "value": "true" }, "CertificateId": { diff --git a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index ada51989..c5713ab8 100644 --- a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -15,7 +15,7 @@ restore all of those dependencies and gather the prospective content of the RID-specific Core.App packages. This is needed so that we have a complete platform manifest in the shipping version of the Microsoft.NETCore.App (RID-agnostic/identity package). --> - true + true
diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj index fef8a5ae..232876bf 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj @@ -14,7 +14,7 @@ restore all of those dependencies and gather the prospective content of the RID-specific Core.App packages. This is needed so that we have a complete platform manifest in the shipping version of the Microsoft.NETCore.UniversalWindowsPlatform (RID-agnostic/identity package). --> - true + true
From 84338605b408a996657d19bf92417bde8933b6f0 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 11 Apr 2017 10:00:13 -0500 Subject: [PATCH 214/625] Allow additional ICompilationAssemblyResolvers This allows for callers to use their own compilation resolvers along with the default resolvers shipped in the DependencyModel. Fix #625 --- .../project.json | 3 +- .../CompilationLibrary.cs | 26 +++++++++- .../project.json | 3 +- .../CompilationLibraryTests.cs | 49 +++++++++++++++++++ 4 files changed, 76 insertions(+), 5 deletions(-) create mode 100644 test/Microsoft.Extensions.DependencyModel.Tests/CompilationLibraryTests.cs diff --git a/src/Microsoft.DotNet.PlatformAbstractions/project.json b/src/Microsoft.DotNet.PlatformAbstractions/project.json index 767fd2e5..db2bc28a 100644 --- a/src/Microsoft.DotNet.PlatformAbstractions/project.json +++ b/src/Microsoft.DotNet.PlatformAbstractions/project.json @@ -21,11 +21,10 @@ } } }, - "scripts": {}, "packOptions": { "repository": { "type": "git", - "url": "git://github.com/dotnet/cli" + "url": "git://github.com/dotnet/core-setup" } } } diff --git a/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs b/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs index 3f7e8e3c..d87e358e 100644 --- a/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs +++ b/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs @@ -50,9 +50,33 @@ namespace Microsoft.Extensions.DependencyModel }); public IEnumerable ResolveReferencePaths() + { + return ResolveReferencePaths(DefaultResolver); + } + + public IEnumerable ResolveReferencePaths(params ICompilationAssemblyResolver[] additionalResolvers) + { + ICompilationAssemblyResolver resolver; + if (additionalResolvers?.Length > 0) + { + var allResolvers = new ICompilationAssemblyResolver[additionalResolvers.Length + 1]; + additionalResolvers.CopyTo(allResolvers, 0); + allResolvers[additionalResolvers.Length] = DefaultResolver; + + resolver = new CompositeCompilationAssemblyResolver(allResolvers); + } + else + { + resolver = DefaultResolver; + } + + return ResolveReferencePaths(resolver); + } + + private IEnumerable ResolveReferencePaths(ICompilationAssemblyResolver resolver) { var assemblies = new List(); - if (!DefaultResolver.TryResolveAssemblyPaths(this, assemblies)) + if (!resolver.TryResolveAssemblyPaths(this, assemblies)) { throw new InvalidOperationException($"Cannot find compilation library location for package '{Name}'"); } diff --git a/src/Microsoft.Extensions.DependencyModel/project.json b/src/Microsoft.Extensions.DependencyModel/project.json index f6708aeb..1f4316fc 100644 --- a/src/Microsoft.Extensions.DependencyModel/project.json +++ b/src/Microsoft.Extensions.DependencyModel/project.json @@ -30,11 +30,10 @@ } } }, - "scripts": {}, "packOptions": { "repository": { "type": "git", - "url": "git://github.com/dotnet/cli" + "url": "git://github.com/dotnet/core-setup" } } } diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/CompilationLibraryTests.cs b/test/Microsoft.Extensions.DependencyModel.Tests/CompilationLibraryTests.cs new file mode 100644 index 00000000..d2de190a --- /dev/null +++ b/test/Microsoft.Extensions.DependencyModel.Tests/CompilationLibraryTests.cs @@ -0,0 +1,49 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using FluentAssertions; +using Microsoft.Extensions.DependencyModel.Resolution; +using Moq; +using System.Collections.Generic; +using Xunit; + +namespace Microsoft.Extensions.DependencyModel.Tests +{ + public class CompilationLibraryTests + { + [Fact] + public void ResolveReferencePathsAcceptsAdditionalResolvers() + { + var fail = new Mock(); + var success = new Mock(); + success.Setup(r => r.TryResolveAssemblyPaths(It.IsAny(), It.IsAny>())) + .Callback((CompilationLibrary l, List a) => + { + a.Add("Assembly"); + }) + .Returns(true); + + var failTwo = new Mock(); + + var resolvers = new[] + { + fail.Object, + success.Object, + failTwo.Object + }; + + var library = TestLibraryFactory.Create(); + + var result = library.ResolveReferencePaths(resolvers); + + result.ShouldBeEquivalentTo(new[] { "Assembly" }); + + fail.Verify(r => r.TryResolveAssemblyPaths(It.IsAny(), It.IsAny>()), + Times.Once()); + success.Verify(r => r.TryResolveAssemblyPaths(It.IsAny(), It.IsAny>()), + Times.Once()); + failTwo.Verify(r => r.TryResolveAssemblyPaths(It.IsAny(), It.IsAny>()), + Times.Never()); + } + } +} From c5283c4594ebacec68d14b3e58611d0057b3aa43 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 24 Apr 2017 16:15:09 -0500 Subject: [PATCH 215/625] Respond to PR feedback. Don't allocate during ResolveReferencePaths. Rename additionalResolvers => customResolvers. Beef up the tests a little. --- .../CompilationLibrary.cs | 42 +++++++++---------- .../CompositeCompilationAssemblyResolver.cs | 3 +- .../CompilationLibraryTests.cs | 30 ++++++++++++- 3 files changed, 51 insertions(+), 24 deletions(-) diff --git a/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs b/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs index d87e358e..fe65e6e4 100644 --- a/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs +++ b/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs @@ -51,31 +51,31 @@ namespace Microsoft.Extensions.DependencyModel public IEnumerable ResolveReferencePaths() { - return ResolveReferencePaths(DefaultResolver); + var assemblies = new List(); + + return ResolveReferencePaths(DefaultResolver, assemblies); } - public IEnumerable ResolveReferencePaths(params ICompilationAssemblyResolver[] additionalResolvers) - { - ICompilationAssemblyResolver resolver; - if (additionalResolvers?.Length > 0) - { - var allResolvers = new ICompilationAssemblyResolver[additionalResolvers.Length + 1]; - additionalResolvers.CopyTo(allResolvers, 0); - allResolvers[additionalResolvers.Length] = DefaultResolver; - - resolver = new CompositeCompilationAssemblyResolver(allResolvers); - } - else - { - resolver = DefaultResolver; - } - - return ResolveReferencePaths(resolver); - } - - private IEnumerable ResolveReferencePaths(ICompilationAssemblyResolver resolver) + public IEnumerable ResolveReferencePaths(params ICompilationAssemblyResolver[] customResolvers) { var assemblies = new List(); + + if (customResolvers?.Length > 0) + { + foreach (var resolver in customResolvers) + { + if (resolver.TryResolveAssemblyPaths(this, assemblies)) + { + return assemblies; + } + } + } + + return ResolveReferencePaths(DefaultResolver, assemblies); + } + + private IEnumerable ResolveReferencePaths(ICompilationAssemblyResolver resolver, List assemblies) + { if (!resolver.TryResolveAssemblyPaths(this, assemblies)) { throw new InvalidOperationException($"Cannot find compilation library location for package '{Name}'"); diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/CompositeCompilationAssemblyResolver.cs b/src/Microsoft.Extensions.DependencyModel/Resolution/CompositeCompilationAssemblyResolver.cs index c6daf2bf..b64c6894 100644 --- a/src/Microsoft.Extensions.DependencyModel/Resolution/CompositeCompilationAssemblyResolver.cs +++ b/src/Microsoft.Extensions.DependencyModel/Resolution/CompositeCompilationAssemblyResolver.cs @@ -2,7 +2,6 @@ // Licensed under the MIT license. See LICENSE file in the project root for full license information. using System.Collections.Generic; -using Microsoft.Extensions.DependencyModel.Resolution; namespace Microsoft.Extensions.DependencyModel.Resolution { @@ -24,7 +23,7 @@ namespace Microsoft.Extensions.DependencyModel.Resolution return true; } } - return false;; + return false; } } } \ No newline at end of file diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/CompilationLibraryTests.cs b/test/Microsoft.Extensions.DependencyModel.Tests/CompilationLibraryTests.cs index d2de190a..5858d1d9 100644 --- a/test/Microsoft.Extensions.DependencyModel.Tests/CompilationLibraryTests.cs +++ b/test/Microsoft.Extensions.DependencyModel.Tests/CompilationLibraryTests.cs @@ -4,7 +4,9 @@ using FluentAssertions; using Microsoft.Extensions.DependencyModel.Resolution; using Moq; +using System; using System.Collections.Generic; +using System.IO; using Xunit; namespace Microsoft.Extensions.DependencyModel.Tests @@ -12,7 +14,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests public class CompilationLibraryTests { [Fact] - public void ResolveReferencePathsAcceptsAdditionalResolvers() + public void ResolveReferencePathsAcceptsCustomResolvers() { var fail = new Mock(); var success = new Mock(); @@ -45,5 +47,31 @@ namespace Microsoft.Extensions.DependencyModel.Tests failTwo.Verify(r => r.TryResolveAssemblyPaths(It.IsAny(), It.IsAny>()), Times.Never()); } + + [Fact] + public void ResolveReferencePathsAcceptsNullCustomResolvers() + { + var library = TestLibraryFactory.Create(); + var assemblyPath = Path.Combine(AppContext.BaseDirectory, "refs", library.Name + ".dll"); + Directory.CreateDirectory(Path.GetDirectoryName(assemblyPath)); + File.WriteAllText(assemblyPath, "hello"); + + try + { + var result = library.ResolveReferencePaths(null); + result.ShouldBeEquivalentTo(new[] { assemblyPath }); + } + finally + { + File.Delete(assemblyPath); + } + } + + [Fact] + public void ResolveReferencePathsThrowsOnNotFound() + { + var library = TestLibraryFactory.Create(); + Assert.Throws(() => library.ResolveReferencePaths(null)); + } } } From 826a5c943ac6a88f07edc954f1721c9e5b11636f Mon Sep 17 00:00:00 2001 From: Nick Guerrera Date: Fri, 21 Apr 2017 16:31:11 -0700 Subject: [PATCH 216/625] Export SDK resolution --- src/corehost/cli/fxr/fx_muxer.cpp | 27 ++++++--- src/corehost/cli/fxr/fx_muxer.h | 1 + src/corehost/cli/fxr/hostfxr.cpp | 93 +++++++++++++++++++++++++++++++ src/corehost/common/pal.h | 1 + 4 files changed, 115 insertions(+), 7 deletions(-) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index 0cb7be91..ee393515 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -600,8 +600,20 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, pal::stri { trace::verbose(_X("--- Resolving dotnet from working dir")); pal::string_t cwd; + if (!pal::getcwd(&cwd)) + { + trace::verbose(_X("Failed to obtain current working dir")); + assert(cwd.empty()); + } + + return resolve_sdk_dotnet_path(own_dir, cwd, cli_sdk); +} + +bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal::string_t& cwd, pal::string_t* cli_sdk) +{ pal::string_t global; - if (pal::getcwd(&cwd)) + + if (!cwd.empty()) { for (pal::string_t parent_dir, cur_dir = cwd; true; cur_dir = parent_dir) { @@ -623,10 +635,6 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, pal::stri } } } - else - { - trace::verbose(_X("Failed to obtain current working dir")); - } std::vector hive_dir; pal::string_t local_dir; @@ -635,7 +643,7 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, pal::stri if (multilevel_lookup) { - if (pal::getcwd(&cwd)) + if (!cwd.empty()) { hive_dir.push_back(cwd); } @@ -644,7 +652,12 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, pal::stri hive_dir.push_back(local_dir); } } - hive_dir.push_back(own_dir); + + if (!own_dir.empty()) + { + hive_dir.push_back(own_dir); + } + if (multilevel_lookup && pal::get_global_dotnet_dir(&global_dir)) { hive_dir.push_back(global_dir); diff --git a/src/corehost/cli/fxr/fx_muxer.h b/src/corehost/cli/fxr/fx_muxer.h index 7a7e960e..5fbae1c2 100644 --- a/src/corehost/cli/fxr/fx_muxer.h +++ b/src/corehost/cli/fxr/fx_muxer.h @@ -18,6 +18,7 @@ class fx_muxer_t public: static int execute(const int argc, const pal::char_t* argv[]); static std::vector get_known_opts(bool exec_mode, host_mode_t mode, bool get_all_options = false); + static bool resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal::string_t& cwd, pal::string_t* cli_sdk); private: static int read_config_and_execute( const pal::string_t& own_dir, diff --git a/src/corehost/cli/fxr/hostfxr.cpp b/src/corehost/cli/fxr/hostfxr.cpp index 32028d31..73f8a85c 100644 --- a/src/corehost/cli/fxr/hostfxr.cpp +++ b/src/corehost/cli/fxr/hostfxr.cpp @@ -99,3 +99,96 @@ SHARED_API int hostfxr_main(const int argc, const pal::char_t* argv[]) return muxer.execute(argc, argv); } +// +// Determines the directory location of the SDK accounting for +// global.json and multi-level lookup policy. +// +// Invoked via MSBuild SDK resolver to locate SDK props and targets +// from an msbuild other than the one bundled by the CLI. +// +// Parameters: +// exe_dir +// The main directory where SDKs are located in sdk\[version] +// sub-folders. Pass the directory of a dotnet executable to +// mimic how that executable would search in its own directory. +// It is also valid to pass nullptr or empty, in which case +// multi-level lookup can still search other locations if +// it has not been disabled by the user's environment. +// +// working_dir +// The directory where the search for global.json (which can +// control the resolved SDK version) starts and proceeds +// upwards. This directory may also be searched for SDKs if +// multi-level lookup has not been disabled by the user's +// environment. This mimics the current working directory's +// interpretation when the dotnet exectuable resolves the SDK +// for CLI commands. +// +// buffer +// The buffer where the resolved SDK path will be written. +// +// buffer_size +// The size of the buffer argument in pal::char_t units. +// +// Return value: +// <0 - Invalid argument +// 0 - SDK could not be found. +// >0 - The number of characters (including null terminator) +// required to store the located SDK. +// +// If resolution succeeds and the positive return value is less than +// or equal to buffer_size (i.e. the the buffer is large enough), +// then the resolved SDK path is copied to the buffer and null +// terminated. Otherwise, no data is written to the buffer. +// +// String encoding: +// Windows - UTF-16 (pal::char_t is 2 byte wchar_t) +// Unix - UTF-8 (pal::char_t is 1 byte char) +// +SHARED_API int32_t hostfxr_resolve_sdk( + const pal::char_t* exe_dir, + const pal::char_t* working_dir, + pal::char_t buffer[], + int32_t buffer_size) +{ + trace::setup(); + + trace::info(_X("--- Invoked hostfxr [commit hash: %s] hostfxr_resolve_sdk"), _STRINGIFY(REPO_COMMIT_HASH)); + + if (buffer_size < 0 || (buffer_size > 0 && buffer == nullptr)) + { + trace::error(_X("hostfxr_resolve_sdk received an invalid argument.")); + return -1; + } + + if (exe_dir == nullptr) + { + exe_dir = _X(""); + } + + if (working_dir == nullptr) + { + working_dir = _X(""); + } + + pal::string_t cli_sdk; + if (!fx_muxer_t::resolve_sdk_dotnet_path(exe_dir, working_dir, &cli_sdk)) + { + // fx_muxer_t::resolve_sdk_dotnet_path handles tracing for this error case. + return 0; + } + + if (cli_sdk.size() < buffer_size) + { + size_t length = cli_sdk.copy(buffer, buffer_size - 1); + assert(length == cli_sdk.size()); + assert(length < buffer_size); + buffer[length] = 0; + } + else + { + trace::info(_X("hostfxr_resolve_sdk received a buffer that is too small to hold the located SDK path.")); + } + + return cli_sdk.size() + 1; +} diff --git a/src/corehost/common/pal.h b/src/corehost/common/pal.h index 3cdcbdac..3d830e94 100644 --- a/src/corehost/common/pal.h +++ b/src/corehost/common/pal.h @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include From d4b5d6cae9b5f2a29575341816764141349fce21 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Mon, 24 Apr 2017 16:04:10 -0700 Subject: [PATCH 217/625] Update CoreClr, CoreFx, Standard to preview2-25224-02, preview2-25224-03, preview2-25224-01, respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 8 ++++---- .../project.json.template | 8 ++++---- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 6eb919ed..c3f01e95 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview1-25221-02"; - public static readonly string JitVersion = "2.0.0-preview1-25221-02"; + public static readonly string CoreCLRVersion = "2.0.0-preview2-25224-02"; + public static readonly string JitVersion = "2.0.0-preview2-25224-02"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index f751b68f..c842bf74 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25221-02" + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25224-03" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 25d64e5c..89eb5c53 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview1-25221-02\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview2-25224-03\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 7564507e..5a4ebf48 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview1-25221-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25221-02", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25224-03", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25224-02", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25221-02", - "NETStandard.Library": "2.0.0-preview1-25221-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25224-03", + "NETStandard.Library": "2.0.0-preview2-25224-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index dc0c9872..7642ab5f 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview1-25221-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview1-25221-02", - "Microsoft.NETCore.Platforms": "2.0.0-preview1-25221-02", - "NETStandard.Library": "2.0.0-preview1-25221-01", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25224-03", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25224-02", + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25224-03", + "NETStandard.Library": "2.0.0-preview2-25224-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From ed939f56e7d5fd2bcfd89e895594332d69bf9630 Mon Sep 17 00:00:00 2001 From: ramarag Date: Mon, 24 Apr 2017 22:21:48 -0700 Subject: [PATCH 218/625] Fixing portable linux and removing rhel and centos legs --- netci.groovy | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/netci.groovy b/netci.groovy index 2d11ec93..884e8554 100644 --- a/netci.groovy +++ b/netci.groovy @@ -10,7 +10,7 @@ def project = GithubProject def branch = GithubBranchName def isPR = true -def platformList = ['Debian8.2:x64:Debug', 'PortableLinux:x64:Release', 'Ubuntu:arm:Release', 'Ubuntu:x64:Release', 'Ubuntu16.04:arm:Release', 'Ubuntu16.04:x64:Release', 'Ubuntu16.10:x64:Release', 'OSX10.12:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Windows_NT:arm:Debug', 'RHEL7.2:x64:Release', 'CentOS7.1:x64:Debug', 'Fedora24:x64:Debug', 'OpenSUSE42.1:x64:Debug'] +def platformList = ['Debian8.2:x64:Debug', 'PortableLinux:x64:Release', 'Ubuntu:arm:Release', 'Ubuntu:x64:Release', 'Ubuntu16.04:arm:Release', 'Ubuntu16.04:x64:Release', 'Ubuntu16.10:x64:Release', 'OSX10.12:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Windows_NT:arm:Debug', 'Fedora24:x64:Debug', 'OpenSUSE42.1:x64:Debug'] def static getBuildJobName(def configuration, def os, def architecture) { return configuration.toLowerCase() + '_' + os.toLowerCase() + '_' + architecture.toLowerCase() @@ -64,7 +64,7 @@ platformList.each { platform -> if (os == 'PortableLinux') { // Trigger a portable Linux build that runs on RHEL7.2 - buildCommand += " --portableLinux" + buildCommand += " -portable" osForGHTrigger = "PortableLinux" os = "RHEL7.2" } From 039e66c522e871bd49e45885de95f2b7d450de41 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Tue, 25 Apr 2017 08:08:59 -0700 Subject: [PATCH 219/625] Correct extraction of IETF resource code (#2160) * Correct extraction of IETF resource code --- .../TestProjects/ResourceLookup/Program.cs | 12 + .../ResourceLookup/ResourceLookup.xproj | 19 + .../TestProjects/ResourceLookup/project.json | 386 ++++++++++++++++++ src/corehost/cli/deps_entry.cpp | 11 +- .../GivenThatICareAboutResourceLookup.cs | 90 ++++ 5 files changed, 513 insertions(+), 5 deletions(-) create mode 100644 TestAssets/TestProjects/ResourceLookup/Program.cs create mode 100644 TestAssets/TestProjects/ResourceLookup/ResourceLookup.xproj create mode 100644 TestAssets/TestProjects/ResourceLookup/project.json create mode 100644 test/HostActivationTests/GivenThatICareAboutResourceLookup.cs diff --git a/TestAssets/TestProjects/ResourceLookup/Program.cs b/TestAssets/TestProjects/ResourceLookup/Program.cs new file mode 100644 index 00000000..a8dcbdd7 --- /dev/null +++ b/TestAssets/TestProjects/ResourceLookup/Program.cs @@ -0,0 +1,12 @@ +using System; + +namespace ResourceLookup +{ + public static class Program + { + public static void Main(string[] args) + { + Console.WriteLine("Hello World!"); + } + } +} diff --git a/TestAssets/TestProjects/ResourceLookup/ResourceLookup.xproj b/TestAssets/TestProjects/ResourceLookup/ResourceLookup.xproj new file mode 100644 index 00000000..ec4227a0 --- /dev/null +++ b/TestAssets/TestProjects/ResourceLookup/ResourceLookup.xproj @@ -0,0 +1,19 @@ + + + + 14.0.25123 + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + + + + e484fcd8-e438-4559-a745-e58574263ffd + ResourceLookup + .\obj + .\bin\ + + + + 2.0 + + + \ No newline at end of file diff --git a/TestAssets/TestProjects/ResourceLookup/project.json b/TestAssets/TestProjects/ResourceLookup/project.json new file mode 100644 index 00000000..720811c6 --- /dev/null +++ b/TestAssets/TestProjects/ResourceLookup/project.json @@ -0,0 +1,386 @@ +{ + + "buildOptions": { + "emitEntryPoint": true + }, + "dependencies": {}, + "frameworks": { + "netcoreapp2.0": { + "dependencies": { + "Microsoft.NETCore.App": { + "type": "platform", + "version": "2.0.0-preview2-*" + }, + "System.Spatial": "5.8.2", + "Microsoft.CodeAnalysis.Analyzers": { + "version": "1.1.0", + "exclude": "all" + }, + "Microsoft.CSharp": { + "version": "4.3.0", + "exclude": "all" + }, + "Microsoft.DiaSymReader.Native": { + "version": "1.4.0", + "exclude": "all" + }, + "Microsoft.VisualBasic": { + "version": "10.1.0", + "exclude": "all" + }, + "Microsoft.Win32.Primitives": { + "version": "4.3.0", + "exclude": "all" + }, + "Microsoft.Win32.Registry": { + "version": "4.3.0", + "exclude": "all" + }, + "System.AppContext": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Buffers": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Collections": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Collections.Concurrent": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Collections.Immutable": { + "version": "1.3.0", + "exclude": "all" + }, + "System.ComponentModel": { + "version": "4.3.0", + "exclude": "all" + }, + "System.ComponentModel.Annotations": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Console": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Diagnostics.Debug": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Diagnostics.DiagnosticSource": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Diagnostics.FileVersionInfo": { + "version": "4.0.0", + "exclude": "all" + }, + "System.Diagnostics.Process": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Diagnostics.StackTrace": { + "version": "4.0.1", + "exclude": "all" + }, + "System.Diagnostics.Tools": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Diagnostics.Tracing": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Dynamic.Runtime": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Globalization": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Globalization.Calendars": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Globalization.Extensions": { + "version": "4.3.0", + "exclude": "all" + }, + "System.IO": { + "version": "4.3.0", + "exclude": "all" + }, + "System.IO.Compression": { + "version": "4.3.0", + "exclude": "all" + }, + "System.IO.Compression.ZipFile": { + "version": "4.3.0", + "exclude": "all" + }, + "System.IO.FileSystem": { + "version": "4.3.0", + "exclude": "all" + }, + "System.IO.FileSystem.Primitives": { + "version": "4.3.0", + "exclude": "all" + }, + "System.IO.FileSystem.Watcher": { + "version": "4.3.0", + "exclude": "all" + }, + "System.IO.MemoryMappedFiles": { + "version": "4.3.0", + "exclude": "all" + }, + "System.IO.UnmanagedMemoryStream": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Linq": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Linq.Expressions": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Linq.Parallel": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Linq.Queryable": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Net.Http": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Net.NameResolution": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Net.Primitives": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Net.Requests": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Net.Security": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Net.Sockets": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Net.WebHeaderCollection": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Numerics.Vectors": { + "version": "4.3.0", + "exclude": "all" + }, + "System.ObjectModel": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Reflection": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Reflection.DispatchProxy": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Reflection.Emit": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Reflection.Emit.ILGeneration": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Reflection.Emit.Lightweight": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Reflection.Extensions": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Reflection.Metadata": { + "version": "1.4.1", + "exclude": "all" + }, + "System.Reflection.Primitives": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Reflection.TypeExtensions": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Resources.Reader": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Resources.ResourceManager": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Runtime": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Runtime.Extensions": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Runtime.Handles": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Runtime.InteropServices": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Runtime.InteropServices.RuntimeInformation": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Runtime.Loader": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Runtime.Numerics": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Security.Claims": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Security.Cryptography.Algorithms": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Security.Cryptography.Cng": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Security.Cryptography.Csp": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Security.Cryptography.Encoding": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Security.Cryptography.OpenSsl": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Security.Cryptography.Primitives": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Security.Cryptography.X509Certificates": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Security.Principal": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Security.Principal.Windows": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Text.Encoding": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Text.Encoding.CodePages": { + "version": "4.0.1", + "exclude": "all" + }, + "System.Text.Encoding.Extensions": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Text.RegularExpressions": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Threading": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Threading.Overlapped": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Threading.Tasks": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Threading.Tasks.Dataflow": { + "version": "4.7.0", + "exclude": "all" + }, + "System.Threading.Tasks.Extensions": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Threading.Tasks.Parallel": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Threading.Thread": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Threading.ThreadPool": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Threading.Timer": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Xml.ReaderWriter": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Xml.XDocument": { + "version": "4.3.0", + "exclude": "all" + }, + "System.Xml.XmlDocument": { + "version": "4.0.1", + "exclude": "all" + }, + "System.Xml.XPath": { + "version": "4.0.1", + "exclude": "all" + }, + "System.Xml.XPath.XDocument": { + "version": "4.0.1", + "exclude": "all" + } + } + } + } +} diff --git a/src/corehost/cli/deps_entry.cpp b/src/corehost/cli/deps_entry.cpp index fe3eeacc..702ef78a 100644 --- a/src/corehost/cli/deps_entry.cpp +++ b/src/corehost/cli/deps_entry.cpp @@ -70,17 +70,18 @@ bool deps_entry_t::to_dir_path(const pal::string_t& base, pal::string_t* str) co replace_char(&pal_relative_path, _X('/'), DIR_SEPARATOR); } - // Resources are represented as "/" in the deps.json. + // Resources are represented as "lib///" in the deps.json. // The is the "directory" in the pal_relative_path below, so extract it. pal::string_t ietf_dir = get_directory(pal_relative_path); pal::string_t ietf = ietf_dir; // get_directory returns with DIR_SEPERATOR appended that we need to remove. - auto sep_pos = ietf.find_last_of(DIR_SEPARATOR); - if (sep_pos != pal::string_t::npos) - { - ietf = ietf.erase(sep_pos, pal::string_t::npos); + if (ietf.back() == DIR_SEPARATOR) { + ietf.pop_back(); } + + // Extract IETF code from "lib//" + ietf = get_filename(ietf); pal::string_t base_ietf_dir = base; append_path(&base_ietf_dir, ietf.c_str()); diff --git a/test/HostActivationTests/GivenThatICareAboutResourceLookup.cs b/test/HostActivationTests/GivenThatICareAboutResourceLookup.cs new file mode 100644 index 00000000..e29d6489 --- /dev/null +++ b/test/HostActivationTests/GivenThatICareAboutResourceLookup.cs @@ -0,0 +1,90 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System; +using System.Collections.Generic; +using System.IO; +using System.Runtime.InteropServices; +using System.Text.RegularExpressions; +using Xunit; +using FluentAssertions; +using Microsoft.DotNet.CoreSetup.Test; + +namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.ResourceLookup +{ + public class GivenThatICareAboutResourceLookup + { + private static TestProjectFixture PreviouslyBuiltAndRestoredResourceLookupTestProjectFixture { get; set; } + private static TestProjectFixture PreviouslyPublishedAndRestoredResourceLookupTestProjectFixture { get; set; } + private static RepoDirectoriesProvider RepoDirectories { get; set; } + + static GivenThatICareAboutResourceLookup() + { + RepoDirectories = new RepoDirectoriesProvider(); + + PreviouslyBuiltAndRestoredResourceLookupTestProjectFixture = new TestProjectFixture("ResourceLookup", RepoDirectories) + .EnsureRestored(RepoDirectories.CorehostPackages) + .BuildProject(); + + PreviouslyPublishedAndRestoredResourceLookupTestProjectFixture = new TestProjectFixture("ResourceLookup", RepoDirectories) + .EnsureRestored(RepoDirectories.CorehostPackages) + .PublishProject(); + } + + [Fact] + public void Muxer_activation_of_Build_Output_Resource_DLL_with_DepsJson_and_RuntimeConfig_Local_Succeeds() + { + var fixture = PreviouslyBuiltAndRestoredResourceLookupTestProjectFixture + .Copy(); + + var dotnet = fixture.BuiltDotnet; + var appDll = fixture.TestProject.AppDll; + + dotnet.Exec(appDll) + .CaptureStdErr() + .CaptureStdOut() + .Execute() + .Should() + .Pass() + .And + .HaveStdOutContaining("Hello World"); + + dotnet.Exec("exec", appDll) + .CaptureStdErr() + .CaptureStdOut() + .Execute() + .Should() + .Pass() + .And + .HaveStdOutContaining("Hello World"); + } + + [Fact] + public void Muxer_activation_of_Publish_Output_ResourceLookup_DLL_with_DepsJson_and_RuntimeConfig_Local_Succeeds() + { + var fixture = PreviouslyPublishedAndRestoredResourceLookupTestProjectFixture + .Copy(); + + var dotnet = fixture.BuiltDotnet; + var appDll = fixture.TestProject.AppDll; + + dotnet.Exec(appDll) + .CaptureStdErr() + .CaptureStdOut() + .Execute() + .Should() + .Pass() + .And + .HaveStdOutContaining("Hello World"); + + dotnet.Exec("exec", appDll) + .CaptureStdErr() + .CaptureStdOut() + .Execute() + .Should() + .Pass() + .And + .HaveStdOutContaining("Hello World"); + } + } +} From 3562a30354e50c102bbea8003cc9baaed2995d84 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Tue, 25 Apr 2017 10:46:03 -0700 Subject: [PATCH 220/625] Use appropriate prefix/suffix when deleting unrequired binaries (#2158) --- .../shared-build-targets-utils/Utils/PublishMutationUtilties.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build_projects/shared-build-targets-utils/Utils/PublishMutationUtilties.cs b/build_projects/shared-build-targets-utils/Utils/PublishMutationUtilties.cs index 6a788e7b..f2e3fb34 100644 --- a/build_projects/shared-build-targets-utils/Utils/PublishMutationUtilties.cs +++ b/build_projects/shared-build-targets-utils/Utils/PublishMutationUtilties.cs @@ -22,7 +22,7 @@ namespace Microsoft.DotNet.Cli.Build foreach (var binaryName in binariesToBeDeleted) { File.Delete(Path.Combine(path, $"{binaryName}{Constants.ExeSuffix}")); - File.Delete(Path.Combine(path, $"{binaryName}.dll")); + File.Delete(Path.Combine(path, $"{Constants.DynamicLibPrefix}{binaryName}{Constants.DynamicLibSuffix}")); File.Delete(Path.Combine(path, $"{binaryName}.pdb")); } From 6341fc68f53e6a96c4b0f3107bbc4782867d995b Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Tue, 25 Apr 2017 10:56:50 -0700 Subject: [PATCH 221/625] Fix casing of OfficialBuildRID Working around https://github.com/Microsoft/msbuild/issues/1751 --- pkg/projects/netcoreappRIDs.props | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkg/projects/netcoreappRIDs.props b/pkg/projects/netcoreappRIDs.props index dce4ae8e..75b4f321 100644 --- a/pkg/projects/netcoreappRIDs.props +++ b/pkg/projects/netcoreappRIDs.props @@ -16,9 +16,9 @@ - + armel - + @@ -34,9 +34,9 @@ arm - + armel - + \ No newline at end of file From ff51515c0aab3bd840f8f5b6aa275d5be085accd Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Tue, 25 Apr 2017 11:41:41 -0700 Subject: [PATCH 222/625] Update CoreClr, CoreFx to preview2-25225-01, preview2-25225-02, respectively (#2162) --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 6 +++--- .../project.json.template | 6 +++--- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index c3f01e95..83a5a0ac 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview2-25224-02"; - public static readonly string JitVersion = "2.0.0-preview2-25224-02"; + public static readonly string CoreCLRVersion = "2.0.0-preview2-25225-01"; + public static readonly string JitVersion = "2.0.0-preview2-25225-01"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index c842bf74..cecdf877 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25224-03" + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25225-02" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 89eb5c53..12205485 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview2-25224-03\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview2-25225-02\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 5a4ebf48..08424899 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25224-03", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25224-02", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25225-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25225-01", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25224-03", + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25225-02", "NETStandard.Library": "2.0.0-preview2-25224-01" }, "frameworks": { diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 7642ab5f..5dbcfde8 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25224-03", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25224-02", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25224-03", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25225-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25225-01", + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25225-02", "NETStandard.Library": "2.0.0-preview2-25224-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", From 0f688441f0c34b8080772eacb1c45cfa4de0b5a1 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Tue, 25 Apr 2017 18:36:59 -0700 Subject: [PATCH 223/625] Update CoreClr to preview2-25226-01 --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/projects/Microsoft.NETCore.App/project.json.template | 2 +- .../project.json.template | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 83a5a0ac..41c69271 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview2-25225-01"; - public static readonly string JitVersion = "2.0.0-preview2-25225-01"; + public static readonly string CoreCLRVersion = "2.0.0-preview2-25226-01"; + public static readonly string JitVersion = "2.0.0-preview2-25226-01"; } } diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 08424899..287621f7 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,7 +1,7 @@ { "dependencies": { "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25225-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25225-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25226-01", "Microsoft.DiaSymReader.Native": "1.4.1", "Microsoft.NETCore.Platforms": "2.0.0-preview2-25225-02", "NETStandard.Library": "2.0.0-preview2-25224-01" diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 5dbcfde8..4d5fbe70 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -2,7 +2,7 @@ "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25225-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25225-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25226-01", "Microsoft.NETCore.Platforms": "2.0.0-preview2-25225-02", "NETStandard.Library": "2.0.0-preview2-25224-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", From 4d5b1476806db377d01dd2fec2efa68bfd23bea3 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Tue, 25 Apr 2017 21:50:34 -0700 Subject: [PATCH 224/625] Update CoreFx to preview2-25226-01 (#2180) --- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 4 ++-- .../project.json.template | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkg/deps/project.json b/pkg/deps/project.json index cecdf877..0890e230 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25225-02" + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25226-01" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 12205485..9bca6c5a 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview2-25225-02\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview2-25226-01\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index 287621f7..ebff67af 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25225-02", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25226-01", "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25226-01", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25225-02", + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25226-01", "NETStandard.Library": "2.0.0-preview2-25224-01" }, "frameworks": { diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index 4d5fbe70..c5c092bb 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25225-02", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25226-01", "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25226-01", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25225-02", + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25226-01", "NETStandard.Library": "2.0.0-preview2-25224-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", From 31b04655e6b78201ad46433de22449613663be63 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Wed, 26 Apr 2017 07:19:20 -0700 Subject: [PATCH 225/625] Update CoreClr, CoreFx, Standard to preview2-25226-02, preview2-25226-02, preview2-25226-01, respectively --- .../shared-build-targets-utils/DependencyVersions.cs | 4 ++-- pkg/deps/project.json | 2 +- pkg/dir.props | 2 +- pkg/projects/Microsoft.NETCore.App/project.json.template | 8 ++++---- .../project.json.template | 8 ++++---- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/build_projects/shared-build-targets-utils/DependencyVersions.cs index 41c69271..6bbef1a4 100644 --- a/build_projects/shared-build-targets-utils/DependencyVersions.cs +++ b/build_projects/shared-build-targets-utils/DependencyVersions.cs @@ -7,7 +7,7 @@ namespace Microsoft.DotNet.Cli.Build { public class DependencyVersions { - public static readonly string CoreCLRVersion = "2.0.0-preview2-25226-01"; - public static readonly string JitVersion = "2.0.0-preview2-25226-01"; + public static readonly string CoreCLRVersion = "2.0.0-preview2-25226-02"; + public static readonly string JitVersion = "2.0.0-preview2-25226-02"; } } diff --git a/pkg/deps/project.json b/pkg/deps/project.json index 0890e230..4a226539 100644 --- a/pkg/deps/project.json +++ b/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25226-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25226-02" }, "frameworks": { "dnxcore50": { diff --git a/pkg/dir.props b/pkg/dir.props index 9bca6c5a..12f0646e 100644 --- a/pkg/dir.props +++ b/pkg/dir.props @@ -42,7 +42,7 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview2-25226-01\runtime.json + $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview2-25226-02\runtime.json $(ProjectDir)projects/dotnet_library_license.txt $(ProjectDir)projects/ThirdPartyNotices.txt $(ProjectDir)projects/descriptions.json diff --git a/pkg/projects/Microsoft.NETCore.App/project.json.template b/pkg/projects/Microsoft.NETCore.App/project.json.template index ebff67af..4f87ed39 100644 --- a/pkg/projects/Microsoft.NETCore.App/project.json.template +++ b/pkg/projects/Microsoft.NETCore.App/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25226-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25226-01", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25226-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25226-02", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25226-01", - "NETStandard.Library": "2.0.0-preview2-25224-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25226-02", + "NETStandard.Library": "2.0.0-preview2-25226-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template index c5c092bb..4d3e6e86 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template +++ b/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25226-01", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25226-01", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25226-01", - "NETStandard.Library": "2.0.0-preview2-25224-01", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25226-02", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25226-02", + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25226-02", + "NETStandard.Library": "2.0.0-preview2-25226-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From 40c481e2f70de6ffb249b451f2a793732d48a85f Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Wed, 26 Apr 2017 08:49:15 -0700 Subject: [PATCH 226/625] Exclude debian and tizen from platform manifest Debian and Tizen are not built by our build process, but we want to include entries for them in our runtime.json. This was interfering with another feature where we must include a list of all files that are in all runtime packages in a manifest. The manifest is used when building a shared-framework app to understand which files are part of the shared framework and should be considered for conflict resolution. If the application were to reference an old package which had one of these files we want to trim it from the application if it failed conflict resolution (was a lower version). We cannot gather this information from debian and tizen packages since we don't build them. For now we will opt them out of this feature. This is likely "good enough" for them since they won't have any unique files that previously shipped in RID-less packages and require conflict resolution. A alternative solution for debian and tizen would be for them to ship their own RID-less package with their own platform manifest. They could do so transparently by implicitly referencing their package for folks that wanted this. --- .../Microsoft.NETCore.App.pkgproj | 4 +++- pkg/projects/dir.props | 4 ++++ pkg/projects/netcoreappRIDs.props | 17 ++++++++++------- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index c5713ab8..25fae771 100644 --- a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -65,7 +65,9 @@ diff --git a/pkg/projects/dir.props b/pkg/projects/dir.props index 4c1afbb4..8ab6c6b6 100644 --- a/pkg/projects/dir.props +++ b/pkg/projects/dir.props @@ -63,6 +63,10 @@ + + + true + $(Platform) diff --git a/pkg/projects/netcoreappRIDs.props b/pkg/projects/netcoreappRIDs.props index 75b4f321..9c7ffd58 100644 --- a/pkg/projects/netcoreappRIDs.props +++ b/pkg/projects/netcoreappRIDs.props @@ -16,9 +16,6 @@ - - armel - @@ -34,9 +31,15 @@ arm - + + + armel - - - + + + armel + + \ No newline at end of file From 8ef546301462dea5a369e0836a2f2f05e225c8ce Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Tue, 25 Apr 2017 16:21:24 -0700 Subject: [PATCH 227/625] remove trailing DIR_SEPARATOR from APP_CONTEXT_BASE_DIRECTORY --- src/corehost/cli/hostpolicy.cpp | 6 +++++- src/corehost/common/utils.cpp | 16 +++++++++++----- src/corehost/common/utils.h | 1 + 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/corehost/cli/hostpolicy.cpp b/src/corehost/cli/hostpolicy.cpp index 8c1b9dc7..5d133332 100644 --- a/src/corehost/cli/hostpolicy.cpp +++ b/src/corehost/cli/hostpolicy.cpp @@ -80,7 +80,11 @@ int run(const arguments_t& args) // Note: these variables' lifetime should be longer than coreclr_initialize. std::vector tpa_paths_cstr, app_base_cstr, native_dirs_cstr, resources_dirs_cstr, fx_deps, deps, clrjit_path_cstr, probe_directories; pal::pal_clrstring(probe_paths.tpa, &tpa_paths_cstr); - pal::pal_clrstring(args.app_dir, &app_base_cstr); + + //removing trailing directory seperator for app compat reasons + pal::string_t trimmed_app_dir = trim_end(args.app_dir, DIR_SEPARATOR); + pal::pal_clrstring(trimmed_app_dir, &app_base_cstr); + pal::pal_clrstring(probe_paths.native, &native_dirs_cstr); pal::pal_clrstring(probe_paths.resources, &resources_dirs_cstr); diff --git a/src/corehost/common/utils.cpp b/src/corehost/common/utils.cpp index 5aeb9820..19aa516b 100644 --- a/src/corehost/common/utils.cpp +++ b/src/corehost/common/utils.cpp @@ -129,11 +129,7 @@ pal::string_t get_filename(const pal::string_t& path) pal::string_t get_directory(const pal::string_t& path) { - pal::string_t ret = path; - while (!ret.empty() && ret.back() == DIR_SEPARATOR) - { - ret.pop_back(); - } + pal::string_t ret = trim_end(path, DIR_SEPARATOR); // Find the last dir separator auto path_sep = ret.find_last_of(DIR_SEPARATOR); @@ -288,6 +284,16 @@ bool get_global_shared_store_dir(pal::string_t* dir) return true; } +pal::string_t trim_end(const pal::string_t& path, pal::char_t elem) +{ + pal::string_t ret = path; + while (!ret.empty() && ret.back() == elem) + { + ret.pop_back(); + } + return ret; +} + bool get_local_shared_store_dir(pal::string_t* dir) { if (!pal::get_local_dotnet_dir(dir)) diff --git a/src/corehost/common/utils.h b/src/corehost/common/utils.h index dbbc3271..3fad1ba2 100644 --- a/src/corehost/common/utils.h +++ b/src/corehost/common/utils.h @@ -42,4 +42,5 @@ bool skip_utf8_bom(pal::ifstream_t* stream); bool get_env_shared_store_dirs(std::vector* dirs, const pal::string_t& arch, const pal::string_t& tfm); bool get_local_shared_store_dir(pal::string_t* recv); bool get_global_shared_store_dir(pal::string_t* recv); +pal::string_t trim_end(const pal::string_t& path, pal::char_t elem); #endif From 6887ab556bc8302390782711dcdd75b75e769cf5 Mon Sep 17 00:00:00 2001 From: chcosta Date: Wed, 26 Apr 2017 18:03:34 -0700 Subject: [PATCH 228/625] Core-Setup on Buildtools (#2187) * update .gitignore * Add bootstrap for buildtools and run tool * Add dev workflow commands clean/sync for Windows * Update supported target rids and target archs * Compile corehost via run.exe * Add main build.proj * Update config.json * Enable PkgPackage prject using buildtools * Fix path to version.txt * Add dir.proj for src * Move custom tasks to root leve * build custom tasks * build corehost using build.cmd * Build src packages using build.cmd * Add custom build option to run.exe config * Add custom task - GetBuildableFramework * add props header * improve BuildProjectsForNuGetPackages * Move deps clean to its own task * Fix lockfile publishing * Fix ExeSuffix prop * Fix runtime Graph generation prop * Enable tests through run.exe * Enable packaging for win and mac * custom tasks sln * start fixing tests * Fix test paths * firx custom task * Generate Svg badge from msbuild * Move GenerateMsiVersion to its own custom task * Generate stable Guids using custom task * Make run.sh executable * Add clean and sync scripts for *nix * Fixes for unix * Enable packaging for OSX * Generate debs part 1 * Import deb packaging targets * Fix osx packaging * Fix typo * Fix RuntimeGraph. removing lower casing * Packages debs part 2 * Minor fixes for GenerateDebs * Complete Generate Debs * Update versions * Add flag to control generating deb pkgs * Pack dotnet-deb-tool * First version for build.sh * Update packaging * Add packaging to full build * Update dependencies * move custom tasks under build/tasks * P.R. comments part 1 * Add ReplaceFileContents task * Use ReplaceFileContents task * Update .gitignore * Fix template for shared framework * PR feedback * move sign.proj to root * Update sign.proj * Update version * Add missing file * Fixing the --fallbacksource to be correct. * Fix pkg build * Add missing Msi ugrade code and fix namesfor existing * Moving folders * Refactor and update versioning * publish finalizing * publish finalization * Intermediate change, fixing build after merge * Merge fixes * Enable partial testing build, and bringing back publishing which was lost * Publishing * Enable hostactivationtests * actually add publishing targets * update gitignore * make Bin and Packages capitalized because they're external * update readme.md with dnvm urls * msi version change, test fixes * Enable publish to nuget during publishing * Add build.sh change * Enable tests * Add test failure summary * Update microsoft.netcore.app platform version testing against * Delete xml file which shouldn't be added * Testing changes * Test fixes * Minor cleanup, auto-derive test target rid if it's not specified * Cleanup before test run to prevent failures caused after successive reruns * Remove versions junction which breaks testing since it picks the wrong version * Enable linux build * Fix linux compression, avoid "file chaned as we read it" error * Fix linux test builds * Test changes for Linux * Minor fixes for Windows * Change nuget feed for validation * use buildtools repo * separate run into run and init * Use corefx style docker builds * Use build.sourcesdirectory * chmod +x init.sh * add pb_gitdirectory variable * Use inittools instead of bootstrap * Chmod +x init-tools.sh * Update crossgen to be +x * Fix casing looking for platforms package * Fix buildtoolstaskdir * set default localbuildtoolstaskdir * set nuget_packages when running dotnet build for src/managed projects * set absolute path for items * Add missing docker-as-current-user.sh script * chmod+x the docker run scripts * print command for debugging * remove uneccessary debugging echo * print debugging message * chmod+x init-tools.sh * Add debugging messages * fix typo * Fix casing * chmod+x boostrap.sh * Update bootstrap script * display debug message * Fix typo * temporarily add dotnet-install.sh script * Relax min req for dotnet-obtain * relax reqs in bootstrap * make copy verbose to debug * Fix typo * add -p to mkdir in bootstrap * Add another -p to mkdir in bootstrap * try to fix exit code check * bootstrap verbose * Use wget as a fallback for distros without curl * misc fixes * make crossgen optional based on existence of script * Add nuget default timeout * Add default containername * Remove verbose option from bootstrap call * only publish corehost packages if finalization has completed * Check in updated linux build def * update docker tags * pass distrorid for publishing * Fix definition name * Generate version assets * buildpipeline changes, enabling windows * Add target to build traversal build dependencies * Add tools-override copy to init-tools * Change roslyn version * Fix building traversal build dependencies logic * Create the version info file * Add hook to opt out of including all runtime packages for testing purposes * absolute paths to prevent build break when building a sub project from a different working directory * copy custom task dependency to local task directory * Add platformabstractions to custom-task dependencies * try adding back temp folder * dotnet restore for tests requires nugetfallbackfolder be present * set test rid with targetarchitecture * Add windows builds * hack the osx distrorid * use packagetargetrid for sharedframework project * Publish packagetargetrid * Remove osx.10.12 from packagetargetrid change list * Remove hack, not needed now that packagetargetrid is fixed * Add osx * misc build changes * rename compression -> packaging, and some portable build changes * misc merge changes * Update dependency versions * Enable portable linux build * update to netci.groovy * Remove -targets qualifier from netci.groovy * run parses parameter/values with = separator * set unrestricted execution policy when calling powershell * move wix toolset extraction into msbuild so we don't have a dependency on powershell v5.0+ * print slightly more debug info * switch path separator char * Custom zipfileextracttodirectory task * Add references for compression task * Don't delete destination directory * remove branched zip extraction task * tweak the groovy file to make testing easier * change disable to disabled * Change ci platform build list * load sln's even if buildtools isn't restored * Allow loading sln's even if buildtools not restored * hack osx rid * Fix typo --- .gitignore | 206 +++-- BuildToolsVersion.txt | 1 + ...tnetCLIVersion.txt => DotnetCLIVersion.txt | 0 Microsoft.DotNet.CoreSetup.sln | 22 +- NuGet.Config | 14 - README.md | 8 +- build.cmd | 37 +- build.proj | 83 ++ build.sh | 223 +++++- .../dotnet-host-build/CompileTargets.cs | 544 ------------- .../dotnet-host-build/DebTargets.cs | 276 ------- .../dotnet-host-build/InstallerTargets.cs | 23 - .../dotnet-host-build/MsiTargets.cs | 263 ------- build_projects/dotnet-host-build/NugetUtil.cs | 59 -- .../dotnet-host-build/PackageTargets.cs | 270 ------- .../dotnet-host-build/PkgTargets.cs | 163 ---- .../dotnet-host-build/PrepareTargets.cs | 442 ----------- build_projects/dotnet-host-build/Program.cs | 17 - .../dotnet-host-build/PublishTargets.cs | 501 ------------ .../dotnet-host-build/TestTargets.cs | 140 ---- build_projects/dotnet-host-build/build.ps1 | 151 ---- build_projects/dotnet-host-build/build.sh | 184 ----- .../dotnet-host-build/dotnet-host-build.xproj | 18 - .../dotnet-host-build/project.json.template | 36 - .../Utils/BuildVersion.cs | 13 - .../Utils/GitUtils.cs | 27 - .../Utils/HostVersion.cs | 101 --- .../Utils/Version.cs | 44 -- build_projects/update-dependencies/Config.cs | 83 -- build_projects/update-dependencies/Dirs.cs | 15 - build_projects/update-dependencies/Program.cs | 201 ----- .../update-dependencies/project.json.template | 27 - .../update-dependencies.ps1 | 83 -- .../update-dependencies.sh | 97 --- .../update-dependencies.xproj | 18 - buildpipeline/Core-Setup-Linux-BT.json | 446 +++++++++++ ...etup-Linux.json => Core-Setup-OSX-BT.json} | 299 +++---- buildpipeline/Core-Setup-OSX-x64.json | 237 ------ ...son => Core-Setup-Signing-Windows-BT.json} | 404 +++++++--- .../Core-Setup-Signing-Windows-x86.json | 544 ------------- buildpipeline/Core-Setup-Windows-BT.json | 360 +++++++++ buildpipeline/Core-Setup-Windows-arm32.json | 203 ----- buildpipeline/Core-Setup-Windows-arm64.json | 203 ----- buildpipeline/pipeline.json | 71 +- clean.cmd | 34 + clean.sh | 40 + config.json | 337 ++++++++ dependencies.props | 14 + dir.props | 367 +++++++++ dir.targets | 101 +++ dir.traversal.targets | 102 +++ global.json | 4 +- pkg/init-tools.cmd => init-tools.cmd | 37 +- init-tools.sh | 184 +++++ netci.groovy | 98 ++- omnisharp.json | 2 +- .../resources/fr.lproj/welcome.html | 17 - .../resources/it.lproj/welcome.html | 17 - .../resources/ja.lproj/welcome.html | 17 - .../resources/ko.lproj/welcome.html | 17 - .../resources/pl.lproj/welcome.html | 17 - .../resources/pt-br.lproj/welcome.html | 17 - .../resources/ru.lproj/welcome.html | 17 - .../resources/tr.lproj/welcome.html | 17 - .../resources/zh-hans.lproj/welcome.html | 17 - .../resources/zh-hant.lproj/welcome.html | 17 - pkg/.gitignore | 3 - pkg/BuildToolsVersion.txt | 1 - pkg/dir.props | 223 ------ pkg/dir.targets | 27 - pkg/init-tools.sh | 125 --- pkg/pack.cmd | 40 - pkg/pack.sh | 81 -- publish/dir.props | 43 + publish/dir.targets | 65 ++ publish/publish.proj | 122 +++ run.cmd | 16 + run.ps1 | 12 + run.sh | 21 + build_projects/signing/sign.proj => sign.proj | 14 +- src/corehost/Windows/gen-buildsys-win.bat | 49 ++ src/corehost/Windows/probe-win.ps1 | 65 ++ src/corehost/build.cmd | 160 ++++ src/corehost/build.proj | 66 ++ src/corehost/dir.props | 4 + src/dir.proj | 33 + src/dir.props | 32 + src/dir.targets | 4 + .../ApplicationEnvironment.cs | 0 .../HashCodeCombiner.cs | 0 ...icrosoft.DotNet.PlatformAbstractions.xproj | 0 .../Native/NativeMethods.Darwin.cs | 0 .../Native/NativeMethods.Unix.cs | 0 .../Native/NativeMethods.Windows.cs | 0 .../Native/PlatformApis.cs | 0 .../Platform.cs | 0 .../Properties/Properties.cs | 0 .../RuntimeEnvironment.cs | 0 .../project.json | 4 +- .../CollectionExtensions.cs | 0 .../CompilationLibrary.cs | 0 .../CompilationOptions.cs | 0 .../Dependency.cs | 0 .../DependencyContext.cs | 0 .../DependencyContextExtensions.cs | 0 .../DependencyContextJsonReader.cs | 0 .../DependencyContextLoader.cs | 0 .../DependencyContextPaths.cs | 0 .../DependencyContextStrings.cs | 0 .../DependencyContextWriter.cs | 0 .../DirectoryWrapper.cs | 0 .../EnvironmentWrapper.cs | 0 .../FileSystemWrapper.cs | 0 .../FileWrapper.cs | 0 .../IDependencyContextReader.cs | 0 .../IDirectory.cs | 0 .../IEnvironment.cs | 0 .../IFile.cs | 0 .../IFileSystem.cs | 0 .../JsonTextReaderExtensions.cs | 0 .../Library.cs | 0 ...Microsoft.Extensions.DependencyModel.xproj | 4 +- .../Properties/Properties.cs | 0 .../AppBaseCompilationAssemblyResolver.cs | 0 .../CompositeCompilationAssemblyResolver.cs | 0 .../DotNetReferenceAssembliesPathResolver.cs | 0 .../ICompilationAssemblyResolver.cs | 0 .../PackageCompilationAssemblyResolver.cs | 0 .../ReferenceAssemblyPathResolver.cs | 0 .../Resolution/ResolverUtils.cs | 0 .../ResourceAssembly.cs | 0 .../RuntimeAssembly.cs | 0 .../RuntimeAssetGroup.cs | 0 .../RuntimeFallbacks.cs | 0 .../RuntimeLibrary.cs | 0 .../TargetInfo.cs | 0 .../project.json | 4 +- src/managed/dir.proj | 259 ++++++ .../sharedframework/framework/Program.cs | 0 .../framework/project.json.template | 1 - {pkg => src/pkg}/deps/project.json | 0 src/pkg/dir.proj | 25 + src/pkg/dir.props | 49 ++ src/pkg/dir.targets | 7 + {pkg => src/pkg}/dir.traversal.targets | 0 {pkg => src/pkg}/global.json | 0 {pkg => src/pkg}/packageIndex.json | 0 {pkg => src/pkg}/packages.builds | 0 {packaging => src/pkg/packaging}/LICENSE.txt | 0 .../deb/dotnet-hostfxr-debian_config.json | 0 .../dotnet-sharedframework-debian_config.json | 0 .../deb/dotnet-sharedhost-debian_config.json | 0 src/pkg/packaging/deb/package.props | 16 + src/pkg/packaging/deb/package.targets | 211 +++++ src/pkg/packaging/dir.proj | 163 ++++ src/pkg/packaging/dir.props | 38 + .../resources/cs.lproj/conclusion.html | 22 + .../osx/hostfxr/resources/cs.lproj/eula.rtf | 0 .../hostfxr}/resources/cs.lproj/welcome.html | 11 +- .../resources/de.lproj/conclusion.html | 22 + .../osx/hostfxr/resources/de.lproj/eula.rtf | 0 .../hostfxr}/resources/de.lproj/welcome.html | 11 +- .../hostfxr}/resources/dotnetbackground.png | Bin .../resources/en.lproj/conclusion.html | 22 + .../osx/hostfxr/resources/en.lproj/eula.rtf | 0 .../hostfxr}/resources/en.lproj/welcome.html | 11 +- .../resources/es.lproj/conclusion.html | 22 + .../osx/hostfxr/resources/es.lproj/eula.rtf | 0 .../hostfxr}/resources/es.lproj/welcome.html | 11 +- .../resources/fr.lproj/conclusion.html | 22 + .../osx/hostfxr/resources/fr.lproj/eula.rtf | 0 .../hostfxr/resources/fr.lproj/welcome.html | 20 + .../resources/it.lproj/conclusion.html | 22 + .../osx/hostfxr/resources/it.lproj/eula.rtf | 0 .../hostfxr/resources/it.lproj/welcome.html | 20 + .../resources/ja.lproj/conclusion.html | 22 + .../osx/hostfxr/resources/ja.lproj/eula.rtf | 0 .../hostfxr/resources/ja.lproj/welcome.html | 20 + .../resources/ko.lproj/conclusion.html | 22 + .../osx/hostfxr/resources/ko.lproj/eula.rtf | 0 .../hostfxr/resources/ko.lproj/welcome.html | 20 + .../resources/pl.lproj/conclusion.html | 22 + .../osx/hostfxr/resources/pl.lproj/eula.rtf | 0 .../hostfxr/resources/pl.lproj/welcome.html | 20 + .../resources/pt-br.lproj/conclusion.html | 22 + .../hostfxr/resources/pt-br.lproj/eula.rtf | 0 .../resources/pt-br.lproj/welcome.html | 20 + .../resources/ru.lproj/conclusion.html | 22 + .../osx/hostfxr/resources/ru.lproj/eula.rtf | 0 .../hostfxr/resources/ru.lproj/welcome.html | 20 + .../resources/tr.lproj/conclusion.html | 22 + .../osx/hostfxr/resources/tr.lproj/eula.rtf | 0 .../hostfxr/resources/tr.lproj/welcome.html | 20 + .../resources/zh-hans.lproj/conclusion.html | 22 + .../hostfxr/resources/zh-hans.lproj/eula.rtf | 0 .../resources/zh-hans.lproj/welcome.html | 20 + .../resources/zh-hant.lproj/conclusion.html | 22 + .../hostfxr/resources/zh-hant.lproj/eula.rtf | 0 .../resources/zh-hant.lproj/welcome.html | 20 + .../osx/hostfxr/scripts/postinstall | 0 src/pkg/packaging/osx/package.props | 10 + src/pkg/packaging/osx/package.targets | 78 ++ .../resources/cs.lproj/eula.rtf | 0 .../resources/de.lproj/eula.rtf | 0 .../resources/dotnetbackground.png | Bin 0 -> 4054 bytes .../resources/en.lproj/eula.rtf | 0 .../resources/es.lproj/eula.rtf | 0 .../resources/fr.lproj/eula.rtf | 0 .../resources/it.lproj/eula.rtf | 0 .../resources/ja.lproj/eula.rtf | 0 .../resources/ko.lproj/eula.rtf | 0 .../resources/pl.lproj/eula.rtf | 0 .../resources/pt-br.lproj/eula.rtf | 0 .../resources/ru.lproj/eula.rtf | 0 .../resources/tr.lproj/eula.rtf | 0 .../resources/zh-hans.lproj/eula.rtf | 0 .../resources/zh-hant.lproj/eula.rtf | 0 .../osx/sharedframework/scripts/postinstall | 0 ...shared-framework-distribution-template.xml | 2 +- .../sharedhost/resources/cs.lproj/eula.rtf | 0 .../sharedhost/resources/de.lproj/eula.rtf | 0 .../sharedhost/resources/en.lproj/eula.rtf | 0 .../sharedhost/resources/es.lproj/eula.rtf | 0 .../sharedhost/resources/fr.lproj/eula.rtf | 0 .../sharedhost/resources/it.lproj/eula.rtf | 0 .../sharedhost/resources/ja.lproj/eula.rtf | 0 .../sharedhost/resources/ko.lproj/eula.rtf | 0 .../sharedhost/resources/pl.lproj/eula.rtf | 0 .../sharedhost/resources/pt-br.lproj/eula.rtf | 0 .../sharedhost/resources/ru.lproj/eula.rtf | 0 .../sharedhost/resources/tr.lproj/eula.rtf | 0 .../resources/zh-hans.lproj/eula.rtf | 0 .../resources/zh-hant.lproj/eula.rtf | 0 .../osx/sharedhost/scripts/postinstall | 0 src/pkg/packaging/windows/GetWix.ps1 | 19 + .../packaging}/windows/host/generatemsi.ps1 | 14 +- .../pkg/packaging}/windows/host/host.wxs | 0 .../pkg/packaging}/windows/host/provider.wxs | 0 .../pkg/packaging}/windows/host/variables.wxi | 0 .../windows/hostfxr/generatemsi.ps1 | 16 +- .../packaging}/windows/hostfxr/hostfxr.wxs | 0 .../packaging}/windows/hostfxr/provider.wxs | 0 .../windows/hostfxr/registrykeys.wxs | 0 .../packaging}/windows/hostfxr/variables.wxi | 0 src/pkg/packaging/windows/package.props | 13 + src/pkg/packaging/windows/package.targets | 110 +++ .../windows/sharedframework/bundle.thm | 0 .../windows/sharedframework/bundle.wxl | 0 .../windows/sharedframework/bundle.wxs | 0 .../sharedframework/generatebundle.ps1 | 17 +- .../windows/sharedframework/generatemsi.ps1 | 15 +- .../windows/sharedframework/provider.wxs | 0 .../windows/sharedframework/registrykeys.wxs | 5 + .../sharedframework/sharedframework.wxs | 0 .../windows/sharedframework/variables.wxi | 0 .../Microsoft.NETCore.App.builds | 0 .../Microsoft.NETCore.App.depproj | 0 .../Microsoft.NETCore.App.pkgproj | 5 +- .../Microsoft.NETCore.App/netcoreapp1.0.props | 0 .../Microsoft.NETCore.App/netcoreapp1.1.props | 0 .../project.json.template | 0 .../Microsoft.NETCore.DotNetAppHost.builds | 0 .../Microsoft.NETCore.DotNetAppHost.pkgproj | 0 ...inux.Microsoft.NETCore.DotNetAppHost.props | 2 +- ....OSX.Microsoft.NETCore.DotNetAppHost.props | 2 +- ...s_NT.Microsoft.NETCore.DotNetAppHost.props | 2 +- .../Microsoft.NETCore.DotNetHost.builds | 0 .../Microsoft.NETCore.DotNetHost.pkgproj | 0 ...e.Linux.Microsoft.NETCore.DotNetHost.props | 2 +- ...ime.OSX.Microsoft.NETCore.DotNetHost.props | 2 +- ...dows_NT.Microsoft.NETCore.DotNetHost.props | 2 +- .../Microsoft.NETCore.DotNetHostPolicy.builds | 0 ...Microsoft.NETCore.DotNetHostPolicy.pkgproj | 0 ...x.Microsoft.NETCore.DotNetHostPolicy.props | 2 +- ...X.Microsoft.NETCore.DotNetHostPolicy.props | 2 +- ...T.Microsoft.NETCore.DotNetHostPolicy.props | 2 +- ...icrosoft.NETCore.DotNetHostResolver.builds | 0 ...crosoft.NETCore.DotNetHostResolver.pkgproj | 0 ...Microsoft.NETCore.DotNetHostResolver.props | 2 +- ...Microsoft.NETCore.DotNetHostResolver.props | 2 +- ...Microsoft.NETCore.DotNetHostResolver.props | 2 +- ...ft.NETCore.UniversalWindowsPlatform.builds | 0 ...t.NETCore.UniversalWindowsPlatform.depproj | 0 ...t.NETCore.UniversalWindowsPlatform.pkgproj | 2 +- .../dir.props | 0 .../netcore50.props | 0 .../project.json.template | 0 .../uapRIDs.props | 0 .../Microsoft.Net.UWPCoreRuntimeSdk.builds | 0 .../Microsoft.Net.UWPCoreRuntimeSdk.pkgproj | 0 .../Microsoft.Net.UWPCoreRuntimeSdk/dir.props | 0 .../Microsoft.Net.UWPCoreRuntimeSdk.props | 0 .../Microsoft.Net.UWPCoreRuntimeSdk.targets | 0 .../pkg}/projects/ThirdPartyNotices.txt | 0 {pkg => src/pkg}/projects/descriptions.json | 0 {pkg => src/pkg}/projects/dir.props | 12 +- {pkg => src/pkg}/projects/dir.targets | 2 +- .../pkg}/projects/dir.traversal.targets | 0 .../pkg}/projects/dotnet_library_license.txt | 0 .../pkg}/projects/netcoreappRIDs.props | 0 .../LightupClient/LightupClient.xproj | 0 .../TestProjects/LightupClient/Program.cs | 0 .../TestProjects/LightupClient/project.json | 2 +- .../TestProjects/LightupLib/LightupLib.xproj | 0 .../TestProjects/LightupLib/Program.cs | 0 .../TestProjects/LightupLib/project.json | 2 +- .../PortableApp/PortableApp.xproj | 0 .../TestProjects/PortableApp/Program.cs | 0 .../TestProjects/PortableApp}/project.json | 2 +- .../PortableTestApp/PortableApp.xproj | 0 .../TestProjects/PortableTestApp/Program.cs | 0 .../TestProjects/PortableTestApp/project.json | 2 +- .../TestProjects/ResourceLookup/Program.cs | 0 .../ResourceLookup/ResourceLookup.xproj | 0 .../TestProjects/ResourceLookup/project.json | 0 .../SharedFxLookupPortableApp/Program.cs | 0 .../SharedFxLookupPortableApp.xproj | 0 .../SharedFxLookupPortableApp}/project.json | 2 +- .../TestProjects/StandaloneApp/Program.cs | 0 .../StandaloneApp/StandaloneApp.xproj | 0 .../StandaloneApp/project.json.template | 2 +- .../TestProjects/StandaloneTestApp/Program.cs | 0 .../StandaloneTestApp/StandaloneApp.xproj | 0 .../StandaloneTestApp/project.json.template | 2 +- .../SDKLookup/dotnet.runtimeconfig.json | 0 .../Assets}/TestUtils/SDKLookup/global.json | 0 {TestAssets => src/test/Assets}/global.json | 0 ...nThatICareAboutDotnetTestXunitScenarios.cs | 0 ...GivenThatICareAboutLightupAppActivation.cs | 0 .../GivenThatICareAboutMultilevelSDKLookup.cs | 8 +- ...nThatICareAboutMultilevelSharedFxLookup.cs | 2 +- ...ivenThatICareAboutPortableAppActivation.cs | 0 .../GivenThatICareAboutResourceLookup.cs | 0 ...enThatICareAboutStandaloneAppActivation.cs | 3 +- .../HostActivationTests.xproj | 2 - .../test}/HostActivationTests/project.json | 0 .../AppBaseResolverTests.cs | 0 .../CompilationLibraryTests.cs | 0 .../CompositeResolverTests.cs | 0 .../DependencyContextBuilderTests.cs | 0 .../DependencyContextJsonReaderTest.cs | 0 .../DependencyContextJsonWriterTests.cs | 0 .../DependencyContextLoaderTests.cs | 0 .../DependencyContextPathsTests.cs | 0 .../DependencyContextTests.cs | 0 .../EnvironmentMockBuilder.cs | 0 .../JsonAssetions.cs | 0 ...oft.Extensions.DependencyModel.Tests.xproj | 2 - .../PackageResolverTest.cs | 0 .../ReferenceAssemblyResolverTests.cs | 0 .../TestLibraryFactory.cs | 0 .../mocks/FileSystemMockBuilder.cs | 0 .../project.json | 2 +- .../test}/TestUtils/AppHostExtensions.cs | 0 .../Assertions/CommandResultAssertions.cs | 0 .../Assertions/CommandResultExtensions.cs | 0 .../Assertions/DirectoryInfoAssertions.cs | 0 .../Assertions/DirectoryInfoExtensions.cs | 0 .../TestUtils/RepoDirectoriesProvider.cs | 30 +- .../TestUtils/RuntimeInformationExtensions.cs | 0 {test => src/test}/TestUtils/TestProject.cs | 3 - .../test}/TestUtils/TestProjectFixture.cs | 6 +- {test => src/test}/TestUtils/TestUtils.xproj | 3 +- src/test/TestUtils/project.json | 44 ++ src/test/bootstrap/.cliversion | 1 + src/test/bootstrap/.toolversions | 1 + src/test/bootstrap/bootstrap.ps1 | 102 +++ src/test/bootstrap/bootstrap.sh | 225 ++++++ src/test/bootstrap/dotnet-install.sh | 740 ++++++++++++++++++ .../AnsiColorExtensions.cs | 0 .../AnsiConsole.cs | 0 .../ArgumentEscaper.cs | 0 .../BuildContext.cs | 0 .../BuildFailureException.BuildTarget.cs | 0 .../BuildFailureException.cs | 0 .../BuildHelpers.cs | 0 .../BuildReporter.cs | 0 .../BuildSetup.cs | 0 .../BuildTarget.cs | 0 .../BuildTargetContext.cs | 0 .../BuildTargetResult.cs | 0 .../Command.cs | 0 .../CommandResult.cs | 0 .../Constants.cs | 0 .../CurrentArchitecture.cs | 0 .../CurrentPlatform.cs | 0 .../DebugHelper.cs | 0 .../Enumerations/BuildArchitecture.cs | 0 .../Enumerations/BuildPlatform.cs | 0 ...Microsoft.DotNet.Cli.Build.Framework.xproj | 4 +- .../Reporter.cs | 0 .../StandardGoals.cs | 0 .../TargetAttribute.cs | 0 .../BuildArchitecturesAttribute.cs | 0 .../BuildPlatformsAttribute.cs | 0 .../TargetConditions/EnvironmentAttribute.cs | 0 .../TargetConditionAttribute.cs | 0 .../UndefinedTargetException.cs | 0 .../project.json | 0 .../DependencyVersions.cs | 0 .../HostArtifactNames.cs | 0 .../PackageDependencies.cs | 0 .../Publishing/AzurePublisher.cs | 0 .../Publishing/DebRepoPublisher.cs | 0 .../Utils/AptDependencyUtility.cs | 0 .../Utils/BranchInfo.cs | 0 .../Utils/Crossgen.cs | 2 +- .../Utils/DebPackageCreator.cs | 0 .../shared-build-targets-utils/Utils/Dirs.cs | 0 .../Utils/DotNetCli.Stages.cs | 0 .../Utils/DotNetCli.cs | 24 +- .../Utils/EnvVars.cs | 0 .../shared-build-targets-utils/Utils/FS.cs | 1 + .../Utils/JsonUtils.cs | 0 .../Utils/Monikers.cs | 21 - .../Utils/PEUtils.cs | 0 .../Utils/PublishMutationUtilties.cs | 20 +- .../Utils/SharedFrameworkPublisher.cs | 42 +- .../shared-build-targets-utils/Utils/Utils.cs | 0 .../Utils/YumDependencyUtility.cs | 0 .../VersionRepoUpdater.cs | 0 .../shared-build-targets-utils/project.json | 0 .../shared-build-targets-utils.xproj | 4 +- src/test/dir.proj | 145 ++++ src/test/dir.props | 19 + sync.cmd | 5 + sync.sh | 15 + test/TestUtils/project.json | 44 -- .../AzureBlobLease.cs | 185 +++++ .../AzureConnectionStringBuildTask.cs | 57 ++ .../AzureHelper.cs | 464 +++++++++++ .../CopyAzureBlobToBlob.cs | 100 +++ .../DeleteAzureBlob.cs | 66 ++ .../DownloadBlobFromAzure.cs | 153 ++++ .../DownloadBlobsFromAzure.cs | 63 ++ .../GetAzureBlobList.cs | 125 +++ .../GetHostInformation.cs | 45 ++ .../Microsoft.DotNet.Build.Tasks.Local.builds | 0 .../Microsoft.DotNet.Build.Tasks.Local.csproj | 18 +- .../PublishStringToAzureBlob.cs | 63 ++ .../README.md | 1 + .../UploadClient.cs | 183 +++++ .../UploadToAzure.cs | 177 +++++ .../project.json | 32 + tools-local/global.json | 1 + .../scripts}/arm32_ci_script.sh | 0 .../scripts}/common/_common.ps1 | 0 .../scripts}/common/_common.sh | 0 .../scripts}/common/_prettyprint.sh | 0 .../scripts}/common/_utility.ps1 | 0 .../scripts}/docker-as-current-user.sh | 3 +- .../scripts}/docker/centos.7/Dockerfile | 0 .../scripts}/docker/debian.8/Dockerfile | 0 .../scripts}/docker/fedora.24/Dockerfile | 0 .../scripts}/docker/opensuse.42.1/Dockerfile | 0 .../scripts}/docker/ubuntu.14.04/Dockerfile | 0 .../scripts}/docker/ubuntu.16.04/Dockerfile | 0 .../scripts}/docker/ubuntu.16.10/Dockerfile | 0 .../scripts}/dockerrun-as-current-user.sh | 1 - {scripts => tools-local/scripts}/dockerrun.sh | 0 .../scripts}/publish/repoapi_client.sh | 26 +- .../setuptools}/Key.snk | Bin .../setuptools}/dotnet-deb-tool/Program.cs | 0 .../setuptools}/dotnet-deb-tool/README.md | 0 .../dotnet-deb-tool/dotnet-deb-tool.xproj | 4 +- .../dotnet-deb-tool/example_config.json | 0 .../dotnet-deb-tool/prefercliruntime | 0 .../setuptools}/dotnet-deb-tool/project.json | 2 +- .../tool/package_files/debian/compat | 0 .../tool/package_files/debian/source/format | 0 .../dotnet-deb-tool/tool/package_tool | 2 +- .../tool/scripts/config_template_generator.py | 0 .../tool/scripts/debian_build_lib.sh | 0 .../tool/scripts/extract_json_value.py | 0 .../tool/scripts/manpage_generator.py | 0 .../dotnet-deb-tool/tool/setup/build_setup.sh | 0 .../dotnet-deb-tool/tool/setup/test_setup.sh | 0 .../tool/templates/debian/changelog | 0 .../tool/templates/debian/control | 0 .../tool/templates/debian/copyright | 0 .../tool/templates/debian/rules | 0 .../setuptools}/dotnet-deb-tool/tool/test.sh | 0 .../test/integration_tests/test_package.bats | 0 .../tool/test/test_assets/lkgtestman.1 | 0 .../test_package_layout/debian_config.json | 0 .../test_assets/test_package_layout/docs.json | 0 .../test_package_layout/docs/testdocs.1 | 0 .../path_relative_to_package_root/test_exe.sh | 0 .../package_root/test_called.sh | 0 .../test_package_layout/samples/testsample.cs | 0 .../tool/test/test_assets/testdocs.json | 0 .../unit_tests/test_debian_build_lib.bats | 0 .../tool/test/unit_tests/test_scripts.bats | 0 .../independent/DepsProcessor/Program.cs | 14 +- .../DepsProcessor/RuntimeGraphGenerator.xproj | 4 +- .../DepsProcessor/RuntimeGraphManager.cs | 6 +- .../DepsProcessor/RuntimeReference.cs | 4 +- .../independent/DepsProcessor/project.json | 24 + .../DepsProcessor/project.json.template | 0 .../setuptools}/independent/global.json | 0 {pkg => tools-local}/tasks/BuildTask.cs | 0 .../tasks/ChangeEntryPointLibraryName.cs | 71 ++ {pkg => tools-local}/tasks/FileUtilities.cs | 0 tools-local/tasks/FinalizeBuild.cs | 206 +++++ .../tasks/GenerateDebRepoUploadJsonFile.cs | 47 ++ .../tasks/GenerateFileVersionProps.cs | 0 tools-local/tasks/GenerateGuidFromName.cs | 70 ++ tools-local/tasks/GenerateMsiVersion.cs | 103 +++ tools-local/tasks/GetBuildableFrameworks.cs | 63 ++ tools-local/tasks/ReplaceFileContents.cs | 106 +++ tools-local/tasks/core-setup.tasks.builds | 11 + tools-local/tasks/core-setup.tasks.csproj | 47 ++ tools-local/tasks/core-setup.tasks.sln | 28 + .../tasks/net45}/FileUtilities.net45.cs | 0 .../netstandard}/FileUtilities.netstandard.cs | 0 {pkg => tools-local}/tasks/project.json | 3 +- tools-override/Roslyn.Common.props | 25 + tools-override/crossgen.sh | 90 +++ 518 files changed, 9296 insertions(+), 6461 deletions(-) create mode 100644 BuildToolsVersion.txt rename pkg/DotnetCLIVersion.txt => DotnetCLIVersion.txt (100%) delete mode 100644 NuGet.Config create mode 100644 build.proj delete mode 100644 build_projects/dotnet-host-build/CompileTargets.cs delete mode 100644 build_projects/dotnet-host-build/DebTargets.cs delete mode 100644 build_projects/dotnet-host-build/InstallerTargets.cs delete mode 100644 build_projects/dotnet-host-build/MsiTargets.cs delete mode 100644 build_projects/dotnet-host-build/NugetUtil.cs delete mode 100644 build_projects/dotnet-host-build/PackageTargets.cs delete mode 100644 build_projects/dotnet-host-build/PkgTargets.cs delete mode 100644 build_projects/dotnet-host-build/PrepareTargets.cs delete mode 100644 build_projects/dotnet-host-build/Program.cs delete mode 100644 build_projects/dotnet-host-build/PublishTargets.cs delete mode 100644 build_projects/dotnet-host-build/TestTargets.cs delete mode 100644 build_projects/dotnet-host-build/build.ps1 delete mode 100755 build_projects/dotnet-host-build/build.sh delete mode 100644 build_projects/dotnet-host-build/dotnet-host-build.xproj delete mode 100644 build_projects/dotnet-host-build/project.json.template delete mode 100644 build_projects/shared-build-targets-utils/Utils/BuildVersion.cs delete mode 100644 build_projects/shared-build-targets-utils/Utils/GitUtils.cs delete mode 100644 build_projects/shared-build-targets-utils/Utils/HostVersion.cs delete mode 100644 build_projects/shared-build-targets-utils/Utils/Version.cs delete mode 100644 build_projects/update-dependencies/Config.cs delete mode 100644 build_projects/update-dependencies/Dirs.cs delete mode 100644 build_projects/update-dependencies/Program.cs delete mode 100644 build_projects/update-dependencies/project.json.template delete mode 100644 build_projects/update-dependencies/update-dependencies.ps1 delete mode 100755 build_projects/update-dependencies/update-dependencies.sh delete mode 100644 build_projects/update-dependencies/update-dependencies.xproj create mode 100644 buildpipeline/Core-Setup-Linux-BT.json rename buildpipeline/{Core-Setup-Linux.json => Core-Setup-OSX-BT.json} (54%) delete mode 100644 buildpipeline/Core-Setup-OSX-x64.json rename buildpipeline/{Core-Setup-Signing-Windows-x64.json => Core-Setup-Signing-Windows-BT.json} (59%) delete mode 100644 buildpipeline/Core-Setup-Signing-Windows-x86.json create mode 100644 buildpipeline/Core-Setup-Windows-BT.json delete mode 100644 buildpipeline/Core-Setup-Windows-arm32.json delete mode 100644 buildpipeline/Core-Setup-Windows-arm64.json create mode 100644 clean.cmd create mode 100755 clean.sh create mode 100644 config.json create mode 100644 dependencies.props create mode 100644 dir.props create mode 100644 dir.targets create mode 100644 dir.traversal.targets rename pkg/init-tools.cmd => init-tools.cmd (72%) create mode 100755 init-tools.sh delete mode 100644 packaging/osx/sharedframework/resources/fr.lproj/welcome.html delete mode 100644 packaging/osx/sharedframework/resources/it.lproj/welcome.html delete mode 100644 packaging/osx/sharedframework/resources/ja.lproj/welcome.html delete mode 100644 packaging/osx/sharedframework/resources/ko.lproj/welcome.html delete mode 100644 packaging/osx/sharedframework/resources/pl.lproj/welcome.html delete mode 100644 packaging/osx/sharedframework/resources/pt-br.lproj/welcome.html delete mode 100644 packaging/osx/sharedframework/resources/ru.lproj/welcome.html delete mode 100644 packaging/osx/sharedframework/resources/tr.lproj/welcome.html delete mode 100644 packaging/osx/sharedframework/resources/zh-hans.lproj/welcome.html delete mode 100644 packaging/osx/sharedframework/resources/zh-hant.lproj/welcome.html delete mode 100644 pkg/.gitignore delete mode 100644 pkg/BuildToolsVersion.txt delete mode 100644 pkg/dir.props delete mode 100644 pkg/dir.targets delete mode 100755 pkg/init-tools.sh delete mode 100644 pkg/pack.cmd delete mode 100755 pkg/pack.sh create mode 100644 publish/dir.props create mode 100644 publish/dir.targets create mode 100644 publish/publish.proj create mode 100644 run.cmd create mode 100644 run.ps1 create mode 100755 run.sh rename build_projects/signing/sign.proj => sign.proj (90%) create mode 100644 src/corehost/Windows/gen-buildsys-win.bat create mode 100644 src/corehost/Windows/probe-win.ps1 create mode 100644 src/corehost/build.cmd create mode 100644 src/corehost/build.proj create mode 100644 src/corehost/dir.props create mode 100644 src/dir.proj create mode 100644 src/dir.props create mode 100644 src/dir.targets rename src/{ => managed}/Microsoft.DotNet.PlatformAbstractions/ApplicationEnvironment.cs (100%) rename src/{ => managed}/Microsoft.DotNet.PlatformAbstractions/HashCodeCombiner.cs (100%) rename src/{ => managed}/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.xproj (100%) rename src/{ => managed}/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Darwin.cs (100%) rename src/{ => managed}/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Unix.cs (100%) rename src/{ => managed}/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Windows.cs (100%) rename src/{ => managed}/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs (100%) rename src/{ => managed}/Microsoft.DotNet.PlatformAbstractions/Platform.cs (100%) rename src/{ => managed}/Microsoft.DotNet.PlatformAbstractions/Properties/Properties.cs (100%) rename src/{ => managed}/Microsoft.DotNet.PlatformAbstractions/RuntimeEnvironment.cs (100%) rename src/{ => managed}/Microsoft.DotNet.PlatformAbstractions/project.json (90%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/CollectionExtensions.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/CompilationOptions.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/Dependency.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/DependencyContext.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/DependencyContextExtensions.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/DependencyContextJsonReader.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/DependencyContextStrings.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/DependencyContextWriter.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/DirectoryWrapper.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/EnvironmentWrapper.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/FileSystemWrapper.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/FileWrapper.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/IDependencyContextReader.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/IDirectory.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/IEnvironment.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/IFile.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/IFileSystem.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/JsonTextReaderExtensions.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/Library.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.xproj (83%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/Properties/Properties.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/Resolution/CompositeCompilationAssemblyResolver.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/Resolution/DotNetReferenceAssembliesPathResolver.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/Resolution/ICompilationAssemblyResolver.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/Resolution/PackageCompilationAssemblyResolver.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/Resolution/ReferenceAssemblyPathResolver.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/ResourceAssembly.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/RuntimeAssembly.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/RuntimeAssetGroup.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/RuntimeFallbacks.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/TargetInfo.cs (100%) rename src/{ => managed}/Microsoft.Extensions.DependencyModel/project.json (91%) create mode 100644 src/managed/dir.proj rename src/{ => managed}/sharedframework/framework/Program.cs (100%) rename src/{ => managed}/sharedframework/framework/project.json.template (97%) rename {pkg => src/pkg}/deps/project.json (100%) create mode 100644 src/pkg/dir.proj create mode 100644 src/pkg/dir.props create mode 100644 src/pkg/dir.targets rename {pkg => src/pkg}/dir.traversal.targets (100%) rename {pkg => src/pkg}/global.json (100%) rename {pkg => src/pkg}/packageIndex.json (100%) rename {pkg => src/pkg}/packages.builds (100%) rename {packaging => src/pkg/packaging}/LICENSE.txt (100%) rename {packaging => src/pkg/packaging}/deb/dotnet-hostfxr-debian_config.json (100%) rename {packaging => src/pkg/packaging}/deb/dotnet-sharedframework-debian_config.json (100%) rename {packaging => src/pkg/packaging}/deb/dotnet-sharedhost-debian_config.json (100%) create mode 100644 src/pkg/packaging/deb/package.props create mode 100644 src/pkg/packaging/deb/package.targets create mode 100644 src/pkg/packaging/dir.proj create mode 100644 src/pkg/packaging/dir.props create mode 100644 src/pkg/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/cs.lproj/eula.rtf (100%) rename {packaging/osx/sharedframework => src/pkg/packaging/osx/hostfxr}/resources/cs.lproj/welcome.html (56%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/de.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/de.lproj/eula.rtf (100%) rename {packaging/osx/sharedframework => src/pkg/packaging/osx/hostfxr}/resources/de.lproj/welcome.html (56%) rename {packaging/osx/sharedframework => src/pkg/packaging/osx/hostfxr}/resources/dotnetbackground.png (100%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/en.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/en.lproj/eula.rtf (100%) rename {packaging/osx/sharedframework => src/pkg/packaging/osx/hostfxr}/resources/en.lproj/welcome.html (56%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/es.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/es.lproj/eula.rtf (100%) rename {packaging/osx/sharedframework => src/pkg/packaging/osx/hostfxr}/resources/es.lproj/welcome.html (56%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/fr.lproj/eula.rtf (100%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/fr.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/hostfxr/resources/it.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/it.lproj/eula.rtf (100%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/it.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/ja.lproj/eula.rtf (100%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/ja.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/ko.lproj/eula.rtf (100%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/ko.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/pl.lproj/eula.rtf (100%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/pl.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/pt-br.lproj/eula.rtf (100%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/ru.lproj/eula.rtf (100%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/ru.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/tr.lproj/eula.rtf (100%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/tr.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/zh-hans.lproj/eula.rtf (100%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html rename {packaging => src/pkg/packaging}/osx/hostfxr/resources/zh-hant.lproj/eula.rtf (100%) create mode 100644 src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/welcome.html rename {packaging => src/pkg/packaging}/osx/hostfxr/scripts/postinstall (100%) mode change 100755 => 100644 create mode 100644 src/pkg/packaging/osx/package.props create mode 100644 src/pkg/packaging/osx/package.targets rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/cs.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/de.lproj/eula.rtf (100%) create mode 100644 src/pkg/packaging/osx/sharedframework/resources/dotnetbackground.png rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/en.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/es.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/fr.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/it.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/ja.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/ko.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/pl.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/pt-br.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/ru.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/tr.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/zh-hans.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedframework/resources/zh-hant.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedframework/scripts/postinstall (100%) mode change 100755 => 100644 rename {packaging => src/pkg/packaging}/osx/sharedframework/shared-framework-distribution-template.xml (97%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/cs.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/de.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/en.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/es.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/fr.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/it.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/ja.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/ko.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/pl.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/pt-br.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/ru.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/tr.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/zh-hans.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/resources/zh-hant.lproj/eula.rtf (100%) rename {packaging => src/pkg/packaging}/osx/sharedhost/scripts/postinstall (100%) mode change 100755 => 100644 create mode 100644 src/pkg/packaging/windows/GetWix.ps1 rename {packaging => src/pkg/packaging}/windows/host/generatemsi.ps1 (86%) rename {packaging => src/pkg/packaging}/windows/host/host.wxs (100%) rename {packaging => src/pkg/packaging}/windows/host/provider.wxs (100%) rename {packaging => src/pkg/packaging}/windows/host/variables.wxi (100%) rename {packaging => src/pkg/packaging}/windows/hostfxr/generatemsi.ps1 (89%) rename {packaging => src/pkg/packaging}/windows/hostfxr/hostfxr.wxs (100%) rename {packaging => src/pkg/packaging}/windows/hostfxr/provider.wxs (100%) rename {packaging => src/pkg/packaging}/windows/hostfxr/registrykeys.wxs (100%) rename {packaging => src/pkg/packaging}/windows/hostfxr/variables.wxi (100%) create mode 100644 src/pkg/packaging/windows/package.props create mode 100644 src/pkg/packaging/windows/package.targets rename {packaging => src/pkg/packaging}/windows/sharedframework/bundle.thm (100%) rename {packaging => src/pkg/packaging}/windows/sharedframework/bundle.wxl (100%) rename {packaging => src/pkg/packaging}/windows/sharedframework/bundle.wxs (100%) rename {packaging => src/pkg/packaging}/windows/sharedframework/generatebundle.ps1 (86%) rename {packaging => src/pkg/packaging}/windows/sharedframework/generatemsi.ps1 (90%) rename {packaging => src/pkg/packaging}/windows/sharedframework/provider.wxs (100%) rename {packaging => src/pkg/packaging}/windows/sharedframework/registrykeys.wxs (86%) rename {packaging => src/pkg/packaging}/windows/sharedframework/sharedframework.wxs (100%) rename {packaging => src/pkg/packaging}/windows/sharedframework/variables.wxi (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.builds (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj (97%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.App/netcoreapp1.0.props (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.App/netcoreapp1.1.props (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.App/project.json.template (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.builds (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetAppHost/Microsoft.NETCore.DotNetAppHost.pkgproj (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetAppHost/runtime.Linux.Microsoft.NETCore.DotNetAppHost.props (89%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetAppHost/runtime.OSX.Microsoft.NETCore.DotNetAppHost.props (89%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props (92%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.builds (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.pkgproj (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHost/runtime.Linux.Microsoft.NETCore.DotNetHost.props (89%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHost/runtime.OSX.Microsoft.NETCore.DotNetHost.props (89%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props (92%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.builds (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Linux.Microsoft.NETCore.DotNetHostPolicy.props (87%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.OSX.Microsoft.NETCore.DotNetHostPolicy.props (87%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props (92%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.builds (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Linux.Microsoft.NETCore.DotNetHostResolver.props (89%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHostResolver/runtime.OSX.Microsoft.NETCore.DotNetHostResolver.props (89%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props (90%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj (98%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.UniversalWindowsPlatform/dir.props (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.UniversalWindowsPlatform/netcore50.props (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template (100%) rename {pkg => src/pkg}/projects/Microsoft.NETCore.UniversalWindowsPlatform/uapRIDs.props (100%) rename {pkg => src/pkg}/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.builds (100%) rename {pkg => src/pkg}/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj (100%) rename {pkg => src/pkg}/projects/Microsoft.Net.UWPCoreRuntimeSdk/dir.props (100%) rename {pkg => src/pkg}/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/Microsoft.Net.UWPCoreRuntimeSdk.props (100%) rename {pkg => src/pkg}/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/Microsoft.Net.UWPCoreRuntimeSdk.targets (100%) rename {pkg => src/pkg}/projects/ThirdPartyNotices.txt (100%) rename {pkg => src/pkg}/projects/descriptions.json (100%) rename {pkg => src/pkg}/projects/dir.props (89%) rename {pkg => src/pkg}/projects/dir.targets (98%) rename {pkg => src/pkg}/projects/dir.traversal.targets (100%) rename {pkg => src/pkg}/projects/dotnet_library_license.txt (100%) rename {pkg => src/pkg}/projects/netcoreappRIDs.props (100%) rename {TestAssets => src/test/Assets}/TestProjects/LightupClient/LightupClient.xproj (100%) rename {TestAssets => src/test/Assets}/TestProjects/LightupClient/Program.cs (100%) rename {TestAssets => src/test/Assets}/TestProjects/LightupClient/project.json (85%) rename {TestAssets => src/test/Assets}/TestProjects/LightupLib/LightupLib.xproj (100%) rename {TestAssets => src/test/Assets}/TestProjects/LightupLib/Program.cs (100%) rename {TestAssets => src/test/Assets}/TestProjects/LightupLib/project.json (99%) rename {TestAssets => src/test/Assets}/TestProjects/PortableApp/PortableApp.xproj (100%) rename {TestAssets => src/test/Assets}/TestProjects/PortableApp/Program.cs (100%) rename {TestAssets/TestProjects/SharedFxLookupPortableApp => src/test/Assets/TestProjects/PortableApp}/project.json (99%) rename {TestAssets => src/test/Assets}/TestProjects/PortableTestApp/PortableApp.xproj (100%) rename {TestAssets => src/test/Assets}/TestProjects/PortableTestApp/Program.cs (100%) rename {TestAssets => src/test/Assets}/TestProjects/PortableTestApp/project.json (99%) rename {TestAssets => src/test/Assets}/TestProjects/ResourceLookup/Program.cs (100%) rename {TestAssets => src/test/Assets}/TestProjects/ResourceLookup/ResourceLookup.xproj (100%) rename {TestAssets => src/test/Assets}/TestProjects/ResourceLookup/project.json (100%) rename {TestAssets => src/test/Assets}/TestProjects/SharedFxLookupPortableApp/Program.cs (100%) rename {TestAssets => src/test/Assets}/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.xproj (100%) rename {TestAssets/TestProjects/PortableApp => src/test/Assets/TestProjects/SharedFxLookupPortableApp}/project.json (99%) rename {TestAssets => src/test/Assets}/TestProjects/StandaloneApp/Program.cs (100%) rename {TestAssets => src/test/Assets}/TestProjects/StandaloneApp/StandaloneApp.xproj (100%) rename {TestAssets => src/test/Assets}/TestProjects/StandaloneApp/project.json.template (99%) rename {TestAssets => src/test/Assets}/TestProjects/StandaloneTestApp/Program.cs (100%) rename {TestAssets => src/test/Assets}/TestProjects/StandaloneTestApp/StandaloneApp.xproj (100%) rename {TestAssets => src/test/Assets}/TestProjects/StandaloneTestApp/project.json.template (99%) rename {TestAssets => src/test/Assets}/TestUtils/SDKLookup/dotnet.runtimeconfig.json (100%) rename {TestAssets => src/test/Assets}/TestUtils/SDKLookup/global.json (100%) rename {TestAssets => src/test/Assets}/global.json (100%) rename {test => src/test}/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs (100%) rename {test => src/test}/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs (100%) rename {test => src/test}/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs (98%) rename {test => src/test}/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs (99%) rename {test => src/test}/HostActivationTests/GivenThatICareAboutPortableAppActivation.cs (100%) rename {test => src/test}/HostActivationTests/GivenThatICareAboutResourceLookup.cs (100%) rename {test => src/test}/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs (98%) rename {test => src/test}/HostActivationTests/HostActivationTests.xproj (81%) rename {test => src/test}/HostActivationTests/project.json (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/CompilationLibraryTests.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/CompositeResolverTests.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/DependencyContextBuilderTests.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonReaderTest.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonWriterTests.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/DependencyContextLoaderTests.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/DependencyContextPathsTests.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/DependencyContextTests.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/EnvironmentMockBuilder.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/JsonAssetions.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.xproj (80%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/ReferenceAssemblyResolverTests.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/TestLibraryFactory.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/mocks/FileSystemMockBuilder.cs (100%) rename {test => src/test}/Microsoft.Extensions.DependencyModel.Tests/project.json (93%) rename {test => src/test}/TestUtils/AppHostExtensions.cs (100%) rename {test => src/test}/TestUtils/Assertions/CommandResultAssertions.cs (100%) rename {test => src/test}/TestUtils/Assertions/CommandResultExtensions.cs (100%) rename {test => src/test}/TestUtils/Assertions/DirectoryInfoAssertions.cs (100%) rename {test => src/test}/TestUtils/Assertions/DirectoryInfoExtensions.cs (100%) rename {test => src/test}/TestUtils/RepoDirectoriesProvider.cs (53%) rename {test => src/test}/TestUtils/RuntimeInformationExtensions.cs (100%) rename {test => src/test}/TestUtils/TestProject.cs (97%) rename {test => src/test}/TestUtils/TestProjectFixture.cs (98%) rename {test => src/test}/TestUtils/TestUtils.xproj (81%) create mode 100644 src/test/TestUtils/project.json create mode 100644 src/test/bootstrap/.cliversion create mode 100644 src/test/bootstrap/.toolversions create mode 100644 src/test/bootstrap/bootstrap.ps1 create mode 100755 src/test/bootstrap/bootstrap.sh create mode 100644 src/test/bootstrap/dotnet-install.sh rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/AnsiColorExtensions.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/AnsiConsole.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/BuildContext.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.BuildTarget.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/BuildHelpers.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/BuildReporter.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/BuildSetup.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/BuildTarget.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/BuildTargetContext.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/BuildTargetResult.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/Command.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/CommandResult.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/Constants.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/CurrentArchitecture.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/CurrentPlatform.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/DebugHelper.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildArchitecture.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildPlatform.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.xproj (86%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/Reporter.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/StandardGoals.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/TargetAttribute.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildArchitecturesAttribute.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildPlatformsAttribute.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/EnvironmentAttribute.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/TargetConditionAttribute.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/UndefinedTargetException.cs (100%) rename {build_projects => src/test/build}/Microsoft.DotNet.Cli.Build.Framework/project.json (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/DependencyVersions.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/HostArtifactNames.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/PackageDependencies.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/Publishing/AzurePublisher.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/Publishing/DebRepoPublisher.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/AptDependencyUtility.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/BranchInfo.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/Crossgen.cs (99%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/DebPackageCreator.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/Dirs.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/DotNetCli.Stages.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/DotNetCli.cs (91%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/EnvVars.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/FS.cs (98%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/JsonUtils.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/Monikers.cs (82%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/PEUtils.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/PublishMutationUtilties.cs (83%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs (88%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/Utils.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/Utils/YumDependencyUtility.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/VersionRepoUpdater.cs (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/project.json (100%) rename {build_projects => src/test/build}/shared-build-targets-utils/shared-build-targets-utils.xproj (86%) create mode 100644 src/test/dir.proj create mode 100644 src/test/dir.props create mode 100644 sync.cmd create mode 100755 sync.sh delete mode 100644 test/TestUtils/project.json create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureBlobLease.cs create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureConnectionStringBuildTask.cs create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/CopyAzureBlobToBlob.cs create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/DeleteAzureBlob.cs create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobFromAzure.cs create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobsFromAzure.cs create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/GetHostInformation.cs rename pkg/tasks/core-setup.tasks.builds => tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.builds (100%) rename pkg/tasks/core-setup.tasks.csproj => tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.csproj (71%) create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/PublishStringToAzureBlob.cs create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/README.md create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadClient.cs create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadToAzure.cs create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/project.json create mode 100644 tools-local/global.json rename {scripts => tools-local/scripts}/arm32_ci_script.sh (100%) mode change 100755 => 100644 rename {scripts => tools-local/scripts}/common/_common.ps1 (100%) rename {scripts => tools-local/scripts}/common/_common.sh (100%) mode change 100755 => 100644 rename {scripts => tools-local/scripts}/common/_prettyprint.sh (100%) mode change 100755 => 100644 rename {scripts => tools-local/scripts}/common/_utility.ps1 (100%) rename {scripts => tools-local/scripts}/docker-as-current-user.sh (70%) rename {scripts => tools-local/scripts}/docker/centos.7/Dockerfile (100%) rename {scripts => tools-local/scripts}/docker/debian.8/Dockerfile (100%) rename {scripts => tools-local/scripts}/docker/fedora.24/Dockerfile (100%) rename {scripts => tools-local/scripts}/docker/opensuse.42.1/Dockerfile (100%) rename {scripts => tools-local/scripts}/docker/ubuntu.14.04/Dockerfile (100%) rename {scripts => tools-local/scripts}/docker/ubuntu.16.04/Dockerfile (100%) rename {scripts => tools-local/scripts}/docker/ubuntu.16.10/Dockerfile (100%) rename {scripts => tools-local/scripts}/dockerrun-as-current-user.sh (99%) rename {scripts => tools-local/scripts}/dockerrun.sh (100%) mode change 100755 => 100644 rename {scripts => tools-local/scripts}/publish/repoapi_client.sh (95%) mode change 100755 => 100644 rename {setuptools => tools-local/setuptools}/Key.snk (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/Program.cs (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/README.md (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/dotnet-deb-tool.xproj (84%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/example_config.json (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/prefercliruntime (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/project.json (84%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/package_files/debian/compat (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/package_files/debian/source/format (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/package_tool (98%) mode change 100755 => 100644 rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/scripts/config_template_generator.py (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/scripts/debian_build_lib.sh (100%) mode change 100755 => 100644 rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/scripts/extract_json_value.py (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/scripts/manpage_generator.py (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/setup/build_setup.sh (100%) mode change 100755 => 100644 rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/setup/test_setup.sh (100%) mode change 100755 => 100644 rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/templates/debian/changelog (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/templates/debian/control (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/templates/debian/copyright (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/templates/debian/rules (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/test.sh (100%) mode change 100755 => 100644 rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/test/integration_tests/test_package.bats (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/test/test_assets/lkgtestman.1 (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/test/test_assets/test_package_layout/debian_config.json (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/test/test_assets/test_package_layout/docs.json (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/test/test_assets/test_package_layout/docs/testdocs.1 (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/test/test_assets/test_package_layout/package_root/path_relative_to_package_root/test_exe.sh (100%) mode change 100755 => 100644 rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/test/test_assets/test_package_layout/package_root/test_called.sh (100%) mode change 100755 => 100644 rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/test/test_assets/test_package_layout/samples/testsample.cs (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/test/test_assets/testdocs.json (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/test/unit_tests/test_debian_build_lib.bats (100%) rename {setuptools => tools-local/setuptools}/dotnet-deb-tool/tool/test/unit_tests/test_scripts.bats (100%) rename {setuptools => tools-local/setuptools}/independent/DepsProcessor/Program.cs (96%) rename {setuptools => tools-local/setuptools}/independent/DepsProcessor/RuntimeGraphGenerator.xproj (86%) rename {setuptools => tools-local/setuptools}/independent/DepsProcessor/RuntimeGraphManager.cs (83%) rename {setuptools => tools-local/setuptools}/independent/DepsProcessor/RuntimeReference.cs (97%) create mode 100644 tools-local/setuptools/independent/DepsProcessor/project.json rename {setuptools => tools-local/setuptools}/independent/DepsProcessor/project.json.template (100%) rename {setuptools => tools-local/setuptools}/independent/global.json (100%) rename {pkg => tools-local}/tasks/BuildTask.cs (100%) create mode 100644 tools-local/tasks/ChangeEntryPointLibraryName.cs rename {pkg => tools-local}/tasks/FileUtilities.cs (100%) create mode 100644 tools-local/tasks/FinalizeBuild.cs create mode 100644 tools-local/tasks/GenerateDebRepoUploadJsonFile.cs rename {pkg => tools-local}/tasks/GenerateFileVersionProps.cs (100%) create mode 100644 tools-local/tasks/GenerateGuidFromName.cs create mode 100644 tools-local/tasks/GenerateMsiVersion.cs create mode 100644 tools-local/tasks/GetBuildableFrameworks.cs create mode 100644 tools-local/tasks/ReplaceFileContents.cs create mode 100644 tools-local/tasks/core-setup.tasks.builds create mode 100644 tools-local/tasks/core-setup.tasks.csproj create mode 100644 tools-local/tasks/core-setup.tasks.sln rename {pkg/tasks => tools-local/tasks/net45}/FileUtilities.net45.cs (100%) rename {pkg/tasks => tools-local/tasks/netstandard}/FileUtilities.netstandard.cs (100%) rename {pkg => tools-local}/tasks/project.json (90%) create mode 100644 tools-override/Roslyn.Common.props create mode 100755 tools-override/crossgen.sh diff --git a/.gitignore b/.gitignore index bce98b0e..7b8c5b73 100644 --- a/.gitignore +++ b/.gitignore @@ -1,53 +1,9 @@ -### Repo-specific things ### +syntax: glob -# RootFS used for cross-compilation -cross/rootfs +### VisualStudio ### -# Test results -*-testResults.xml - -# Multicore JIT Optimization profiles -**/optimizationdata/dotnet - -# NuGet keeps dropping -Library/ - -# NuGet v3 restore drops these even though we don't use MSBuild :( -*.nuget.targets -*.nuget.props - -# Repo Local Package Cache -.nuget/ - -# Debian and python stuff -*.dsc -*.tar.gz -*.build -*.changes -*.deb -*.pyc -*.pyo - -# OSX Packaging temp files -*.pkg - -# OS X Device Services Store -.DS_Store - -# CMake generated files -cmake/ - -# stage0 install directory -.dotnet_stage0 - -# `dotnet new` project.json.template files are generated by a pre-build step. -# ignore these files -/src/dotnet/commands/dotnet-new/**/project.json.template - -### VisualStudio.gitignore from https://raw.githubusercontent.com/github/gitignore/master/VisualStudio.gitignore ### - -## Ignore Visual Studio temporary files, build results, and -## files generated by popular Visual Studio add-ons. +# Tool Runtime Dir +/[Tt]ools/ # User-specific files *.suo @@ -55,9 +11,6 @@ cmake/ *.userosscache *.sln.docstates -# User-specific files (MonoDevelop/Xamarin Studio) -*.userprefs - # Build results [Dd]ebug/ [Dd]ebugPublic/ @@ -69,21 +22,28 @@ build/ bld/ [Bb]in/ [Oo]bj/ +msbuild.log +msbuild.err +msbuild.wrn -# Visual Studio 2015 cache/options directory +# Cross building rootfs +cross/rootfs/ +cross/android-rootfs/ +# add x86 as it is ignored in 'Build results' +!cross/x86 + +# Visual Studio 2015 .vs/ -# Visual Studio Code cache/options directory -.vscode/ - -# Uncomment if you have tasks that create the project's static files in wwwroot -#wwwroot/ +# Visual Studio 2015 Pre-CTP6 +*.sln.ide +*.ide/ # MSTest test Results [Tt]est[Rr]esult*/ [Bb]uild[Ll]og.* -# NUNIT +#NUNIT *.VisualState.xml TestResult.xml @@ -92,10 +52,6 @@ TestResult.xml [Rr]eleasePS/ dlldata.c -# DNX -project.lock.json -artifacts/ - *_i.c *_p.c *_i.h @@ -133,13 +89,11 @@ ipch/ *.sdf *.cachefile *.VC.db -*.VC.VC.opendb # Visual Studio profiler *.psess *.vsp *.vspx -*.sap # TFS 2012 Local Workspace $tf/ @@ -151,10 +105,8 @@ $tf/ _ReSharper*/ *.[Rr]e[Ss]harper *.DotSettings.user -.idea/ -*.iml -# JustCode is a .NET coding add-in +# JustCode is a .NET coding addin-in .JustCode # TeamCity is a build add-in @@ -166,7 +118,6 @@ _TeamCity* # NCrunch _NCrunch_* .*crunch*.local.xml -nCrunchTemp_* # MightyMoose *.mm.* @@ -188,54 +139,41 @@ DocProject/Help/*.hhp DocProject/Help/Html2 DocProject/Help/html -# Click-Once directory -publish/ - # Publish Web Output *.[Pp]ublish.xml *.azurePubxml -# TODO: Comment the next line if you want to checkin your web deploy settings -# but database connection strings (with potential passwords) will be unencrypted *.pubxml *.publishproj # NuGet Packages +*.nuget.props +*.nuget.targets *.nupkg -# The packages folder can be ignored because of Package Restore **/packages/* -# except build/, which is used as an MSBuild target. -!**/packages/build/ -# Uncomment if necessary however generally it will be regenerated when needed -#!**/packages/repositories.config + +# NuGet package restore lockfiles +project.lock.json # Windows Azure Build Output csx/ *.build.csdef -# Windows Azure Emulator -ecf/ -rcf/ - # Windows Store app package directory AppPackages/ -# Visual Studio cache files -# files ending in .cache can be ignored -*.[Cc]ache -# but keep track of directories ending in .cache -!*.[Cc]ache/ - # Others +*.Cache ClientBin/ [Ss]tyle[Cc]op.* ~$* -*~ *.dbmdl *.dbproj.schemaview *.pfx *.publishsettings node_modules/ -orleans.codegen.cs +*.metaproj +*.metaproj.tmp +bin.localpkg/ # RIA/Silverlight projects Generated_Code/ @@ -260,40 +198,76 @@ UpgradeLog*.htm # Microsoft Fakes FakesAssemblies/ -# GhostDoc plugin setting file -*.GhostDoc.xml +### MonoDevelop ### -# Node.js Tools for Visual Studio -.ntvs_analysis.dat +*.pidb +*.userprefs -# Visual Studio 6 build log -*.plg +### Windows ### -# Visual Studio 6 workspace options file -*.opt +# Windows image file caches +Thumbs.db +ehthumbs.db -# Visual Studio LightSwitch build output -**/*.HTMLClient/GeneratedArtifacts -**/*.DesktopClient/GeneratedArtifacts -**/*.DesktopClient/ModelManifest.xml -**/*.Server/GeneratedArtifacts -**/*.Server/ModelManifest.xml -_Pvt_Extensions +# Folder config file +Desktop.ini -# Paket dependency manager -.paket/paket.exe +# Recycle Bin used on file shares +$RECYCLE.BIN/ -# FAKE - F# Make -.fake/ +# Windows Installer files +*.cab +*.msi +*.msm +*.msp -# Exceptions -# Build Scripts -!scripts/build/ -test/PackagedCommands/Consumers/*/project.json +# Windows shortcuts +*.lnk -# Vim swp files -*.swp -*.*~ +### Linux ### + +*~ + +# KDE directory preferences +.directory + +### OSX ### + +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear on external disk +.Spotlight-V100 +.Trashes + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +# vim temporary files +[._]*.s[a-w][a-z] +[._]s[a-w][a-z] +*.un~ +Session.vim +.netrwhist +*~ + +# Visual Studio Code +.vscode/ + +# Private test configuration and binaries. +config.ps1 +**/IISApplications # VS generated files launchSettings.json diff --git a/BuildToolsVersion.txt b/BuildToolsVersion.txt new file mode 100644 index 00000000..7f6d39cc --- /dev/null +++ b/BuildToolsVersion.txt @@ -0,0 +1 @@ +1.0.27-prerelease-01430-03 diff --git a/pkg/DotnetCLIVersion.txt b/DotnetCLIVersion.txt similarity index 100% rename from pkg/DotnetCLIVersion.txt rename to DotnetCLIVersion.txt diff --git a/Microsoft.DotNet.CoreSetup.sln b/Microsoft.DotNet.CoreSetup.sln index 5134469b..5a130798 100644 --- a/Microsoft.DotNet.CoreSetup.sln +++ b/Microsoft.DotNet.CoreSetup.sln @@ -9,31 +9,31 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution NuGet.Config = NuGet.Config EndProjectSection EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "setuptools", "setuptools", "{0722D325-24C8-4E83-B5AF-0A083E7F0749}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "setuptools", "tools-local\setuptools", "{0722D325-24C8-4E83-B5AF-0A083E7F0749}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build_projects", "build_projects", "{88278B81-7649-45DC-8A6A-D3A645C5AFC3}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "src\build", "{88278B81-7649-45DC-8A6A-D3A645C5AFC3}" EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Microsoft.DotNet.Cli.Build.Framework", "build_projects\Microsoft.DotNet.Cli.Build.Framework\Microsoft.DotNet.Cli.Build.Framework.xproj", "{49BEB486-AB5A-4416-91EA-8CD34ABB0C9D}" +Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Microsoft.DotNet.Cli.Build.Framework", "src\build\Microsoft.DotNet.Cli.Build.Framework\Microsoft.DotNet.Cli.Build.Framework.xproj", "{49BEB486-AB5A-4416-91EA-8CD34ABB0C9D}" EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "shared-build-targets-utils", "build_projects\shared-build-targets-utils\shared-build-targets-utils.xproj", "{B768BD29-12BF-4C7C-B093-03193FE244D1}" +Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "shared-build-targets-utils", "src\build\shared-build-targets-utils\shared-build-targets-utils.xproj", "{B768BD29-12BF-4C7C-B093-03193FE244D1}" EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "dotnet-host-build", "build_projects\dotnet-host-build\dotnet-host-build.xproj", "{1DBB7542-0345-4F4B-A84B-3B00B185D416}" +Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "dotnet-host-build", "src\build\dotnet-host-build\dotnet-host-build.xproj", "{1DBB7542-0345-4F4B-A84B-3B00B185D416}" EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "RuntimeGraphGenerator", "setuptools\independent\RuntimeGraphGenerator\RuntimeGraphGenerator.xproj", "{EFC4FE68-83EB-40E4-BFA8-61D0B4626F25}" +Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "RuntimeGraphGenerator", "tools-local\setuptools\independent\RuntimeGraphGenerator\RuntimeGraphGenerator.xproj", "{EFC4FE68-83EB-40E4-BFA8-61D0B4626F25}" EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "update-dependencies", "build_projects\update-dependencies\update-dependencies.xproj", "{A28BD8AC-DF15-4F58-8299-98A9AE2B8726}" +Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "update-dependencies", "src\build\update-dependencies\update-dependencies.xproj", "{A28BD8AC-DF15-4F58-8299-98A9AE2B8726}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{5CE8410C-3100-4F41-8FA9-E6B4132D9703}" EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "HostActivationTests", "test\HostActivationTests\HostActivationTests.xproj", "{386D412C-003C-47B1-8258-0E35865CB7C4}" +Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "HostActivationTests", "src\test\HostActivationTests\HostActivationTests.xproj", "{386D412C-003C-47B1-8258-0E35865CB7C4}" EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "dotnet-deb-tool", "setuptools\dotnet-deb-tool\dotnet-deb-tool.xproj", "{F39F3D8B-B26F-4C77-B08C-D6CA753EE84E}" +Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "dotnet-deb-tool", "tools-local\setuptools\dotnet-deb-tool\dotnet-deb-tool.xproj", "{F39F3D8B-B26F-4C77-B08C-D6CA753EE84E}" EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "TestUtils", "test\TestUtils\TestUtils.xproj", "{42095367-4423-4157-BD31-D1A8E3B823B9}" +Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "TestUtils", "src\test\TestUtils\TestUtils.xproj", "{42095367-4423-4157-BD31-D1A8E3B823B9}" EndProject Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Microsoft.Extensions.DependencyModel", "src\Microsoft.Extensions.DependencyModel\Microsoft.Extensions.DependencyModel.xproj", "{688870C8-9843-4F9E-8576-D39290AD0F25}" EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Microsoft.Extensions.DependencyModel.Tests", "test\Microsoft.Extensions.DependencyModel.Tests\Microsoft.Extensions.DependencyModel.Tests.xproj", "{4A4711D8-4312-49FC-87B5-4F183F4C6A51}" +Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Microsoft.Extensions.DependencyModel.Tests", "src\test\Microsoft.Extensions.DependencyModel.Tests\Microsoft.Extensions.DependencyModel.Tests.xproj", "{4A4711D8-4312-49FC-87B5-4F183F4C6A51}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{FAA448DA-7D1C-4481-915D-5765BF906332}" EndProject diff --git a/NuGet.Config b/NuGet.Config deleted file mode 100644 index c58c246f..00000000 --- a/NuGet.Config +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/README.md b/README.md index 268b3163..209bf7a2 100644 --- a/README.md +++ b/README.md @@ -131,7 +131,7 @@ Daily Builds [linux-arm-symbols-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm.latest-portable.tar.gz [ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Ubuntu_x64_Release_version_badge.svg -[ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.x64.version +[ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.14.04-x64.version [ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu-x64.latest.deb [ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu-x64.latest.deb [ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu-x64.latest.deb @@ -154,7 +154,7 @@ Daily Builds [ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Ubuntu_16_04_x64_Release_version_badge.svg -[ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04.x64.version +[ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04-x64.version [ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb @@ -169,7 +169,7 @@ Daily Builds [ubuntu-16.04-targz-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/dotnet-ubuntu.16.04-x64.latest.tar.gz [ubuntu-16.04-badge-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/sharedfx_Ubuntu_16_04_x64_Release_version_badge.svg -[ubuntu-16.04-version-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/dnvm/latest.sharedfx.ubuntu.16.04.x64.version +[ubuntu-16.04-version-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/dnvm/latest.sharedfx.ubuntu.16.04-x64.version [ubuntu-16.04-host-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-host-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-hostfxr-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-sharedfx-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb @@ -193,7 +193,7 @@ Daily Builds [debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Debian_x64_Release_version_badge.svg -[debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.debian.x64.version +[debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.debian.8-x64.version [debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-debian-x64.latest.deb [debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-debian-x64.latest.deb [debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-debian-x64.latest.deb diff --git a/build.cmd b/build.cmd index d30b6d51..02dbb009 100644 --- a/build.cmd +++ b/build.cmd @@ -1,35 +1,2 @@ -@echo off -setlocal EnableDelayedExpansion - -REM Copyright (c) .NET Foundation and contributors. All rights reserved. -REM Licensed under the MIT license. See LICENSE file in the project root for full license information. - -:Arg_Loop -:: Since the native build requires some configuration information before msbuild is called, we have to do some manual args parsing -if [%1] == [] goto :InvokeBuild -if /i [%1] == [-TargetArch] ( - - if /i [%2] == [arm64] ( - set __BuildArch=x86_amd64 - ) - - if /i [%2] == [arm] ( - set __BuildArch=x86_arm - ) - - if not defined VS140COMNTOOLS ( - echo Error: Visual Studio 2015 required - echo Please see https://github.com/dotnet/corefx/blob/master/Documentation/project-docs/developer-guide.md for build instructions. - exit /b 1 - ) - - call "%VS140COMNTOOLS%\..\..\VC\vcvarsall.bat" !__BuildArch! - goto :InvokeBuild -) - -shift -goto :Arg_Loop - -:InvokeBuild -powershell -NoProfile -NoLogo -Command "%~dp0build_projects\dotnet-host-build\build.ps1 %*; exit $LastExitCode;" -if %errorlevel% neq 0 exit /b %errorlevel% +@call %~dp0run.cmd build %* +@exit /b %ERRORLEVEL% \ No newline at end of file diff --git a/build.proj b/build.proj new file mode 100644 index 00000000..a197353e --- /dev/null +++ b/build.proj @@ -0,0 +1,83 @@ + + + + + + + true + + + + + true + + + + + BatchRestorePackages; + ValidateExactRestore; + CreateOrUpdateCurrentVersionFile; + CreateVersionInfoFile; + BuildCustomTasks; + + + $(TraversalBuildDependencies); + $(TraversalBuildDependsOn); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_allPackagesConfigs Include="$(MSBuildProjectDirectory)\src\**\packages.config"/> + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build.sh b/build.sh index 6f3e92eb..97a99b03 100755 --- a/build.sh +++ b/build.sh @@ -8,6 +8,46 @@ set -e +initHostDistroRid() +{ + if [ "$__HostOS" == "Linux" ]; then + if [ ! -e /etc/os-release ]; then + echo "WARNING: Can not determine runtime id for current distro." + __HostDistroRid="" + else + source /etc/os-release + __HostDistroRid="$ID.$VERSION_ID-$__HostArch" + fi + fi +} + +initTargetDistroRid() +{ + if [ $__CrossBuild == 1 ]; then + if [ "$__BuildOS" == "Linux" ]; then + if [ ! -e $ROOTFS_DIR/etc/os-release ]; then + echo "WARNING: Can not determine runtime id for current distro." + export __DistroRid="" + else + source $ROOTFS_DIR/etc/os-release + export __DistroRid="$ID.$VERSION_ID-$__BuildArch" + fi + fi + else + export __DistroRid="$__HostDistroRid" + fi + + # Portable builds target the base RID + if [ $__PortableBuild == 1 ]; then + if [ "$__BuildOS" == "Linux" ]; then + export __DistroRid="linux-$__BuildArch" + elif [ "$__BuildOS" == "OSX" ]; then + export __DistroRid="osx-$__BuildArch" + fi + fi +} + + SOURCE="${BASH_SOURCE[0]}" while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" @@ -18,40 +58,181 @@ DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" # Some things depend on HOME and it may not be set. We should fix those things, but until then, we just patch a value in if [ -z "$HOME" ] || [ ! -d "$HOME" ]; then - export HOME=$DIR/artifacts/home + export HOME=$DIR/Bin/home [ ! -d "$HOME" ] || rm -Rf $HOME mkdir -p $HOME fi -while [[ $# > 0 ]]; do + +# Use uname to determine what the CPU is. + +CPUName=$(uname -p) + +# Some Linux platforms report unknown for platform, but the arch for machine. + +if [ "$CPUName" == "unknown" ]; then + + CPUName=$(uname -m) + +fi + + + +case $CPUName in + i686) + echo "Unsupported CPU $CPUName detected, build might not succeed!" + __BuildArch=x86 + __HostArch=x86 + ;; + + x86_64) + __BuildArch=x64 + __HostArch=x64 + ;; + + armv7l) + echo "Unsupported CPU $CPUName detected, build might not succeed!" + __BuildArch=arm + __HostArch=arm + ;; + + aarch64) + __BuildArch=arm64 + __HostArch=arm64 + ;; + + *) + echo "Unknown CPU $CPUName detected, configuring as if for x64" + __BuildArch=x64 + __HostArch=x64 + ;; +esac + +# Use uname to determine what the OS is. +OSName=$(uname -s) +case $OSName in + Linux) + __BuildOS=Linux + __HostOS=Linux + ;; + + Darwin) + __BuildOS=OSX + __HostOS=OSX + ;; + + FreeBSD) + __BuildOS=FreeBSD + __HostOS=FreeBSD + ;; + + OpenBSD) + __BuildOS=OpenBSD + __HostOS=OpenBSD + ;; + + NetBSD) + __BuildOS=NetBSD + __HostOS=NetBSD + ;; + + SunOS) + __BuildOS=SunOS + __HostOS=SunOS + ;; + + *) + echo "Unsupported OS $OSName detected, configuring as if for Linux" + __BuildOS=Linux + __HostOS=Linux + ;; +esac + +__BuildType=Debug +__BuildArch=x64 +__IncludeTests=Include_Tests +__VerboseBuild=0 +__CrossBuild=0 +__PortableBuild=0 + +while :; do + if [ $# -le 0 ]; then + break + fi + lowerI="$(echo $1 | awk '{print tolower($0)}')" case $lowerI in - --docker) - export BUILD_IN_DOCKER=1 - export DOCKER_IMAGENAME=$2 - shift + -\?|-h|--help) + usage + exit 1 ;; - *) - args+=( $1 ) + + x86) + __BuildArch=x86 + ;; + + x64) + __BuildArch=x64 + ;; + + arm) + __BuildArch=arm + ;; + + armel) + __BuildArch=armel + ;; + + arm64) + __BuildArch=arm64 + ;; + + debug) + __BuildType=Debug + ;; + + release) + __BuildType=Release + ;; + + cross) + __CrossBuild=1 + ;; + + -portable) + __PortableBuild=1 + ;; + + verbose) + __VerboseBuild=1 + ;; + + skiptests) + __IncludeTests= ;; esac + shift done -# $args array may have empty elements in it. -# The easiest way to remove them is to cast to string and back to array. -temp="${args[@]}" -args=($temp) +# init the host distro name +initHostDistroRid -dockerbuild() -{ - BUILD_COMMAND=/opt/code/build_projects/dotnet-host-build/build.sh $DIR/scripts/dockerrun.sh --non-interactive "$@" -} +# init the target distro name +initTargetDistroRid -# Check if we need to build in docker -if [ ! -z "$BUILD_IN_DOCKER" ]; then - dockerbuild "${args[@]}" -else - $DIR/build_projects/dotnet-host-build/build.sh "${args[@]}" +__RunArgs="-TargetArchitecture=$__BuildArch -ConfigurationGroup=$__BuildType -OSGroup=$__HostOS -DistroRid=$__DistroRid" + +if [ $__PortableBuild == 1 ]; then + __RunArgs="$__RunArgs -PortableBuild=True" fi + +# Configure environment if we are doing a verbose build +if [ $__VerboseBuild == 1 ]; then + export VERBOSE=1 + __RunArgs="$__RunArgs -verbose" +fi + +echo "$__RunArgs" +$DIR/run.sh build $__RunArgs \ No newline at end of file diff --git a/build_projects/dotnet-host-build/CompileTargets.cs b/build_projects/dotnet-host-build/CompileTargets.cs deleted file mode 100644 index 7528b541..00000000 --- a/build_projects/dotnet-host-build/CompileTargets.cs +++ /dev/null @@ -1,544 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Runtime.InteropServices; -using System.Text; -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.DotNet.InternalAbstractions; -using Newtonsoft.Json; -using Newtonsoft.Json.Linq; -using Microsoft.DotNet.Cli.Build; -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; -using static Microsoft.DotNet.Cli.Build.FS; - -namespace Microsoft.DotNet.Host.Build -{ - public class CompileTargets - { - public static readonly bool IsWinx86 = CurrentPlatform.IsWindows && CurrentArchitecture.Isx86; - public const string SharedFrameworkName = "Microsoft.NETCore.App"; - - public static readonly Dictionary HostPackageSupportedRids = new Dictionary() - { - // Key: Current platform RID. Value: The actual publishable (non-dummy) package name produced by the build system for this RID. - { "win7-x64", "win7-x64" }, - { "win7-x86", "win7-x86" }, - { "win8-arm", "win8-arm" }, - { "win10-arm64", "win10-arm64" }, - { "win-x86", "win-x86" }, - { "win-x64", "win-x64" }, - { "win-arm", "win-arm" }, - { "win-arm64", "win-arm64" }, - { "osx.10.12-x64", "osx.10.12-x64" }, - { "osx-x64", "osx-x64"}, - { "linux-x64", "linux-x64" }, - { "ubuntu.14.04-x64", "ubuntu.14.04-x64" }, - { "ubuntu.16.04-x64", "ubuntu.16.04-x64" }, - { "ubuntu.16.10-x64", "ubuntu.16.10-x64" }, - { "ubuntu.14.04-arm", "ubuntu.14.04-arm" }, - { "ubuntu.16.04-arm", "ubuntu.16.04-arm" }, - { "linux-arm", "linux-arm" }, -// { "ubuntu.14.04-arm64", "ubuntu.14.04-arm64" }, -// { "ubuntu.16.04-arm64", "ubuntu.16.04-arm64" }, -// { "linux-arm64", "linux-arm64" }, - { "centos.7-x64", "rhel.7-x64" }, - { "rhel.7-x64", "rhel.7-x64" }, - { "rhel.7.0-x64", "rhel.7-x64" }, - { "rhel.7.1-x64", "rhel.7-x64" }, - { "rhel.7.2-x64", "rhel.7-x64" }, - { "rhel.7.3-x64", "rhel.7-x64" }, - { "debian.8-armel", "debian.8-armel" }, - { "debian.8-x64", "debian.8-x64" }, - { "fedora.24-x64", "fedora.24-x64" }, - { "opensuse.42.1-x64", "opensuse.42.1-x64" }, - { "tizen.4.0.0-armel", "tizen.4.0.0-armel" } - }; - - [Target(nameof(PrepareTargets.Init), - nameof(CompileCoreHost), - nameof(PackagePkgProjects), - nameof(BuildProjectsForNuGetPackages), - nameof(PublishSharedFrameworkAndSharedHost))] - public static BuildTargetResult Compile(BuildTargetContext c) - { - return c.Success(); - } - - private static void GetVersionResourceForAssembly( - string assemblyName, - HostVersion.VerInfo hostVer, - string commitHash, - string tempRcDirectory) - { - var semVer = hostVer.ToString(); - var majorVersion = hostVer.Major; - var minorVersion = hostVer.Minor; - var patchVersion = hostVer.Patch; - var buildNumberMajor = hostVer.VerRsrcBuildMajor; - var buildNumberMinor = hostVer.VerRsrcBuildMinor; - var buildDetails = $"{semVer}, {commitHash} built by: {System.Environment.MachineName}, UTC: {DateTime.UtcNow.ToString()}"; - var rcContent = $@" -#include - -#ifndef VER_COMPANYNAME_STR -#define VER_COMPANYNAME_STR ""Microsoft Corporation"" -#endif -#ifndef VER_FILEDESCRIPTION_STR -#define VER_FILEDESCRIPTION_STR ""{assemblyName}"" -#endif -#ifndef VER_INTERNALNAME_STR -#define VER_INTERNALNAME_STR VER_FILEDESCRIPTION_STR -#endif -#ifndef VER_ORIGINALFILENAME_STR -#define VER_ORIGINALFILENAME_STR VER_FILEDESCRIPTION_STR -#endif -#ifndef VER_PRODUCTNAME_STR -#define VER_PRODUCTNAME_STR ""Microsoft\xae .NET Core Framework""; -#endif -#undef VER_PRODUCTVERSION -#define VER_PRODUCTVERSION {majorVersion},{minorVersion},{patchVersion},{buildNumberMajor} -#undef VER_PRODUCTVERSION_STR -#define VER_PRODUCTVERSION_STR ""{buildDetails}"" -#undef VER_FILEVERSION -#define VER_FILEVERSION {majorVersion},{minorVersion},{patchVersion},{buildNumberMajor} -#undef VER_FILEVERSION_STR -#define VER_FILEVERSION_STR ""{majorVersion},{minorVersion},{buildNumberMajor},{buildNumberMinor},{buildDetails}""; -#ifndef VER_LEGALCOPYRIGHT_STR -#define VER_LEGALCOPYRIGHT_STR ""\xa9 Microsoft Corporation. All rights reserved.""; -#endif -#ifndef VER_DEBUG -#ifdef DEBUG -#define VER_DEBUG VS_FF_DEBUG -#else -#define VER_DEBUG 0 -#endif -#endif -"; - var tempRcHdrDir = Path.Combine(tempRcDirectory, assemblyName); - Mkdirp(tempRcHdrDir); - var tempRcHdrFile = Path.Combine(tempRcHdrDir, "version_info.h"); - File.WriteAllText(tempRcHdrFile, rcContent); - } - - public static string GenerateVersionResource(BuildTargetContext c) - { - if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) - { - return null; - } - - var tempRcDirectory = Path.Combine(Dirs.Intermediate, "hostResourceFiles"); - Rmdir(tempRcDirectory); - Mkdirp(tempRcDirectory); - - var hostVersion = c.BuildContext.Get("HostVersion"); - var commitHash = c.BuildContext.Get("CommitHash"); - foreach (var binary in hostVersion.LatestHostBinaries) - { - GetVersionResourceForAssembly(binary.Key, binary.Value, commitHash, tempRcDirectory); - } - - return tempRcDirectory; - } - - [Target] - public static BuildTargetResult CompileCoreHost(BuildTargetContext c) - { - var hostVersion = c.BuildContext.Get("HostVersion"); - var configuration = c.BuildContext.Get("Configuration"); - string platform = c.BuildContext.Get("Platform"); - string crossEnv = c.BuildContext.Get("Cross"); - bool linkPortable = c.BuildContext.Get("LinkPortable"); - - // Generate build files - var cmakeOut = Path.Combine(Dirs.CorehostLatest, "cmake"); - - Rmdir(cmakeOut); - Mkdirp(cmakeOut); - - // Run the build - string corehostSrcDir = Path.Combine(c.BuildContext.BuildDirectory, "src", "corehost"); - string commitHash = c.BuildContext.Get("CommitHash"); - - if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) - { - // Create .rc files on Windows. - var resourceDir = GenerateVersionResource(c); - - if (configuration.Equals("Release")) - { - // Cmake calls it "RelWithDebInfo" in the generated MSBuild - configuration = "RelWithDebInfo"; - } - - // Why does Windows directly call cmake but Linux/Mac calls "build.sh" in the corehost dir? - // See the comment in "src/corehost/build.sh" for details. It doesn't work for some reason. - List cmakeArgList = new List(); - - string cmakeBaseRid, visualStudio, archMacro, arch; - string cmakeHostVer = $"-DCLI_CMAKE_HOST_VER:STRING={hostVersion.LatestHostVersion.ToString()}"; - string cmakeAppHostVer = $"-DCLI_CMAKE_APPHOST_VER:STRING={hostVersion.LatestAppHostVersion.ToString()}"; - string cmakeHostPolicyVer = $"-DCLI_CMAKE_HOST_POLICY_VER:STRING={hostVersion.LatestHostPolicyVersion.ToString()}"; - string cmakeHostFxrVer = $"-DCLI_CMAKE_HOST_FXR_VER:STRING={hostVersion.LatestHostFxrVersion.ToString()}"; - string cmakeCommitHash = $"-DCLI_CMAKE_COMMIT_HASH:STRING={commitHash}"; - string cmakeResourceDir = $"-DCLI_CMAKE_RESOURCE_DIR:STRING={resourceDir}"; - - switch (platform.ToLower()) - { - case "x86": - cmakeBaseRid = "-DCLI_CMAKE_PKG_RID:STRING=win7-x86"; - visualStudio = "Visual Studio 14 2015"; - archMacro = "-DCLI_CMAKE_PLATFORM_ARCH_I386=1"; - arch = "x86"; - break; - case "arm": - cmakeBaseRid = "-DCLI_CMAKE_PKG_RID:STRING=win8-arm"; - visualStudio = "Visual Studio 14 2015 ARM"; - archMacro = "-DCLI_CMAKE_PLATFORM_ARCH_ARM=1"; - cmakeArgList.Add("-DCMAKE_SYSTEM_VERSION=10.0"); - arch = "arm"; - break; - case "arm64": - cmakeBaseRid = "-DCLI_CMAKE_PKG_RID:STRING=win10-arm64"; - visualStudio = "Visual Studio 14 2015 Win64"; - archMacro = "-DCLI_CMAKE_PLATFORM_ARCH_ARM64=1"; - arch = "arm64"; - if (Environment.GetEnvironmentVariable("__ToolsetDir") == null) - { - throw new Exception("Toolset Dir must be set when the Platform is ARM64"); - } - break; - case "x64": - cmakeBaseRid = "-DCLI_CMAKE_PKG_RID:STRING=win7-x64"; - visualStudio = "Visual Studio 14 2015 Win64"; - archMacro = "-DCLI_CMAKE_PLATFORM_ARCH_AMD64=1"; - arch = "x64"; - break; - default: - throw new PlatformNotSupportedException("Target Architecture: " + platform + " is not currently supported."); - } - - cmakeArgList.Add(corehostSrcDir); - cmakeArgList.Add(archMacro); - cmakeArgList.Add(cmakeHostVer); - cmakeArgList.Add(cmakeAppHostVer); - cmakeArgList.Add(cmakeHostFxrVer); - cmakeArgList.Add(cmakeHostPolicyVer); - cmakeArgList.Add(cmakeBaseRid); - cmakeArgList.Add(cmakeCommitHash); - cmakeArgList.Add(cmakeResourceDir); - cmakeArgList.Add("-G"); - cmakeArgList.Add(visualStudio); - - if (linkPortable) - { - cmakeArgList.Add("-DCLI_CMAKE_PORTABLE_BUILD=1"); - } - - ExecIn(cmakeOut, "cmake", cmakeArgList); - - var pf32 = RuntimeInformation.OSArchitecture == Architecture.X64 ? - Environment.GetEnvironmentVariable("ProgramFiles(x86)") : - Environment.GetEnvironmentVariable("ProgramFiles"); - - string msbuildPath = Path.Combine(pf32, "MSBuild", "14.0", "Bin", "MSBuild.exe"); - string cmakeOutPath = Path.Combine(cmakeOut, "ALL_BUILD.vcxproj"); - string configParameter = $"/p:Configuration={configuration}"; - if (arch == "arm64") - Exec(msbuildPath, cmakeOutPath, configParameter, "/p:useEnv=true"); - else - Exec(msbuildPath, cmakeOutPath, configParameter); - - // Copy the output out - File.Copy(Path.Combine(cmakeOut, "cli", "exe", "dotnet", configuration, "dotnet.exe"), Path.Combine(Dirs.CorehostLatest, "dotnet.exe"), overwrite: true); - File.Copy(Path.Combine(cmakeOut, "cli", "exe", "dotnet", configuration, "dotnet.pdb"), Path.Combine(Dirs.CorehostLatest, "dotnet.pdb"), overwrite: true); - File.Copy(Path.Combine(cmakeOut, "cli", "exe", "apphost", configuration, "apphost.exe"), Path.Combine(Dirs.CorehostLatest, "apphost.exe"), overwrite: true); - File.Copy(Path.Combine(cmakeOut, "cli", "exe", "apphost", configuration, "apphost.pdb"), Path.Combine(Dirs.CorehostLatest, "apphost.pdb"), overwrite: true); - File.Copy(Path.Combine(cmakeOut, "cli", "dll", configuration, "hostpolicy.dll"), Path.Combine(Dirs.CorehostLatest, "hostpolicy.dll"), overwrite: true); - File.Copy(Path.Combine(cmakeOut, "cli", "dll", configuration, "hostpolicy.pdb"), Path.Combine(Dirs.CorehostLatest, "hostpolicy.pdb"), overwrite: true); - File.Copy(Path.Combine(cmakeOut, "cli", "fxr", configuration, "hostfxr.dll"), Path.Combine(Dirs.CorehostLatest, "hostfxr.dll"), overwrite: true); - File.Copy(Path.Combine(cmakeOut, "cli", "fxr", configuration, "hostfxr.pdb"), Path.Combine(Dirs.CorehostLatest, "hostfxr.pdb"), overwrite: true); - } - else - { - string arch; - switch (platform.ToLower()) - { - case "x64": - arch = "x64"; - break; - case "arm": - arch = "arm"; - break; - case "armel": - arch = "armel"; - break; - case "arm64": - arch = "arm64"; - break; - default: - throw new PlatformNotSupportedException("Target Architecture: " + platform + " is not currently supported."); - } - - // Why does Windows directly call cmake but Linux/Mac calls "build.sh" in the corehost dir? - // See the comment in "src/corehost/build.sh" for details. It doesn't work for some reason. - List buildScriptArgList = new List(); - string buildScriptFile = Path.Combine(corehostSrcDir, "build.sh"); - - buildScriptArgList.Add("--configuration"); - buildScriptArgList.Add(configuration); - buildScriptArgList.Add("--arch"); - buildScriptArgList.Add(arch); - buildScriptArgList.Add("--hostver"); - buildScriptArgList.Add(hostVersion.LatestHostVersion.ToString()); - buildScriptArgList.Add("--apphostver"); - buildScriptArgList.Add(hostVersion.LatestAppHostVersion.ToString()); - buildScriptArgList.Add("--fxrver"); - buildScriptArgList.Add(hostVersion.LatestHostFxrVersion.ToString()); - buildScriptArgList.Add("--policyver"); - buildScriptArgList.Add(hostVersion.LatestHostPolicyVersion.ToString()); - buildScriptArgList.Add("--commithash"); - buildScriptArgList.Add(commitHash); - - if (string.Equals(crossEnv, "1")) - { - buildScriptArgList.Add("--cross"); - } - - if (linkPortable) - { - buildScriptArgList.Add("-portable"); - } - - ExecIn(cmakeOut, buildScriptFile, buildScriptArgList); - - // Copy the output out - File.Copy(Path.Combine(cmakeOut, "cli", "exe", "dotnet", "dotnet"), Path.Combine(Dirs.CorehostLatest, "dotnet"), overwrite: true); - File.Copy(Path.Combine(cmakeOut, "cli", "exe", "apphost", "apphost"), Path.Combine(Dirs.CorehostLatest, "apphost"), overwrite: true); - File.Copy(Path.Combine(cmakeOut, "cli", "dll", HostArtifactNames.HostPolicyBaseName), Path.Combine(Dirs.CorehostLatest, HostArtifactNames.HostPolicyBaseName), overwrite: true); - File.Copy(Path.Combine(cmakeOut, "cli", "fxr", HostArtifactNames.DotnetHostFxrBaseName), Path.Combine(Dirs.CorehostLatest, HostArtifactNames.DotnetHostFxrBaseName), overwrite: true); - } - return c.Success(); - } - - [Target] - public static BuildTargetResult BuildProjectsForNuGetPackages(BuildTargetContext c) - { - var configuration = c.BuildContext.Get("Configuration"); - - // build projects for nuget packages - var packagingOutputDir = Path.Combine(Dirs.Intermediate, "forPackaging"); - Mkdirp(packagingOutputDir); - - foreach (var project in PackageTargets.ProjectsToPack) - { - var pathToProjectRoot = Path.Combine(c.BuildContext.BuildDirectory, "src", project); - - foreach (var framework in FilterToBuildableFrameworks(GetFrameworksFromProjectJson(Path.Combine(pathToProjectRoot, "project.json")))) - { - // Just build them, we'll pack later - var packBuildResult = DotNetCli.Stage0.Build( - "--build-base-path", - packagingOutputDir, - "--configuration", - configuration, - "--framework", - framework, - pathToProjectRoot) - .Execute(); - - packBuildResult.EnsureSuccessful(); - } - } - - return c.Success(); - } - - [Target] - public static BuildTargetResult GenerateMSbuildPropsFile(BuildTargetContext c) - { - var buildVersion = c.BuildContext.Get("BuildVersion"); - var hostVersion = c.BuildContext.Get("HostVersion"); - string platform = c.BuildContext.Get("Platform"); - - var msbuildProps = new StringBuilder(); - - msbuildProps.AppendLine(@""); - msbuildProps.AppendLine(" "); - msbuildProps.AppendLine($" {platform}"); - msbuildProps.AppendLine($" {Dirs.CorehostLatest}"); - msbuildProps.AppendLine($" {hostVersion.LatestHostVersion.WithoutSuffix}"); - msbuildProps.AppendLine($" {hostVersion.LatestAppHostVersion.WithoutSuffix}"); - msbuildProps.AppendLine($" {hostVersion.LatestHostFxrVersion.WithoutSuffix}"); - msbuildProps.AppendLine($" {hostVersion.LatestHostPolicyVersion.WithoutSuffix}"); - msbuildProps.AppendLine($" {hostVersion.LatestHostBuildMajor}"); - msbuildProps.AppendLine($" {hostVersion.LatestHostBuildMinor}"); - msbuildProps.AppendLine($" {hostVersion.ReleaseSuffix}"); - msbuildProps.AppendLine($" {hostVersion.EnsureStableVersion}"); - msbuildProps.AppendLine($" {buildVersion.ProductionVersion}"); - msbuildProps.AppendLine(" "); - msbuildProps.AppendLine(""); - - File.WriteAllText(Path.Combine(c.BuildContext.BuildDirectory, "pkg", "version.props"), msbuildProps.ToString()); - - return c.Success(); - } - - [Target(nameof(GenerateMSbuildPropsFile))] - public static BuildTargetResult PackagePkgProjects(BuildTargetContext c) - { - var hostVersion = c.BuildContext.Get("HostVersion"); - var hostNugetversion = hostVersion.LatestHostVersion.ToString(); - var content = $@"{c.BuildContext["CommitHash"]}{Environment.NewLine}{hostNugetversion}{Environment.NewLine}"; - var pkgDir = Path.Combine(c.BuildContext.BuildDirectory, "pkg"); - string rid = HostPackageSupportedRids[c.BuildContext.Get("TargetRID")]; - File.WriteAllText(Path.Combine(pkgDir, "version.txt"), content); - - // Form the path to the script that generates nuget packages. - string buildScriptFile = Path.Combine(pkgDir, "pack.sh"); - List buildScriptArgList = new List(); - - if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) - { - buildScriptFile = Path.Combine(pkgDir, "pack.cmd"); - } - else - { - buildScriptArgList.Add("--rid"); - buildScriptArgList.Add(rid); - } - - bool linkPortable = c.BuildContext.Get("LinkPortable"); - if (linkPortable) - { - buildScriptArgList.Add("-portable"); - } - - Exec(buildScriptFile, buildScriptArgList); - - foreach (var file in Directory.GetFiles(Path.Combine(pkgDir, "bin", "packages"), "*.nupkg")) - { - var fileName = Path.GetFileName(file); - File.Copy(file, Path.Combine(Dirs.CorehostLocalPackages, fileName), true); - - Console.WriteLine($"Copying package {fileName} to artifacts directory {Dirs.CorehostLocalPackages}."); - } - - foreach (var item in hostVersion.LatestHostPackagesToValidate) - { - var fileFilter = $"runtime.{rid}.{item.Key}.{item.Value.ToString()}.nupkg"; - if (Directory.GetFiles(Dirs.CorehostLocalPackages, fileFilter).Length == 0) - { - throw new BuildFailureException($"Nupkg for {fileFilter} was not created."); - } - } - - return c.Success(); - } - - [Target(nameof(PrepareTargets.Init))] - public static BuildTargetResult RestoreLockedCoreHost(BuildTargetContext c) - { - var hostVersion = c.BuildContext.Get("HostVersion"); - var lockedHostFxrVersion = hostVersion.LockedHostFxrVersion.ToString(); - var lockedHostVersion = hostVersion.LockedHostVersion.ToString(); - string currentRid = HostPackageSupportedRids[c.BuildContext.Get("TargetRID")]; - string framework = c.BuildContext.Get("TargetFramework"); - - string projectJson = $@"{{ - ""dependencies"": {{ - ""Microsoft.NETCore.DotNetHostResolver"" : ""{lockedHostFxrVersion}"", - ""Microsoft.NETCore.DotNetHost"" : ""{lockedHostVersion}"", - }}, - ""frameworks"": {{ - ""{framework}"": {{}} - }}, - ""runtimes"": {{ - ""{currentRid}"": {{}} - }} -}}"; - var tempPjDirectory = Path.Combine(Dirs.Intermediate, "lockedHostTemp"); - FS.Rmdir(tempPjDirectory); - Directory.CreateDirectory(tempPjDirectory); - var tempPjFile = Path.Combine(tempPjDirectory, "project.json"); - File.WriteAllText(tempPjFile, projectJson); - - DotNetCli.Stage0.Restore("--verbosity", "verbose", - "--fallbacksource", Dirs.CorehostLocalPackages) - .WorkingDirectory(tempPjDirectory) - .Execute() - .EnsureSuccessful(); - - // Clean out before publishing locked binaries - FS.Rmdir(Dirs.CorehostLocked); - - // Use specific RIDS for non-backward compatible platforms. - DotNetCli.Stage0.Publish("--output", Dirs.CorehostLocked, "--no-build", "-r", currentRid) - .WorkingDirectory(tempPjDirectory) - .Execute() - .EnsureSuccessful(); - - return c.Success(); - } - - [Target(nameof(RestoreLockedCoreHost))] - public static BuildTargetResult PublishSharedFrameworkAndSharedHost(BuildTargetContext c) - { - var outputDir = Dirs.SharedFrameworkPublish; - Utils.DeleteDirectory(outputDir); - Directory.CreateDirectory(outputDir); - - var dotnetCli = DotNetCli.Stage0; - var hostVersion = c.BuildContext.Get("HostVersion"); - string sharedFrameworkNugetVersion = c.BuildContext.Get("SharedFrameworkNugetVersion"); - string sharedFrameworkRid = c.BuildContext.Get("TargetRID"); - string sharedFrameworkTarget = c.BuildContext.Get("TargetFramework"); - var hostFxrVersion = hostVersion.LockedHostFxrVersion.ToString(); - var commitHash = c.BuildContext.Get("CommitHash"); - - var sharedFrameworkPublisher = new SharedFrameworkPublisher( - Dirs.RepoRoot, - Dirs.CorehostLocked, - Dirs.CorehostLatest, - Dirs.CorehostLocalPackages, - sharedFrameworkNugetVersion, - sharedFrameworkRid, - sharedFrameworkTarget); - - sharedFrameworkPublisher.PublishSharedFramework(outputDir, commitHash, dotnetCli, hostFxrVersion); - - sharedFrameworkPublisher.CopyMuxer(outputDir); - sharedFrameworkPublisher.CopyHostFxrToVersionedDirectory(outputDir, hostFxrVersion); - - return c.Success(); - } - - private static IEnumerable FilterToBuildableFrameworks(IEnumerable frameworks) - { - if (CurrentPlatform.IsWindows) - { - return frameworks; - } - - // On non windows platforms, we can not depend on reference assemblies for net4X projects being around, just build netstandard and netcoreapp configurations. - return frameworks.Where(f => f.StartsWith("netstandard", StringComparison.Ordinal) || f.StartsWith("netcoreapp", StringComparison.Ordinal)); - } - - private static IEnumerable GetFrameworksFromProjectJson(string projectJsonPath) - { - using (TextReader projectFileReader = File.OpenText(projectJsonPath)) - { - var projectJsonReader = new JsonTextReader(projectFileReader); - var serializer = new JsonSerializer(); - var project = serializer.Deserialize(projectJsonReader); - - var frameworksSection = project.Value("frameworks"); - foreach (var framework in frameworksSection.Properties()) - { - yield return framework.Name; - } - } - } - } -} diff --git a/build_projects/dotnet-host-build/DebTargets.cs b/build_projects/dotnet-host-build/DebTargets.cs deleted file mode 100644 index 414d12af..00000000 --- a/build_projects/dotnet-host-build/DebTargets.cs +++ /dev/null @@ -1,276 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.IO.Compression; -using System.Runtime.InteropServices; -using Microsoft.DotNet.Cli.Build; -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.DotNet.InternalAbstractions; - -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; - -namespace Microsoft.DotNet.Host.Build -{ - public class DebTargets - { - [Target(nameof(GenerateSharedHostDeb), - nameof(GenerateHostFxrDeb), - nameof(GenerateSharedFrameworkDeb))] - [BuildPlatforms(BuildPlatform.Ubuntu, BuildPlatform.Debian)] - [BuildArchitectures(BuildArchitecture.x64)] - public static BuildTargetResult GenerateDebs(BuildTargetContext c) - { - return c.Success(); - } - - [Target] - [BuildPlatforms(BuildPlatform.Ubuntu, BuildPlatform.Debian)] - public static BuildTargetResult GenerateSharedHostDeb(BuildTargetContext c) - { - // Ubuntu 16.04 Jenkins Machines don't have docker or debian package build tools - // So we need to skip this target if the tools aren't present. - // https://github.com/dotnet/core-setup/issues/167 - if (ShouldSkipBuildDebPackages() || DebuildNotPresent()) - { - c.Info("Debuild not present, skipping target: {nameof(GenerateSharedHostDeb)}"); - return c.Success(); - } - - var packageName = Monikers.GetDebianSharedHostPackageName(c); - var version = c.BuildContext.Get("HostVersion").LockedHostVersion.ToString(); - var inputRoot = c.BuildContext.Get("SharedHostPublishRoot"); - var debFile = c.BuildContext.Get("SharedHostInstallerFile"); - var manPagesDir = Path.Combine(Dirs.RepoRoot, "Documentation", "manpages"); - var debianConfigFile = Path.Combine(Dirs.DebPackagingConfig, "dotnet-sharedhost-debian_config.json"); - - var debianConfigVariables = new Dictionary() - { - { "SHARED_HOST_BRAND_NAME", Monikers.GetSharedHostBrandName(c) } - }; - - var debCreator = new DebPackageCreator( - DotNetCli.Stage0, - Dirs.Intermediate, - dotnetDebToolPackageSource: Dirs.Packages); - - debCreator.CreateDeb( - debianConfigFile, - packageName, - version, - inputRoot, - debianConfigVariables, - debFile, - manPagesDir); - - return c.Success(); - } - - [Target] - [BuildPlatforms(BuildPlatform.Ubuntu, BuildPlatform.Debian)] - public static BuildTargetResult GenerateHostFxrDeb(BuildTargetContext c) - { - // Ubuntu 16.04 Jenkins Machines don't have docker or debian package build tools - // So we need to skip this target if the tools aren't present. - // https://github.com/dotnet/core-setup/issues/167 - if (ShouldSkipBuildDebPackages() || DebuildNotPresent()) - { - c.Info("Debuild not present, skipping target: {nameof(GenerateHostFxrDeb)}"); - return c.Success(); - } - - var hostFxrVersion = c.BuildContext.Get("HostVersion").LockedHostFxrVersion.ToString(); - var packageName = Monikers.GetDebianHostFxrPackageName(hostFxrVersion); - var sharedHostVersion = c.BuildContext.Get("HostVersion").LockedHostVersion.ToString(); - var inputRoot = c.BuildContext.Get("HostFxrPublishRoot"); - var debFile = c.BuildContext.Get("HostFxrInstallerFile"); - var debianConfigFile = Path.Combine(Dirs.DebPackagingConfig, "dotnet-hostfxr-debian_config.json"); - - var debianConfigVariables = new Dictionary() - { - { "HOSTFXR_BRAND_NAME", Monikers.GetHostFxrBrandName(c) }, - { "SHARED_HOST_DEBIAN_VERSION", sharedHostVersion }, - { "HOSTFXR_NUGET_VERSION", hostFxrVersion }, - { "HOSTFXR_DEBIAN_PACKAGE_NAME", packageName } - }; - - var debCreator = new DebPackageCreator( - DotNetCli.Stage0, - Dirs.Intermediate, - dotnetDebToolPackageSource: Dirs.Packages); - - debCreator.CreateDeb( - debianConfigFile, - packageName, - hostFxrVersion, - inputRoot, - debianConfigVariables, - debFile); - - return c.Success(); - } - - [Target(nameof(InstallSharedHost))] - [BuildPlatforms(BuildPlatform.Ubuntu, BuildPlatform.Debian)] - public static BuildTargetResult GenerateSharedFrameworkDeb(BuildTargetContext c) - { - // Ubuntu 16.04 Jenkins Machines don't have docker or debian package build tools - // So we need to skip this target if the tools aren't present. - // https://github.com/dotnet/core-setup/issues/167 - if (ShouldSkipBuildDebPackages() || DebuildNotPresent()) - { - c.Info("Debuild not present, skipping target: {nameof(GenerateSharedFrameworkDeb)}"); - return c.Success(); - } - - var sharedFrameworkNugetVersion = c.BuildContext.Get("SharedFrameworkNugetVersion"); - var packageName = Monikers.GetDebianSharedFrameworkPackageName(sharedFrameworkNugetVersion); - var sharedHostVersion = c.BuildContext.Get("HostVersion").LockedHostVersion.ToString(); - var hostFxrVersion = c.BuildContext.Get("HostVersion").LockedHostFxrVersion.ToString(); - var hostfxrDebianPackageName = Monikers.GetDebianHostFxrPackageName(hostFxrVersion); - var version = c.BuildContext.Get("SharedFrameworkNugetVersion"); - var inputRoot = c.BuildContext.Get("SharedFrameworkPublishRoot"); - var debFile = c.BuildContext.Get("SharedFrameworkInstallerFile"); - var debianConfigFile = Path.Combine(Dirs.DebPackagingConfig, "dotnet-sharedframework-debian_config.json"); - - var debianConfigVariables = new Dictionary() - { - { "SHARED_HOST_DEBIAN_VERSION", sharedHostVersion }, - { "HOSTFXR_DEBIAN_PACKAGE_NAME", hostfxrDebianPackageName}, - { "HOSTFXR_DEBIAN_VERSION", hostFxrVersion }, - { "SHARED_FRAMEWORK_DEBIAN_PACKAGE_NAME", packageName }, - { "SHARED_FRAMEWORK_NUGET_NAME", Monikers.SharedFrameworkName }, - { "SHARED_FRAMEWORK_NUGET_VERSION", c.BuildContext.Get("SharedFrameworkNugetVersion")}, - { "SHARED_FRAMEWORK_BRAND_NAME", Monikers.GetSharedFxBrandName(c) } - }; - - var debCreator = new DebPackageCreator( - DotNetCli.Stage0, - Dirs.Intermediate, - dotnetDebToolPackageSource: Dirs.Packages); - - debCreator.CreateDeb( - debianConfigFile, - packageName, - version, - inputRoot, - debianConfigVariables, - debFile); - - return c.Success(); - } - - [Target(nameof(InstallSharedFramework), - nameof(RemovePackages))] - [BuildPlatforms(BuildPlatform.Ubuntu, BuildPlatform.Debian)] - [BuildArchitectures(BuildArchitecture.x64)] - public static BuildTargetResult TestDebInstaller(BuildTargetContext c) - { - return c.Success(); - } - - [Target] - public static BuildTargetResult InstallSharedHost(BuildTargetContext c) - { - // Ubuntu 16.04 Jenkins Machines don't have docker or debian package build tools - // So we need to skip this target if the tools aren't present. - // https://github.com/dotnet/core-setup/issues/167 - if (ShouldSkipBuildDebPackages() || DebuildNotPresent()) - { - c.Info("Debuild not present, skipping target: {nameof(InstallSharedHost)}"); - return c.Success(); - } - - InstallPackage(c.BuildContext.Get("SharedHostInstallerFile")); - - return c.Success(); - } - - [Target(nameof(InstallSharedHost))] - public static BuildTargetResult InstallHostFxr(BuildTargetContext c) - { - // Ubuntu 16.04 Jenkins Machines don't have docker or debian package build tools - // So we need to skip this target if the tools aren't present. - // https://github.com/dotnet/core-setup/issues/167 - if (ShouldSkipBuildDebPackages() || DebuildNotPresent()) - { - c.Info("Debuild not present, skipping target: {nameof(InstallHostFxr)}"); - return c.Success(); - } - - InstallPackage(c.BuildContext.Get("HostFxrInstallerFile")); - - return c.Success(); - } - - [Target(nameof(InstallHostFxr))] - public static BuildTargetResult InstallSharedFramework(BuildTargetContext c) - { - // Ubuntu 16.04 Jenkins Machines don't have docker or debian package build tools - // So we need to skip this target if the tools aren't present. - // https://github.com/dotnet/core-setup/issues/167 - if (ShouldSkipBuildDebPackages() || DebuildNotPresent()) - { - c.Info("Debuild not present, skipping target: {nameof(InstallSharedFramework)}"); - return c.Success(); - } - - InstallPackage(c.BuildContext.Get("SharedFrameworkInstallerFile")); - - return c.Success(); - } - - [Target] - public static BuildTargetResult RemovePackages(BuildTargetContext c) - { - // Ubuntu 16.04 Jenkins Machines don't have docker or debian package build tools - // So we need to skip this target if the tools aren't present. - // https://github.com/dotnet/core-setup/issues/167 - if (ShouldSkipBuildDebPackages() || DebuildNotPresent()) - { - c.Info("Debuild not present, skipping target: {nameof(RemovePackages)}"); - return c.Success(); - } - - var sharedFrameworkNugetVersion = c.BuildContext.Get("SharedFrameworkNugetVersion"); - var hostFxrVersion = c.BuildContext.Get("HostVersion").LockedHostFxrVersion.ToString(); - - IEnumerable orderedPackageNames = new List() - { - Monikers.GetDebianSharedFrameworkPackageName(sharedFrameworkNugetVersion), - Monikers.GetDebianHostFxrPackageName(hostFxrVersion), - Monikers.GetDebianSharedHostPackageName(c) - }; - - foreach(var packageName in orderedPackageNames) - { - RemovePackage(packageName); - } - - return c.Success(); - } - - private static void InstallPackage(string packagePath) - { - Cmd("sudo", "dpkg", "-i", packagePath) - .Execute() - .EnsureSuccessful(); - } - - private static void RemovePackage(string packageName) - { - Cmd("sudo", "dpkg", "-r", packageName) - .Execute() - .EnsureSuccessful(); - } - - private static bool DebuildNotPresent() - { - return Cmd("/usr/bin/env", "debuild", "-h").Execute().ExitCode != 0; - } - - private static bool ShouldSkipBuildDebPackages() - { - return Environment.GetEnvironmentVariable("DOTNET_BUILD_SKIP_DEB_PACKAGING") == "1"; - } - } -} diff --git a/build_projects/dotnet-host-build/InstallerTargets.cs b/build_projects/dotnet-host-build/InstallerTargets.cs deleted file mode 100644 index c4f64773..00000000 --- a/build_projects/dotnet-host-build/InstallerTargets.cs +++ /dev/null @@ -1,23 +0,0 @@ -using Microsoft.DotNet.Cli.Build.Framework; - -namespace Microsoft.DotNet.Host.Build -{ - public class InstallerTargets - { - [Target(nameof(MsiTargets.GenerateMsis), - nameof(MsiTargets.GenerateBundles), - nameof(PkgTargets.GeneratePkgs), - nameof(DebTargets.GenerateDebs))] - public static BuildTargetResult GenerateInstaller(BuildTargetContext c) - { - return c.Success(); - } - - [Target(nameof(DebTargets.TestDebInstaller))] - public static BuildTargetResult TestInstaller(BuildTargetContext c) - - { - return c.Success(); - } - } -} diff --git a/build_projects/dotnet-host-build/MsiTargets.cs b/build_projects/dotnet-host-build/MsiTargets.cs deleted file mode 100644 index e928a006..00000000 --- a/build_projects/dotnet-host-build/MsiTargets.cs +++ /dev/null @@ -1,263 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.IO.Compression; -using System.Net.Http; -using Microsoft.DotNet.Cli.Build; -using System.Runtime.InteropServices; -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.DotNet.InternalAbstractions; - -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; - -namespace Microsoft.DotNet.Host.Build -{ - public class MsiTargets - { - private const string ENGINE = "engine.exe"; - - private const string WixVersion = "3.10.2"; - - private static string WixRoot - { - get - { - return Path.Combine(Dirs.Output, $"WixTools.{WixVersion}"); - } - } - - private static string HostFxrMsi { get; set; } - - private static string SharedHostMsi { get; set; } - - private static string SharedFrameworkMsi { get; set; } - - private static string SharedFrameworkBundle { get; set; } - - private static string SharedFrameworkEngine { get; set; } - - private static string MsiVersion { get; set; } - - private static string DisplayVersion { get; set; } - - // Processor Architecture of MSI's contents - private static string TargetArch { get; set; } - - // Processor Architecture of MSI itself - private static string MSIBuildArch { get; set; } - - private static void AcquireWix(BuildTargetContext c) - { - if (File.Exists(Path.Combine(WixRoot, "candle.exe"))) - { - return; - } - - Directory.CreateDirectory(WixRoot); - - c.Info("Downloading WixTools.."); - - DownloadFile($"https://dotnetcli.blob.core.windows.net/build/wix/wix.{WixVersion}.zip", Path.Combine(WixRoot, "WixTools.zip")); - - c.Info("Extracting WixTools.."); - ZipFile.ExtractToDirectory(Path.Combine(WixRoot, "WixTools.zip"), WixRoot); - } - - private static void DownloadFile(string uri, string destinationPath) - { - using (var httpClient = new HttpClient()) - { - var getTask = httpClient.GetStreamAsync(uri); - - using (var outStream = File.OpenWrite(destinationPath)) - { - getTask.Result.CopyTo(outStream); - } - } - } - - [Target] - [BuildPlatforms(BuildPlatform.Windows)] - public static BuildTargetResult InitMsi(BuildTargetContext c) - { - - SharedFrameworkBundle = c.BuildContext.Get("CombinedMuxerHostFxrFrameworkInstallerFile"); - SharedHostMsi = Path.ChangeExtension(c.BuildContext.Get("SharedHostInstallerFile"), "msi"); - HostFxrMsi = Path.ChangeExtension(c.BuildContext.Get("HostFxrInstallerFile"), "msi"); - SharedFrameworkMsi = Path.ChangeExtension(c.BuildContext.Get("SharedFrameworkInstallerFile"), "msi"); - SharedFrameworkEngine = GetEngineName(SharedFrameworkBundle); - - var buildVersion = c.BuildContext.Get("BuildVersion"); - MsiVersion = buildVersion.GenerateMsiVersion(); - DisplayVersion = buildVersion.SimpleVersion; - - TargetArch = c.BuildContext.Get("Platform"); - - MSIBuildArch = CurrentArchitecture.Current.ToString(); - - // If we are building the MSI for Arm32 or Arm64, then build it as x86 or x64 for now. - if (String.Compare(TargetArch, "arm", true) == 0) - { - MSIBuildArch = "x86"; - } - else if (String.Compare(TargetArch, "arm64", true) == 0) - { - MSIBuildArch = "x64"; - } - - AcquireWix(c); - return c.Success(); - } - - [Target(nameof(MsiTargets.InitMsi), - nameof(GenerateDotnetSharedHostMsi), - nameof(GenerateDotnetHostFxrMsi), - nameof(GenerateDotnetSharedFrameworkMsi))] - [BuildPlatforms(BuildPlatform.Windows)] - public static BuildTargetResult GenerateMsis(BuildTargetContext c) - { - return c.Success(); - } - - [Target(nameof(MsiTargets.InitMsi), - nameof(GenerateSharedFxBundle))] - [BuildPlatforms(BuildPlatform.Windows)] - public static BuildTargetResult GenerateBundles(BuildTargetContext c) - { - return c.Success(); - } - - [Target] - [BuildPlatforms(BuildPlatform.Windows)] - public static BuildTargetResult GenerateDotnetSharedHostMsi(BuildTargetContext c) - { - var hostVersion = c.BuildContext.Get("HostVersion"); - var hostMsiVersion = hostVersion.LockedHostVersion.GenerateMsiVersion(); - var hostNugetVersion = hostVersion.LockedHostVersion.ToString(); - var inputDir = c.BuildContext.Get("SharedHostPublishRoot"); - var wixObjRoot = Path.Combine(Dirs.Output, "obj", "wix", "sharedhost"); - var sharedHostBrandName = $"'{Monikers.GetSharedHostBrandName(c)}'"; - var upgradeCode = Utils.GenerateGuidFromName(SharedHostMsi).ToString().ToUpper(); - - if (Directory.Exists(wixObjRoot)) - { - Utils.DeleteDirectory(wixObjRoot); - } - Directory.CreateDirectory(wixObjRoot); - - Cmd("powershell", "-NoProfile", "-NoLogo", - Path.Combine(Dirs.RepoRoot, "packaging", "windows", "host", "generatemsi.ps1"), - inputDir, SharedHostMsi, WixRoot, sharedHostBrandName, hostMsiVersion, hostNugetVersion, MSIBuildArch, TargetArch, wixObjRoot, upgradeCode) - .Execute() - .EnsureSuccessful(); - return c.Success(); - } - - [Target] - [BuildPlatforms(BuildPlatform.Windows)] - public static BuildTargetResult GenerateDotnetHostFxrMsi(BuildTargetContext c) - { - var hostVersion = c.BuildContext.Get("HostVersion"); - var hostFxrMsiVersion = hostVersion.LockedHostFxrVersion.GenerateMsiVersion(); - var hostFxrNugetVersion = hostVersion.LockedHostFxrVersion.ToString(); - var inputDir = c.BuildContext.Get("HostFxrPublishRoot"); - var wixObjRoot = Path.Combine(Dirs.Output, "obj", "wix", "hostfxr"); - var hostFxrBrandName = $"'{Monikers.GetHostFxrBrandName(c)}'"; - var upgradeCode = Utils.GenerateGuidFromName(HostFxrMsi).ToString().ToUpper(); - - if (Directory.Exists(wixObjRoot)) - { - Utils.DeleteDirectory(wixObjRoot); - } - Directory.CreateDirectory(wixObjRoot); - - Cmd("powershell", "-NoProfile", "-NoLogo", - Path.Combine(Dirs.RepoRoot, "packaging", "windows", "hostfxr", "generatemsi.ps1"), - inputDir, HostFxrMsi, WixRoot, hostFxrBrandName, hostFxrMsiVersion, hostFxrNugetVersion, MSIBuildArch, TargetArch, wixObjRoot, upgradeCode) - .Execute() - .EnsureSuccessful(); - return c.Success(); - } - - [Target] - [BuildPlatforms(BuildPlatform.Windows)] - public static BuildTargetResult GenerateDotnetSharedFrameworkMsi(BuildTargetContext c) - { - var inputDir = c.BuildContext.Get("SharedFrameworkPublishRoot"); - var sharedFrameworkNuGetName = Monikers.SharedFrameworkName; - var sharedFrameworkNuGetVersion = c.BuildContext.Get("SharedFrameworkNugetVersion"); - var msiVerison = sharedFrameworkNuGetVersion.Split('-')[0]; - var upgradeCode = Utils.GenerateGuidFromName(SharedFrameworkMsi).ToString().ToUpper(); - var wixObjRoot = Path.Combine(Dirs.Output, "obj", "wix", "sharedframework"); - var sharedFxBrandName = $"'{Monikers.GetSharedFxBrandName(c)}'"; - - if (Directory.Exists(wixObjRoot)) - { - Utils.DeleteDirectory(wixObjRoot); - } - Directory.CreateDirectory(wixObjRoot); - - Cmd("powershell", "-NoProfile", "-NoLogo", - Path.Combine(Dirs.RepoRoot, "packaging", "windows", "sharedframework", "generatemsi.ps1"), - inputDir, SharedFrameworkMsi, WixRoot, sharedFxBrandName, msiVerison, sharedFrameworkNuGetName, sharedFrameworkNuGetVersion, upgradeCode, MSIBuildArch, TargetArch, wixObjRoot) - .Execute() - .EnsureSuccessful(); - return c.Success(); - } - - [Target(nameof(MsiTargets.InitMsi))] - [BuildPlatforms(BuildPlatform.Windows)] - public static BuildTargetResult GenerateSharedFxBundle(BuildTargetContext c) - { - var sharedFrameworkNuGetName = Monikers.SharedFrameworkName; - var sharedFrameworkNuGetVersion = c.BuildContext.Get("SharedFrameworkNugetVersion"); - var upgradeCode = Utils.GenerateGuidFromName(SharedFrameworkBundle).ToString().ToUpper(); - var sharedFxBrandName = $"'{Monikers.GetSharedFxBrandName(c)}'"; - - Cmd("powershell", "-NoProfile", "-NoLogo", - Path.Combine(Dirs.RepoRoot, "packaging", "windows", "sharedframework", "generatebundle.ps1"), - SharedFrameworkMsi, SharedHostMsi, HostFxrMsi, SharedFrameworkBundle, WixRoot, sharedFxBrandName, MsiVersion, DisplayVersion, sharedFrameworkNuGetName, sharedFrameworkNuGetVersion, upgradeCode, TargetArch, MSIBuildArch) - .Execute() - .EnsureSuccessful(); - return c.Success(); - } - - private static string GetEngineName(string bundle) - { - var engine = $"{Path.GetFileNameWithoutExtension(bundle)}-{ENGINE}"; - return Path.Combine(Path.GetDirectoryName(bundle), engine); - } - - [Target(nameof(MsiTargets.InitMsi))] - [BuildPlatforms(BuildPlatform.Windows)] - public static BuildTargetResult ExtractEngineFromBundle(BuildTargetContext c) - { - ExtractEngineFromBundleHelper(SharedFrameworkBundle, SharedFrameworkEngine); - return c.Success(); - } - - [Target(nameof(MsiTargets.InitMsi))] - [BuildPlatforms(BuildPlatform.Windows)] - public static BuildTargetResult ReattachEngineToBundle(BuildTargetContext c) - { - ReattachEngineToBundleHelper(SharedFrameworkBundle, SharedFrameworkEngine); - return c.Success(); - } - - private static void ExtractEngineFromBundleHelper(string bundle, string engine) - { - Cmd($"{WixRoot}\\insignia.exe", "-ib", bundle, "-o", engine) - .Execute() - .EnsureSuccessful(); - } - - private static void ReattachEngineToBundleHelper(string bundle, string engine) - { - Cmd($"{WixRoot}\\insignia.exe", "-ab", engine, bundle, "-o", bundle) - .Execute() - .EnsureSuccessful(); - - File.Delete(engine); - } - } -} diff --git a/build_projects/dotnet-host-build/NugetUtil.cs b/build_projects/dotnet-host-build/NugetUtil.cs deleted file mode 100644 index 13a7d30a..00000000 --- a/build_projects/dotnet-host-build/NugetUtil.cs +++ /dev/null @@ -1,59 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Reflection; -using Microsoft.DotNet.Cli.Build.Framework; -using NugetProgram = NuGet.CommandLine.XPlat.Program; - -namespace Microsoft.DotNet.Cli.Build -{ - public static class NuGetUtil - { - [Flags] - public enum NuGetIncludePackageType - { - Standard = 1, - Symbols = 2 - } - public static void PushPackages( - string packageDirPath, - string destinationUrl, - string apiKey, - NuGetIncludePackageType includePackageTypes) - { - List paths = new List(); - if (includePackageTypes.HasFlag(NuGetIncludePackageType.Standard)) - { - paths.AddRange(Directory.GetFiles(packageDirPath, "*.nupkg").Where(p => !p.EndsWith(".symbols.nupkg"))); - } - if (includePackageTypes.HasFlag(NuGetIncludePackageType.Symbols)) - { - paths.AddRange(Directory.GetFiles(packageDirPath, "*.symbols.nupkg")); - } - - foreach (var path in paths) - { - int result = RunNuGetCommand( - "push", - "-s", destinationUrl, - "-k", apiKey, - "--timeout", "3600", - path); - - if (result != 0) - { - throw new BuildFailureException($"NuGet Push failed with exit code '{result}'."); - } - } - } - - private static int RunNuGetCommand(params string[] nugetArgs) - { - var nugetAssembly = typeof(NugetProgram).GetTypeInfo().Assembly; - var mainMethod = nugetAssembly.EntryPoint; - return (int)mainMethod.Invoke(null, new object[] { nugetArgs }); - } - } -} - diff --git a/build_projects/dotnet-host-build/PackageTargets.cs b/build_projects/dotnet-host-build/PackageTargets.cs deleted file mode 100644 index 645c50df..00000000 --- a/build_projects/dotnet-host-build/PackageTargets.cs +++ /dev/null @@ -1,270 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.IO.Compression; -using System.Runtime.InteropServices; -using Microsoft.DotNet.Cli.Build; -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.DotNet.InternalAbstractions; -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; - -namespace Microsoft.DotNet.Host.Build -{ - public static class PackageTargets - { - public static readonly string[] ProjectsToPack = new string[] - { - "Microsoft.DotNet.PlatformAbstractions", - "Microsoft.Extensions.DependencyModel", - }; - - [Target( - nameof(PackageTargets.CopySharedHostLayout), - nameof(PackageTargets.CopyHostFxrLayout), - nameof(PackageTargets.CopySharedFxLayout), - nameof(PackageTargets.CopyCombinedMuxerHostFxrFrameworkLayout))] - public static BuildTargetResult InitPackage(BuildTargetContext c) - { - Directory.CreateDirectory(Dirs.Packages); - return c.Success(); - } - - [Target(nameof(PrepareTargets.Init), - nameof(PackageTargets.InitPackage), - nameof(PackageTargets.GenerateVersionBadge), - nameof(PackageTargets.GenerateCompressedFile), - nameof(InstallerTargets.GenerateInstaller), - nameof(PackageTargets.GenerateNugetPackages), - nameof(InstallerTargets.TestInstaller))] - [Environment("DOTNET_BUILD_SKIP_PACKAGING", null, "0", "false")] - public static BuildTargetResult Package(BuildTargetContext c) - { - return c.Success(); - } - - [Target] - public static BuildTargetResult GenerateVersionBadge(BuildTargetContext c) - { - var sharedFrameworkNugetVersion = c.BuildContext.Get("SharedFrameworkNugetVersion"); - var versionSvg = Path.Combine(Dirs.RepoRoot, "resources", "images", "version_badge.svg"); - var outputVersionSvg = c.BuildContext.Get("VersionBadge"); - - var versionSvgContent = File.ReadAllText(versionSvg); - versionSvgContent = versionSvgContent.Replace("ver_number", sharedFrameworkNugetVersion); - File.WriteAllText(outputVersionSvg, versionSvgContent); - - return c.Success(); - } - - [Target] - public static BuildTargetResult CopySharedHostLayout(BuildTargetContext c) - { - var sharedHostRoot = Path.Combine(Dirs.Output, "obj", "sharedHost"); - if (Directory.Exists(sharedHostRoot)) - { - Utils.DeleteDirectory(sharedHostRoot); - } - - Directory.CreateDirectory(sharedHostRoot); - - foreach (var file in Directory.GetFiles(Dirs.SharedFrameworkPublish, "*", SearchOption.TopDirectoryOnly)) - { - var destFile = file.Replace(Dirs.SharedFrameworkPublish, sharedHostRoot); - File.Copy(file, destFile, true); - c.Warn(destFile); - } - FixPermissions(sharedHostRoot); - - File.Copy( - Path.Combine(Dirs.RepoRoot, "resources", "ThirdPartyNotices.txt"), - Path.Combine(sharedHostRoot, "ThirdPartyNotices.txt")); - - File.Copy( - Path.Combine(Dirs.RepoRoot, "resources", "LICENSE.txt"), - Path.Combine(sharedHostRoot, "LICENSE.txt")); - - c.BuildContext["SharedHostPublishRoot"] = sharedHostRoot; - return c.Success(); - } - - [Target] - public static BuildTargetResult CopyHostFxrLayout(BuildTargetContext c) - { - var hostFxrRoot = Path.Combine(Dirs.Output, "obj", "hostFxr"); - if (Directory.Exists(hostFxrRoot)) - { - Utils.DeleteDirectory(hostFxrRoot); - } - - Directory.CreateDirectory(hostFxrRoot); - - string srcHostDir = Path.Combine(Dirs.SharedFrameworkPublish, "host"); - string destHostDir = Path.Combine(hostFxrRoot, "host"); - - FS.CopyRecursive(srcHostDir, destHostDir); - FixPermissions(hostFxrRoot); - - c.BuildContext["HostFxrPublishRoot"] = hostFxrRoot; - return c.Success(); - } - - [Target] - public static BuildTargetResult CopySharedFxLayout(BuildTargetContext c) - { - var sharedFxRoot = Path.Combine(Dirs.Output, "obj", "sharedFx"); - if (Directory.Exists(sharedFxRoot)) - { - Utils.DeleteDirectory(sharedFxRoot); - } - - Directory.CreateDirectory(sharedFxRoot); - Utils.CopyDirectoryRecursively(Path.Combine(Dirs.SharedFrameworkPublish, "shared"), sharedFxRoot, true); - FixPermissions(sharedFxRoot); - - c.BuildContext["SharedFrameworkPublishRoot"] = sharedFxRoot; - c.BuildContext["SharedFrameworkPublishSymbolsRoot"] = $"{Dirs.SharedFrameworkPublish}.symbols"; - return c.Success(); - } - - [Target] - public static BuildTargetResult CopyCombinedMuxerHostFxrFrameworkLayout(BuildTargetContext c) - { - var combinedRoot = Path.Combine(Dirs.Output, "obj", "combined-framework-host"); - if (Directory.Exists(combinedRoot)) - { - Utils.DeleteDirectory(combinedRoot); - } - Directory.CreateDirectory(combinedRoot); - - string sharedFrameworkPublishRoot = c.BuildContext.Get("SharedFrameworkPublishRoot"); - Utils.CopyDirectoryRecursively(sharedFrameworkPublishRoot, combinedRoot); - - string sharedHostPublishRoot = c.BuildContext.Get("SharedHostPublishRoot"); - Utils.CopyDirectoryRecursively(sharedHostPublishRoot, combinedRoot); - - string hostFxrPublishRoot = c.BuildContext.Get("HostFxrPublishRoot"); - Utils.CopyDirectoryRecursively(hostFxrPublishRoot, combinedRoot); - - c.BuildContext["CombinedMuxerHostFxrFrameworkPublishRoot"] = combinedRoot; - return c.Success(); - } - - [Target(nameof(PackageTargets.GenerateZip), nameof(PackageTargets.GenerateTarBall))] - public static BuildTargetResult GenerateCompressedFile(BuildTargetContext c) - { - return c.Success(); - } - - [Target(nameof(PackageTargets.InitPackage))] - [BuildPlatforms(BuildPlatform.Windows)] - public static BuildTargetResult GenerateZip(BuildTargetContext c) - { - CreateZipFromDirectory( - c.BuildContext.Get("CombinedMuxerHostFxrFrameworkPublishRoot"), - c.BuildContext.Get("CombinedMuxerHostFxrFrameworkCompressedFile")); - - CreateZipFromDirectory( - c.BuildContext.Get("HostFxrPublishRoot"), - c.BuildContext.Get("HostFxrCompressedFile")); - - CreateZipFromDirectory( - c.BuildContext.Get("SharedFrameworkPublishRoot"), - c.BuildContext.Get("SharedFrameworkCompressedFile")); - - CreateZipFromDirectory( - c.BuildContext.Get("SharedFrameworkPublishSymbolsRoot"), - c.BuildContext.Get("SharedFrameworkSymbolsCompressedFile")); - - return c.Success(); - } - - [Target(nameof(PackageTargets.InitPackage))] - [BuildPlatforms(BuildPlatform.Unix)] - public static BuildTargetResult GenerateTarBall(BuildTargetContext c) - { - CreateTarBallFromDirectory( - c.BuildContext.Get("CombinedMuxerHostFxrFrameworkPublishRoot"), - c.BuildContext.Get("CombinedMuxerHostFxrFrameworkCompressedFile")); - - CreateTarBallFromDirectory( - c.BuildContext.Get("HostFxrPublishRoot"), - c.BuildContext.Get("HostFxrCompressedFile")); - - CreateTarBallFromDirectory( - c.BuildContext.Get("SharedFrameworkPublishRoot"), - c.BuildContext.Get("SharedFrameworkCompressedFile")); - - CreateTarBallFromDirectory( - c.BuildContext.Get("SharedFrameworkPublishSymbolsRoot"), - c.BuildContext.Get("SharedFrameworkSymbolsCompressedFile")); - - return c.Success(); - } - - [Target] - public static BuildTargetResult GenerateNugetPackages(BuildTargetContext c) - { - var versionSuffix = c.BuildContext.Get("BuildVersion").CommitCountString; - var configuration = c.BuildContext.Get("Configuration"); - - var dotnet = DotNetCli.Stage0; - - var packagingBuildBasePath = Path.Combine(Dirs.Intermediate, "forPackaging"); - - FS.Mkdirp(Dirs.Packages); - - foreach (var projectName in ProjectsToPack) - { - var projectFile = Path.Combine(Dirs.RepoRoot, "src", projectName, "project.json"); - - dotnet.Pack( - projectFile, - "--no-build", - "--serviceable", - "--build-base-path", packagingBuildBasePath, - "--output", Dirs.Packages, - "--configuration", configuration, - "--version-suffix", versionSuffix) - .Execute() - .EnsureSuccessful(); - } - - return c.Success(); - } - - private static void CreateZipFromDirectory(string directory, string artifactPath) - { - if (File.Exists(artifactPath)) - { - File.Delete(artifactPath); - } - - ZipFile.CreateFromDirectory(directory, artifactPath, CompressionLevel.Optimal, false); - } - - private static void CreateTarBallFromDirectory(string directory, string artifactPath) - { - if (File.Exists(artifactPath)) - { - File.Delete(artifactPath); - } - - Cmd("tar", "-czf", artifactPath, "-C", directory, ".") - .Execute() - .EnsureSuccessful(); - } - - private static void FixPermissions(string directory) - { - if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) - { - // Reset everything to user readable/writeable and group and world readable. - FS.ChmodAll(directory, "*", "644"); - - // Now make things that should be executable, executable. - FS.FixModeFlags(directory); - } - } - } -} diff --git a/build_projects/dotnet-host-build/PkgTargets.cs b/build_projects/dotnet-host-build/PkgTargets.cs deleted file mode 100644 index eaee0fc8..00000000 --- a/build_projects/dotnet-host-build/PkgTargets.cs +++ /dev/null @@ -1,163 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.IO.Compression; -using System.Runtime.InteropServices; -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.DotNet.InternalAbstractions; -using Microsoft.DotNet.Cli.Build; - -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; - -namespace Microsoft.DotNet.Host.Build -{ - public class PkgTargets - { - public static string PkgsIntermediateDir { get; set; } - public static string SharedHostComponentId { get; set; } - public static string SharedFxComponentId { get; set; } - public static string HostFxrComponentId { get; set; } - public static string SharedFxPkgId { get; set; } - public static string SharedFrameworkNugetVersion { get; set; } - public static string CLISdkComponentId { get; set; } - public static string CLISdkPkgId { get; set; } - public static string CLISdkNugetVersion { get; set; } - - [Target] - [BuildPlatforms(BuildPlatform.OSX)] - public static BuildTargetResult InitPkg(BuildTargetContext c) - { - PkgsIntermediateDir = Path.Combine(Dirs.Packages, "intermediate"); - Directory.CreateDirectory(PkgsIntermediateDir); - - SharedHostComponentId = $"com.microsoft.dotnet.sharedhost.component.osx.x64"; - - string hostFxrVersion = c.BuildContext.Get("HostVersion").LockedHostFxrVersion.ToString(); - HostFxrComponentId = $"com.microsoft.dotnet.hostfxr.{hostFxrVersion}.component.osx.x64"; - - string sharedFrameworkNugetName = Monikers.SharedFrameworkName; - SharedFrameworkNugetVersion = c.BuildContext.Get("SharedFrameworkNugetVersion"); - SharedFxComponentId = $"com.microsoft.dotnet.sharedframework.{sharedFrameworkNugetName}.{SharedFrameworkNugetVersion}.component.osx.x64"; - SharedFxPkgId = $"com.microsoft.dotnet.{sharedFrameworkNugetName}.{SharedFrameworkNugetVersion}.osx.x64"; - - return c.Success(); - } - - [Target(nameof(InitPkg), nameof(GenerateSharedFrameworkProductArchive))] - [BuildPlatforms(BuildPlatform.OSX)] - public static BuildTargetResult GeneratePkgs(BuildTargetContext c) - { - return c.Success(); - } - - [Target(nameof(GenerateSharedFrameworkPkg), nameof(GenerateSharedHostPkg), nameof(GenerateHostFxrPkg))] - [BuildPlatforms(BuildPlatform.OSX)] - public static BuildTargetResult GenerateSharedFrameworkProductArchive(BuildTargetContext c) - { - string resourcePath = Path.Combine(Dirs.RepoRoot, "packaging", "osx", "sharedframework", "resources"); - string outFilePath = Path.Combine(PkgsIntermediateDir, c.BuildContext.Get("CombinedMuxerHostFxrFrameworkInstallerFile")); - - string inputDistTemplatePath = Path.Combine( - Dirs.RepoRoot, - "packaging", - "osx", - "sharedframework", - "shared-framework-distribution-template.xml"); - string distTemplate = File.ReadAllText(inputDistTemplatePath); - string distributionPath = Path.Combine(PkgsIntermediateDir, "shared-framework-formatted-distribution.xml"); - string formattedDistContents = - distTemplate.Replace("{SharedFxComponentId}", SharedFxComponentId) - .Replace("{SharedHostComponentId}", SharedHostComponentId) - .Replace("{HostFxrComponentId}", HostFxrComponentId) - .Replace("{SharedFrameworkNugetName}", Monikers.SharedFrameworkName) - .Replace("{SharedFrameworkNugetVersion}", SharedFrameworkNugetVersion) - .Replace("{SharedFxBrandName}", Monikers.GetSharedFxBrandName(c)) - .Replace("{SharedHostBrandName}", Monikers.GetSharedHostBrandName(c)) - .Replace("{HostFxrBrandName}", Monikers.GetHostFxrBrandName(c)); - File.WriteAllText(distributionPath, formattedDistContents); - - Cmd("productbuild", - "--version", SharedFrameworkNugetVersion, - "--identifier", SharedFxPkgId, - "--package-path", PkgsIntermediateDir, - "--resources", resourcePath, - "--distribution", distributionPath, - outFilePath) - .Execute() - .EnsureSuccessful(); - - return c.Success(); - } - - [Target] - [BuildPlatforms(BuildPlatform.OSX)] - public static BuildTargetResult GenerateSharedFrameworkPkg(BuildTargetContext c) - { - string outFilePath = Path.Combine(PkgsIntermediateDir, SharedFxComponentId + ".pkg"); - string installLocation = "/usr/local/share/dotnet"; - string scriptsLocation = Path.Combine(Dirs.RepoRoot, "packaging", "osx", "sharedframework", "scripts"); - - Cmd("pkgbuild", - "--root", c.BuildContext.Get("SharedFrameworkPublishRoot"), - "--identifier", SharedFxComponentId, - "--version", SharedFrameworkNugetVersion, - "--install-location", installLocation, - "--scripts", scriptsLocation, - outFilePath) - .Execute() - .EnsureSuccessful(); - - File.Copy(outFilePath, c.BuildContext.Get("SharedFrameworkInstallerFile"), true); - - return c.Success(); - } - - [Target] - [BuildPlatforms(BuildPlatform.OSX)] - public static BuildTargetResult GenerateSharedHostPkg(BuildTargetContext c) - { - string version = c.BuildContext.Get("HostVersion").LockedHostVersion.ToString(); - string outFilePath = Path.Combine(PkgsIntermediateDir, SharedHostComponentId + ".pkg"); - string installLocation = "/usr/local/share/dotnet"; - string scriptsLocation = Path.Combine(Dirs.RepoRoot, "packaging", "osx", "sharedhost", "scripts"); - - Cmd("pkgbuild", - "--root", c.BuildContext.Get("SharedHostPublishRoot"), - "--identifier", SharedHostComponentId, - "--version", version, - "--install-location", installLocation, - "--scripts", scriptsLocation, - outFilePath) - .Execute() - .EnsureSuccessful(); - - File.Copy(outFilePath, c.BuildContext.Get("SharedHostInstallerFile"), true); - - return c.Success(); - } - - [Target] - [BuildPlatforms(BuildPlatform.OSX)] - public static BuildTargetResult GenerateHostFxrPkg(BuildTargetContext c) - { - string hostFxrVersion = c.BuildContext.Get("HostVersion").LockedHostFxrVersion.ToString(); - string outFilePath = Path.Combine(PkgsIntermediateDir, HostFxrComponentId + ".pkg"); - string installLocation = "/usr/local/share/dotnet"; - string scriptsLocation = Path.Combine(Dirs.RepoRoot, "packaging", "osx", "hostfxr", "scripts"); - - Cmd("pkgbuild", - "--root", c.BuildContext.Get("HostFxrPublishRoot"), - "--identifier", HostFxrComponentId, - "--version", hostFxrVersion, - "--install-location", installLocation, - "--scripts", scriptsLocation, - outFilePath) - .Execute() - .EnsureSuccessful(); - - File.Copy(outFilePath, c.BuildContext.Get("HostFxrInstallerFile"), true); - - return c.Success(); - } - } -} diff --git a/build_projects/dotnet-host-build/PrepareTargets.cs b/build_projects/dotnet-host-build/PrepareTargets.cs deleted file mode 100644 index 344fce5b..00000000 --- a/build_projects/dotnet-host-build/PrepareTargets.cs +++ /dev/null @@ -1,442 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Runtime.InteropServices; -using System.Text; -using System.Text.RegularExpressions; -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.DotNet.InternalAbstractions; -using Newtonsoft.Json.Linq; -using Microsoft.DotNet.Cli.Build; -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; -using static Microsoft.DotNet.Cli.Build.FS; -using static Microsoft.DotNet.Cli.Build.Utils; - -namespace Microsoft.DotNet.Host.Build -{ - public class PrepareTargets - { - [Target(nameof(Init))] - public static BuildTargetResult Prepare(BuildTargetContext c) => c.Success(); - - [Target(nameof(CheckPrereqCmakePresent), nameof(CheckPlatformDependencies))] - public static BuildTargetResult CheckPrereqs(BuildTargetContext c) => c.Success(); - - [Target(nameof(CheckCoreclrPlatformDependencies))] - public static BuildTargetResult CheckPlatformDependencies(BuildTargetContext c) => c.Success(); - - [Target(nameof(CheckUbuntuCoreclrAndCoreFxDependencies), nameof(CheckCentOSCoreclrAndCoreFxDependencies))] - public static BuildTargetResult CheckCoreclrPlatformDependencies(BuildTargetContext c) => c.Success(); - - // All major targets will depend on this in order to ensure variables are set up right if they are run independently. - // The targets listed below are executed before Init Target is invoked. - [Target( - nameof(CommonInit), - nameof(SetNuGetPackagesDir), - nameof(GenerateVersions), - nameof(CheckPrereqs), - nameof(LocateStage0), - nameof(ExpectedBuildArtifacts), - nameof(RestorePackages), - nameof(PackDotnetDebTool))] - public static BuildTargetResult Init(BuildTargetContext c) - { - string platformEnv = c.BuildContext.Get("Platform"); - - string targetFramework = Environment.GetEnvironmentVariable("TARGETFRAMEWORK") ?? "netcoreapp2.0"; - - string crossEnv = Environment.GetEnvironmentVariable("CROSS") ?? "0"; - if (string.Equals(crossEnv, "1")) - { - string rootfsDir = Environment.GetEnvironmentVariable("ROOTFS_DIR"); - if (string.IsNullOrEmpty(rootfsDir)) - { - rootfsDir = Path.Combine(Dirs.RepoRoot, "cross", "rootfs", platformEnv); - Environment.SetEnvironmentVariable("ROOTFS_DIR", rootfsDir); - } - } - - c.BuildContext["Channel"] = Environment.GetEnvironmentVariable("CHANNEL"); - - c.BuildContext["TargetFramework"] = targetFramework; - c.BuildContext["Cross"] = crossEnv; - - bool linkPortable = c.BuildContext.Get("LinkPortable"); - string targetRID = c.BuildContext.Get("TargetRID"); - - c.Info($"Building {c.BuildContext["Configuration"]} to: {Dirs.Output}"); - c.Info("Build Environment:"); - c.Info($" Operating System: {RuntimeEnvironment.OperatingSystem} {RuntimeEnvironment.OperatingSystemVersion}"); - c.Info($" Platform: " + platformEnv); - c.Info($" Cross Build: " + int.Parse(crossEnv)); - c.Info($" Portable Linking: " + linkPortable); - c.Info($" TargetRID: " + targetRID); - - return c.Success(); - } - - private static string GetPortablePlatformForRID(string targetRID) - { - if (targetRID.StartsWith("win")) - return "win"; - - if (targetRID.StartsWith("osx")) - return "osx"; - - // Everything else is "linux" - return "linux"; - } - - [Target] - public static BuildTargetResult CommonInit(BuildTargetContext c) - { - string platformEnv = Environment.GetEnvironmentVariable("TARGETPLATFORM") ?? RuntimeEnvironment.RuntimeArchitecture.ToString(); - - var configEnv = Environment.GetEnvironmentVariable("CONFIGURATION"); - if (string.IsNullOrEmpty(configEnv)) - { - configEnv = "Debug"; - } - c.BuildContext["Configuration"] = configEnv; - - string targetRID = Environment.GetEnvironmentVariable("TARGETRID"); - string realTargetRID = targetRID; - if (targetRID == null) - { - targetRID = RuntimeEnvironment.GetRuntimeIdentifier(); - realTargetRID = targetRID; - - // Question: Why do we perform this translation? Utilities (e.g. Dirs.cs) do not account for this. - if (targetRID.StartsWith("win") && (targetRID.EndsWith("x86") || targetRID.EndsWith("x64"))) - { - targetRID = $"win7-{RuntimeEnvironment.RuntimeArchitecture}"; - } - } - - string szLinkPortable = Environment.GetEnvironmentVariable("DOTNET_BUILD_LINK_PORTABLE")?? "0"; - bool linkPortable = (int.Parse(szLinkPortable) == 1)?true:false; - if (linkPortable) - { - string ridPortablePlatform = GetPortablePlatformForRID(targetRID); - targetRID = $"{ridPortablePlatform}-{platformEnv}"; - realTargetRID = targetRID; - - // Update/set the TARGETRID environment variable that will be used by various parts of the build - Environment.SetEnvironmentVariable("TARGETRID", targetRID); - } - - - c.BuildContext["TargetRID"] = targetRID; - - // Save the RID that will be used to create the RID specific subfolder under artifacts folder. - // See Dirs.cs for details. - c.BuildContext["ArtifactsTargetRID"] = realTargetRID; - c.BuildContext["LinkPortable"] = linkPortable; - c.BuildContext["Platform"] = platformEnv; - - return c.Success(); - } - - [Target] - public static BuildTargetResult SetNuGetPackagesDir(BuildTargetContext c) - { - Environment.SetEnvironmentVariable("NUGET_PACKAGES", Dirs.NuGetPackages); - - return c.Success(); - } - - [Target] - [BuildPlatforms(BuildPlatform.Ubuntu, BuildPlatform.Debian)] - public static BuildTargetResult PackDotnetDebTool(BuildTargetContext c) - { - var dotnet = DotNetCli.Stage0; - var versionSuffix = c.BuildContext.Get("BuildVersion").VersionSuffix; - - dotnet.Pack( - Path.Combine(Dirs.RepoRoot, "setuptools", "dotnet-deb-tool", "project.json"), - "--output", Dirs.PackagesIntermediate, - "--version-suffix", versionSuffix) - .Execute() - .EnsureSuccessful(); - - var packageFiles = Directory.EnumerateFiles(Dirs.PackagesIntermediate, "dotnet-deb-tool.*.nupkg"); - - foreach (var packageFile in packageFiles) - { - if (!packageFile.EndsWith(".symbols.nupkg")) - { - var destinationPath = Path.Combine(Dirs.Packages, Path.GetFileName(packageFile)); - File.Copy(packageFile, destinationPath, overwrite: true); - } - } - - return c.Success(); - } - - [Target] - public static BuildTargetResult GenerateVersions(BuildTargetContext c) - { - var commitCount = GitUtils.GetCommitCount(); - - var commitHash = GitUtils.GetCommitHash(); - - var branchInfo = new BranchInfo(Dirs.RepoRoot); - - // Read details from branchinfo.txt for our build configuration - int iMajor = int.Parse(branchInfo.Entries["MAJOR_VERSION"]); - int iMinor = int.Parse(branchInfo.Entries["MINOR_VERSION"]); - int iPatch = int.Parse(branchInfo.Entries["PATCH_VERSION"]); - string sReleaseSuffix = branchInfo.Entries["RELEASE_SUFFIX"]; - bool fStabilizePackageVersion = bool.Parse(branchInfo.Entries["STABILIZE_PACKAGE_VERSION"]); - bool fLockHostVersion = bool.Parse(branchInfo.Entries["LOCK_HOST_VERSION"]); - - var hostVersion = new HostVersion() - { - Major = iMajor, - Minor = iMinor, - Patch = iPatch, - ReleaseSuffix = sReleaseSuffix, - EnsureStableVersion = fStabilizePackageVersion, - IsLocked = fLockHostVersion, - CommitCount = commitCount - }; - - var buildVersion = new BuildVersion() - { - Major = iMajor, - Minor = iMinor, - Patch = iPatch, - ReleaseSuffix = sReleaseSuffix, - CommitCount = commitCount - }; - - c.BuildContext["BuildVersion"] = buildVersion; - c.BuildContext["HostVersion"] = hostVersion; - c.BuildContext["CommitHash"] = commitHash; - c.BuildContext["BranchName"] = branchInfo.Entries["BRANCH_NAME"]; - - // Define the version string to be used based upon whether we are stabilizing the versions or not. - if (!fStabilizePackageVersion) - c.BuildContext["SharedFrameworkNugetVersion"] = buildVersion.NetCoreAppVersion; - else - c.BuildContext["SharedFrameworkNugetVersion"] = buildVersion.ProductionVersion; - - c.Info($"Building Version: {hostVersion.LatestHostVersion.WithoutSuffix} (NuGet Packages: {hostVersion.LatestHostVersion})"); - c.Info($"From Commit: {commitHash}"); - - return c.Success(); - } - - [Target] - public static BuildTargetResult LocateStage0(BuildTargetContext c) - { - // We should have been run in the repo root, so locate the stage 0 relative to current directory - var stage0 = DotNetCli.Stage0.BinPath; - - if (!Directory.Exists(stage0)) - { - return c.Failed($"Stage 0 directory does not exist: {stage0}"); - } - - // Identify the version - string versionFile = Directory.GetFiles(stage0, ".version", SearchOption.AllDirectories).FirstOrDefault(); - - if (string.IsNullOrEmpty(versionFile)) - { - throw new Exception($"'.version' file not found in '{stage0}' folder"); - } - - var version = File.ReadAllLines(versionFile); - c.Info($"Using Stage 0 Version: {version[1]}"); - - return c.Success(); - } - - [Target] - public static BuildTargetResult ExpectedBuildArtifacts(BuildTargetContext c) - { - var config = c.BuildContext.Get("Configuration"); - var versionBadgeName = $"sharedfx_{Monikers.GetBadgeMoniker(c)}_{config}_version_badge.svg"; - c.BuildContext["VersionBadge"] = Path.Combine(Dirs.Output, versionBadgeName); - - var sharedFrameworkVersion = c.BuildContext.Get("SharedFrameworkNugetVersion"); - var hostVersion = c.BuildContext.Get("HostVersion").LockedHostVersion.ToString(); - var hostFxrVersion = c.BuildContext.Get("HostVersion").LockedHostFxrVersion.ToString(); - - AddInstallerArtifactToContext(c, "dotnet-host", "SharedHost", hostVersion); - AddInstallerArtifactToContext(c, "dotnet-hostfxr", "HostFxr", hostFxrVersion); - AddInstallerArtifactToContext(c, "dotnet-sharedframework", "SharedFramework", sharedFrameworkVersion); - AddInstallerArtifactToContext(c, "dotnet-sharedframework-symbols", "SharedFrameworkSymbols", sharedFrameworkVersion); - AddInstallerArtifactToContext(c, "dotnet", "CombinedMuxerHostFxrFramework", sharedFrameworkVersion); - - return c.Success(); - } - - private static void AddInstallerArtifactToContext( - BuildTargetContext c, - string artifactPrefix, - string contextPrefix, - string version) - { - var productName = Monikers.GetProductMoniker(c, artifactPrefix, version); - bool linkPortable = c.BuildContext.Get("LinkPortable"); - if (linkPortable) - { - // If we are building portable binaries, then reflect the same in the installer binary name as well. - productName = productName+"-portable"; - } - - var extension = CurrentPlatform.IsWindows ? ".zip" : ".tar.gz"; - c.BuildContext[contextPrefix + "CompressedFile"] = Path.Combine(Dirs.Packages, productName + extension); - - string installer = ""; - switch (CurrentPlatform.Current) - { - case BuildPlatform.Windows: - if (contextPrefix.Contains("Combined")) - { - installer = productName + ".exe"; - } - else - { - installer = productName + ".msi"; - } - break; - case BuildPlatform.OSX: - installer = productName + ".pkg"; - break; - case BuildPlatform.Ubuntu: - case BuildPlatform.Debian: - installer = productName + ".deb"; - break; - default: - break; - } - - if (!string.IsNullOrEmpty(installer)) - { - c.BuildContext[contextPrefix + "InstallerFile"] = Path.Combine(Dirs.Packages, installer); - } - } - - [Target] - [BuildPlatforms(BuildPlatform.Ubuntu, "14.04")] - public static BuildTargetResult CheckUbuntuCoreclrAndCoreFxDependencies(BuildTargetContext c) - { - var errorMessageBuilder = new StringBuilder(); - var stage0 = DotNetCli.Stage0.BinPath; - - foreach (var package in PackageDependencies.UbuntuCoreclrAndCoreFxDependencies) - { - if (!AptDependencyUtility.PackageIsInstalled(package)) - { - errorMessageBuilder.Append($"Error: Coreclr package dependency {package} missing."); - errorMessageBuilder.Append(Environment.NewLine); - errorMessageBuilder.Append($"-> install with apt-get install {package}"); - errorMessageBuilder.Append(Environment.NewLine); - } - } - - if (errorMessageBuilder.Length == 0) - { - return c.Success(); - } - else - { - return c.Failed(errorMessageBuilder.ToString()); - } - } - - [Target] - [BuildPlatforms(BuildPlatform.CentOS)] - public static BuildTargetResult CheckCentOSCoreclrAndCoreFxDependencies(BuildTargetContext c) - { - var errorMessageBuilder = new StringBuilder(); - - foreach (var package in PackageDependencies.CentosCoreclrAndCoreFxDependencies) - { - if (!YumDependencyUtility.PackageIsInstalled(package)) - { - errorMessageBuilder.Append($"Error: Coreclr package dependency {package} missing."); - errorMessageBuilder.Append(Environment.NewLine); - errorMessageBuilder.Append($"-> install with yum install {package}"); - errorMessageBuilder.Append(Environment.NewLine); - } - } - - if (errorMessageBuilder.Length == 0) - { - return c.Success(); - } - else - { - return c.Failed(errorMessageBuilder.ToString()); - } - } - - [Target] - public static BuildTargetResult RestorePackages(BuildTargetContext c) - { - var dotnet = DotNetCli.Stage0; - - dotnet.Restore("--verbosity", "verbose", "--disable-parallel") - .WorkingDirectory(Path.Combine(c.BuildContext.BuildDirectory, "setuptools", "dotnet-deb-tool")) - .Execute() - .EnsureSuccessful(); - - var independentToolsRoot = Path.Combine(c.BuildContext.BuildDirectory, "setuptools", "independent"); - - foreach (string templateFile in Directory.GetFiles(independentToolsRoot, "project.json.template", SearchOption.AllDirectories)) - { - string projectJsonFile = Path.Combine(Path.GetDirectoryName(templateFile), "project.json"); - File.WriteAllText(projectJsonFile, File.ReadAllText(templateFile).Replace("{RID}", RuntimeEnvironment.GetRuntimeIdentifier())); - } - - dotnet.Restore("--verbosity", "verbose", "--disable-parallel") - .WorkingDirectory(Path.Combine(c.BuildContext.BuildDirectory, "setuptools", "independent")) - .Execute() - .EnsureSuccessful(); - - dotnet.Restore("--verbosity", "verbose", "--disable-parallel") - .WorkingDirectory(Path.Combine(c.BuildContext.BuildDirectory, "src")) - .Execute() - .EnsureSuccessful(); - - return c.Success(); - } - - [Target] - public static BuildTargetResult CheckPrereqCmakePresent(BuildTargetContext c) - { - try - { - Command.Create("cmake", "--version") - .CaptureStdOut() - .CaptureStdErr() - .Execute(); - } - catch (Exception ex) - { - string message = $@"Error running cmake: {ex.Message} -cmake is required to build the native host 'corehost'"; - if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) - { - message += Environment.NewLine + "Download it from https://www.cmake.org"; - } - else if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux)) - { - message += Environment.NewLine + "Ubuntu: 'sudo apt-get install cmake'"; - } - else if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX)) - { - message += Environment.NewLine + "OS X w/Homebrew: 'brew install cmake'"; - } - return c.Failed(message); - } - - return c.Success(); - } - } -} diff --git a/build_projects/dotnet-host-build/Program.cs b/build_projects/dotnet-host-build/Program.cs deleted file mode 100644 index 129531b1..00000000 --- a/build_projects/dotnet-host-build/Program.cs +++ /dev/null @@ -1,17 +0,0 @@ -using Microsoft.DotNet.Cli.Build.Framework; - -namespace Microsoft.DotNet.Host.Build -{ - public class Program - { - public static int Main(string[] args) - { - DebugHelper.HandleDebugSwitch(ref args); - - return BuildSetup.Create(".NET Core Host") - .UseStandardGoals() - .UseAllTargetsFromAssembly() - .Run(args); - } - } -} diff --git a/build_projects/dotnet-host-build/PublishTargets.cs b/build_projects/dotnet-host-build/PublishTargets.cs deleted file mode 100644 index 908a092f..00000000 --- a/build_projects/dotnet-host-build/PublishTargets.cs +++ /dev/null @@ -1,501 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Net.Http; -using System.Text; -using System.Text.RegularExpressions; -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.WindowsAzure.Storage; -using Microsoft.WindowsAzure.Storage.Blob; -using Microsoft.DotNet.Cli.Build; -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; - -namespace Microsoft.DotNet.Host.Build -{ - public static class PublishTargets - { - private static AzurePublisher AzurePublisherTool { get; set; } - - private static DebRepoPublisher DebRepoPublisherTool { get; set; } - - private static string Channel { get; set; } - - private static string CommitHash { get; set; } - - private static string SharedFrameworkNugetVersion { get; set; } - - private static string SharedHostNugetVersion { get; set; } - - private static string HostFxrNugetVersion { get; set; } - - private static bool IncludeSymbolPackages { get; set; } - - [Target] - public static BuildTargetResult InitPublish(BuildTargetContext c) - { - AzurePublisherTool = new AzurePublisher(); - DebRepoPublisherTool = new DebRepoPublisher(Dirs.Packages); - SharedFrameworkNugetVersion = c.BuildContext.Get("SharedFrameworkNugetVersion"); - SharedHostNugetVersion = c.BuildContext.Get("HostVersion").LockedHostVersion.ToString(); - HostFxrNugetVersion = c.BuildContext.Get("HostVersion").LockedHostFxrVersion.ToString(); - Channel = c.BuildContext.Get("Channel"); - CommitHash = c.BuildContext.Get("CommitHash"); - - // Do not publish symbol packages on a release branch. - IncludeSymbolPackages = !c.BuildContext.Get("BranchName").StartsWith("release/"); - - return c.Success(); - } - - [Target(nameof(PrepareTargets.Init), - nameof(PublishTargets.InitPublish), - nameof(PublishTargets.PublishArtifacts), - nameof(PublishTargets.FinalizeBuild))] - [Environment("PUBLISH_TO_AZURE_BLOB", "1", "true")] // This is set by CI systems - public static BuildTargetResult Publish(BuildTargetContext c) - { - return c.Success(); - } - - [Target] - [BuildPlatforms(BuildPlatform.Ubuntu, "14.04")] - [BuildArchitectures(BuildArchitecture.x64)] - public static BuildTargetResult PublishDotnetDebToolPackage(BuildTargetContext c) - { - string apiKey = EnvVars.EnsureVariable("CLI_NUGET_API_KEY"); - - string nugetFeedUrl = EnvVars.EnsureVariable("CLI_NUGET_FEED_URL"); - NuGetUtil.PushPackages(Dirs.Packages, nugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Standard); - if (IncludeSymbolPackages) - { - string symbolsNugetFeedUrl = EnvVars.EnsureVariable("CLI_NUGET_SYMBOLS_FEED_URL"); - NuGetUtil.PushPackages(Dirs.Packages, symbolsNugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Symbols); - } - - return c.Success(); - } - - [Target] - public static BuildTargetResult FinalizeBuild(BuildTargetContext c) - { - if (CheckIfAllBuildsHavePublished(c)) - { - string targetContainer = $"{Channel}/Binaries/Latest/"; - string targetVersionFile = $"{targetContainer}{CommitHash}"; - string semaphoreBlob = $"{Channel}/Binaries/sharedFxPublishSemaphore"; - AzurePublisherTool.CreateBlobIfNotExists(semaphoreBlob); - - string leaseId = AzurePublisherTool.AcquireLeaseOnBlob(semaphoreBlob); - - // Prevent race conditions by dropping a version hint of what version this is. If we see this file - // and it is the same as our version then we know that a race happened where two+ builds finished - // at the same time and someone already took care of publishing and we have no work to do. - if (AzurePublisherTool.IsLatestSpecifiedVersion(targetVersionFile)) - { - AzurePublisherTool.ReleaseLeaseOnBlob(semaphoreBlob, leaseId); - return c.Success(); - } - else - { - Regex versionFileRegex = new Regex(@"(?[\w\d]{40})"); - - // Delete old version files - AzurePublisherTool.ListBlobs($"{targetContainer}") - .Select(s => s.Replace("/dotnet/", "")) - .Where(s => versionFileRegex.IsMatch(s)) - .ToList() - .ForEach(f => AzurePublisherTool.TryDeleteBlob(f)); - - // Drop the version file signaling such for any race-condition builds (see above comment). - AzurePublisherTool.DropLatestSpecifiedVersion(targetVersionFile); - } - - try - { - // Copy the shared framework + host Archives - CopyBlobs($"{Channel}/Binaries/{SharedFrameworkNugetVersion}/", targetContainer); - - // Copy the shared framework installers - CopyBlobs($"{Channel}/Installers/{SharedFrameworkNugetVersion}/", $"{Channel}/Installers/Latest/"); - - // Copy the shared host installers - CopyBlobs($"{Channel}/Installers/{SharedHostNugetVersion}/", $"{Channel}/Installers/Latest/"); - - // Generate the Sharedfx Version text files - List versionFiles = new List() - { - "win.x86.portable.version", - "win.x64.portable.version", - "win.arm.portable.version", - "win.arm64.portable.version", - "linux.x64.portable.version", - "ubuntu.x64.version", - "linux.arm.portable.version", - "ubuntu.16.04.x64.version", - "ubuntu.16.10.x64.version", - "osx.x64.portable.version", - "debian.x64.version", - }; - - PublishCoreHostPackagesToFeed(); - - string sfxVersion = Utils.GetSharedFrameworkVersionFileContent(c); - foreach (string version in versionFiles) - { - AzurePublisherTool.PublishStringToBlob($"{Channel}/dnvm/latest.sharedfx.{version}", sfxVersion); - } - } - finally - { - AzurePublisherTool.ReleaseLeaseOnBlob(semaphoreBlob, leaseId); - } - } - - return c.Success(); - } - - private static void CopyBlobs(string sourceFolder, string destinationFolder) - { - Console.WriteLine($"--Copying blobs from '{sourceFolder}' to '{destinationFolder}'"); - foreach (string blob in AzurePublisherTool.ListBlobs(sourceFolder)) - { - string source = blob.Replace("/dotnet/", ""); - string targetName = Path.GetFileName(blob) - .Replace(SharedFrameworkNugetVersion, "latest") - .Replace(SharedHostNugetVersion, "latest"); - string target = $"{destinationFolder}{targetName}"; - AzurePublisherTool.CopyBlob(source, target); - } - } - - private static void PublishCoreHostPackagesToFeed() - { - var hostBlob = $"{Channel}/Binaries/{SharedFrameworkNugetVersion}"; - - Directory.CreateDirectory(Dirs.PackagesNoRID); - AzurePublisherTool.DownloadFilesWithExtension(hostBlob, ".nupkg", Dirs.PackagesNoRID); - - string apiKey = EnvVars.EnsureVariable("NUGET_API_KEY"); - - string nugetFeedUrl = EnvVars.EnsureVariable("NUGET_FEED_URL"); - NuGetUtil.PushPackages(Dirs.PackagesNoRID, nugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Standard); - - if (IncludeSymbolPackages) - { - string symbolsNugetFeedUrl = EnvVars.EnsureVariable("NUGET_SYMBOLS_FEED_URL"); - NuGetUtil.PushPackages(Dirs.PackagesNoRID, symbolsNugetFeedUrl, apiKey, NuGetUtil.NuGetIncludePackageType.Symbols); - } - - string githubAuthToken = EnvVars.EnsureVariable("GITHUB_PASSWORD"); - VersionRepoUpdater repoUpdater = new VersionRepoUpdater(githubAuthToken); - repoUpdater.UpdatePublishedVersions(Dirs.PackagesNoRID, $"build-info/dotnet/core-setup/{Channel}/Latest").Wait(); - } - - private static bool CheckIfAllBuildsHavePublished(BuildTargetContext c) - { - Dictionary badges = new Dictionary() - { - { "sharedfx_win_portable_x86", false }, - { "sharedfx_win_portable_x64", false }, - { "sharedfx_win_portable_arm", false }, - { "sharedfx_win_portable_arm64", false }, - { "sharedfx_linux_portable_x64", false }, - { "sharedfx_Ubuntu_x64", false }, - { "sharedfx_linux_portable_arm", false }, - { "sharedfx_Ubuntu_16_04_x64", false }, - { "sharedfx_Ubuntu_16_10_x64", false }, - { "sharedfx_osx_portable_x64", false }, - { "sharedfx_Debian_x64", false }, - }; - - List blobs = new List(AzurePublisherTool.ListBlobs($"{Channel}/Binaries/{SharedFrameworkNugetVersion}/")); - - var versionBadgeName = $"sharedfx_{Monikers.GetBadgeMoniker(c)}"; - if (badges.ContainsKey(versionBadgeName) == false) - { - throw new ArgumentException($"A new OS build ({versionBadgeName}) was added without adding the moniker to the {nameof(badges)} lookup"); - } - - foreach (string file in blobs) - { - string name = Path.GetFileName(file); - - if (!name.EndsWith(".svg")) - { - continue; - } - - // Include _ delimiter when matching to prevent finding both arm and arm64 badges - // when checking the arm badge file. - string[] matchingBadgeKeys = badges.Keys - .Where(badgeName => name.StartsWith($"{badgeName}_")) - .ToArray(); - - if (matchingBadgeKeys.Length == 1) - { - badges[matchingBadgeKeys[0]] = true; - } - else if (matchingBadgeKeys.Length > 1) - { - throw new BuildFailureException( - $"Expected 0 or 1 badges matching file '{name}', " + - $"found {matchingBadgeKeys.Length}: " + - string.Join(", ", matchingBadgeKeys)); - } - } - - foreach (string unfinishedBadge in badges.Where(pair => !pair.Value).Select(pair => pair.Key)) - { - Console.WriteLine($"Not all builds complete, badge not found: {unfinishedBadge}"); - } - - return badges.Keys.All(key => badges[key]); - } - - [Target( - nameof(PublishTargets.PublishInstallerFilesToAzure), - nameof(PublishTargets.PublishArchivesToAzure), - nameof(PublishTargets.PublishDotnetDebToolPackage), - nameof(PublishTargets.PublishDebFilesToDebianRepo), - nameof(PublishTargets.PublishCoreHostPackages), - nameof(PublishTargets.PublishManagedPackages), - nameof(PublishTargets.PublishSharedFrameworkVersionBadge))] - public static BuildTargetResult PublishArtifacts(BuildTargetContext c) => c.Success(); - - [Target( - nameof(PublishTargets.PublishSharedHostInstallerFileToAzure), - nameof(PublishTargets.PublishHostFxrInstallerFileToAzure), - nameof(PublishTargets.PublishSharedFrameworkInstallerFileToAzure), - nameof(PublishTargets.PublishCombinedMuxerHostFxrFrameworkInstallerFileToAzure))] - [BuildPlatforms(BuildPlatform.Ubuntu, BuildPlatform.OSX, BuildPlatform.Windows, BuildPlatform.Debian)] - - // We do not spport publishing platform installers for any other architecture on any supported platform - // yet. - [BuildArchitectures(BuildArchitecture.x64,BuildArchitecture.x86)] - public static BuildTargetResult PublishInstallerFilesToAzure(BuildTargetContext c) => c.Success(); - - [Target( - nameof(PublishTargets.PublishHostFxrArchiveToAzure), - nameof(PublishTargets.PublishSharedFrameworkArchiveToAzure), - nameof(PublishTargets.PublishSharedFrameworkSymbolsArchiveToAzure), - nameof(PublishTargets.PublishCombinedMuxerHostFxrFrameworkArchiveToAzure))] - public static BuildTargetResult PublishArchivesToAzure(BuildTargetContext c) => c.Success(); - - [Target( - nameof(PublishSharedFrameworkDebToDebianRepo), - nameof(PublishHostFxrDebToDebianRepo), - nameof(PublishSharedHostDebToDebianRepo))] - [BuildPlatforms(BuildPlatform.Ubuntu, BuildPlatform.Debian)] - // We do not spport publishing platform installers for any other architecture on any supported platform - // yet. - [BuildArchitectures(BuildArchitecture.x64)] - public static BuildTargetResult PublishDebFilesToDebianRepo(BuildTargetContext c) - { - return c.Success(); - } - - [Target] - public static BuildTargetResult PublishSharedFrameworkVersionBadge(BuildTargetContext c) - { - var versionBadge = c.BuildContext.Get("VersionBadge"); - var versionBadgeBlob = $"{Channel}/Binaries/{SharedFrameworkNugetVersion}/{Path.GetFileName(versionBadge)}"; - AzurePublisherTool.PublishFile(versionBadgeBlob, versionBadge); - return c.Success(); - } - - [Target] - public static BuildTargetResult PublishCoreHostPackages(BuildTargetContext c) - { - foreach (var file in Directory.GetFiles(Dirs.CorehostLocalPackages, "*.nupkg")) - { - if (!IsRidAgnosticPackage(file) || EnvVars.PublishRidAgnosticPackages) - { - var hostBlob = $"{Channel}/Binaries/{SharedFrameworkNugetVersion}/{Path.GetFileName(file)}"; - AzurePublisherTool.PublishFile(hostBlob, file); - Console.WriteLine($"Publishing package {hostBlob} to Azure."); - } - else - { - Console.WriteLine($"Skipping publishing package {file} to Azure because it is RID-agnostic and EnvVars.PublishRidAgnosticPackages is not set to true."); - } - } - - return c.Success(); - } - - private static bool IsRidAgnosticPackage(string packagePath) - { - var fileName = Path.GetFileName(packagePath); - return !fileName.StartsWith("runtime.", StringComparison.OrdinalIgnoreCase); - } - - [Target] - public static BuildTargetResult PublishManagedPackages(BuildTargetContext c) - { - // When building on non windows platforms, we don't compile the full set of - // tfms a package targets (to prevent the need of having mono and the reference - // assemblies installed. So we shouldn't publish these packages. - if (EnvVars.PublishRidAgnosticPackages && CurrentPlatform.IsWindows) - { - foreach (var file in Directory.GetFiles(Dirs.Packages, "*.nupkg")) - { - var hostBlob = $"{Channel}/Binaries/{SharedFrameworkNugetVersion}/{Path.GetFileName(file)}"; - AzurePublisherTool.PublishFile(hostBlob, file); - Console.WriteLine($"Publishing package {hostBlob} to Azure."); - } - } - - return c.Success(); - } - - [Target] - public static BuildTargetResult PublishSharedHostInstallerFileToAzure(BuildTargetContext c) - { - var version = SharedHostNugetVersion; - var installerFile = c.BuildContext.Get("SharedHostInstallerFile"); - - if (CurrentPlatform.Current == BuildPlatform.Windows) - { - installerFile = Path.ChangeExtension(installerFile, "msi"); - } - - AzurePublisherTool.PublishInstallerFile(installerFile, Channel, version); - - return c.Success(); - } - - [Target] - public static BuildTargetResult PublishHostFxrInstallerFileToAzure(BuildTargetContext c) - { - var version = HostFxrNugetVersion; - var installerFile = c.BuildContext.Get("HostFxrInstallerFile"); - - if (CurrentPlatform.Current == BuildPlatform.Windows) - { - installerFile = Path.ChangeExtension(installerFile, "msi"); - } - - AzurePublisherTool.PublishInstallerFile(installerFile, Channel, version); - - return c.Success(); - } - - [Target] - public static BuildTargetResult PublishSharedFrameworkInstallerFileToAzure(BuildTargetContext c) - { - var version = SharedFrameworkNugetVersion; - var installerFile = c.BuildContext.Get("SharedFrameworkInstallerFile"); - - AzurePublisherTool.PublishInstallerFile(installerFile, Channel, version); - - return c.Success(); - } - - [Target] - [BuildPlatforms(BuildPlatform.OSX, BuildPlatform.Windows)] - public static BuildTargetResult PublishCombinedMuxerHostFxrFrameworkInstallerFileToAzure(BuildTargetContext c) - { - var version = SharedFrameworkNugetVersion; - var installerFile = c.BuildContext.Get("CombinedMuxerHostFxrFrameworkInstallerFile"); - - AzurePublisherTool.PublishInstallerFile(installerFile, Channel, version); - - return c.Success(); - } - - [Target] - public static BuildTargetResult PublishCombinedMuxerHostFxrFrameworkArchiveToAzure(BuildTargetContext c) - { - var version = SharedFrameworkNugetVersion; - var archiveFile = c.BuildContext.Get("CombinedMuxerHostFxrFrameworkCompressedFile"); - - AzurePublisherTool.PublishArchive(archiveFile, Channel, version); - return c.Success(); - } - - [Target] - public static BuildTargetResult PublishHostFxrArchiveToAzure(BuildTargetContext c) - { - var version = SharedFrameworkNugetVersion; - var archiveFile = c.BuildContext.Get("HostFxrCompressedFile"); - - AzurePublisherTool.PublishArchive(archiveFile, Channel, version); - return c.Success(); - } - - [Target] - public static BuildTargetResult PublishSharedFrameworkArchiveToAzure(BuildTargetContext c) - { - var version = SharedFrameworkNugetVersion; - var archiveFile = c.BuildContext.Get("SharedFrameworkCompressedFile"); - - AzurePublisherTool.PublishArchive(archiveFile, Channel, version); - return c.Success(); - } - - [Target] - public static BuildTargetResult PublishSharedFrameworkSymbolsArchiveToAzure(BuildTargetContext c) - { - var version = SharedFrameworkNugetVersion; - var archiveFile = c.BuildContext.Get("SharedFrameworkSymbolsCompressedFile"); - - AzurePublisherTool.PublishArchive(archiveFile, Channel, version); - return c.Success(); - } - [Target] - [BuildPlatforms(BuildPlatform.Ubuntu, BuildPlatform.Debian)] - public static BuildTargetResult PublishSharedFrameworkDebToDebianRepo(BuildTargetContext c) - { - var version = SharedFrameworkNugetVersion; - - var packageName = Monikers.GetDebianSharedFrameworkPackageName(version); - var installerFile = c.BuildContext.Get("SharedFrameworkInstallerFile"); - var uploadUrl = AzurePublisherTool.CalculateInstallerUploadUrl(installerFile, Channel, version); - - DebRepoPublisherTool.PublishDebFileToDebianRepo( - packageName, - version, - uploadUrl); - - return c.Success(); - } - - [Target] - [BuildPlatforms(BuildPlatform.Ubuntu, BuildPlatform.Debian)] - public static BuildTargetResult PublishSharedHostDebToDebianRepo(BuildTargetContext c) - { - var version = SharedHostNugetVersion; - - var packageName = Monikers.GetDebianSharedHostPackageName(c); - var installerFile = c.BuildContext.Get("SharedHostInstallerFile"); - var uploadUrl = AzurePublisherTool.CalculateInstallerUploadUrl(installerFile, Channel, version); - - DebRepoPublisherTool.PublishDebFileToDebianRepo( - packageName, - version, - uploadUrl); - - return c.Success(); - } - - [Target] - [BuildPlatforms(BuildPlatform.Ubuntu, BuildPlatform.Debian)] - public static BuildTargetResult PublishHostFxrDebToDebianRepo(BuildTargetContext c) - { - var version = HostFxrNugetVersion; - - var packageName = Monikers.GetDebianHostFxrPackageName(version); - var installerFile = c.BuildContext.Get("HostFxrInstallerFile"); - var uploadUrl = AzurePublisherTool.CalculateInstallerUploadUrl(installerFile, Channel, version); - - DebRepoPublisherTool.PublishDebFileToDebianRepo( - packageName, - version, - uploadUrl); - - return c.Success(); - } - } -} - diff --git a/build_projects/dotnet-host-build/TestTargets.cs b/build_projects/dotnet-host-build/TestTargets.cs deleted file mode 100644 index f0096d26..00000000 --- a/build_projects/dotnet-host-build/TestTargets.cs +++ /dev/null @@ -1,140 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Runtime.InteropServices; -using Microsoft.DotNet.Cli.Build.Framework; - -using static Microsoft.DotNet.Cli.Build.FS; -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; -using static Microsoft.DotNet.Cli.Build.Utils; -using Microsoft.DotNet.Cli.Build; - -namespace Microsoft.DotNet.Host.Build -{ - public class TestTargets - { - public static readonly string[] TestProjects = new[] - { - "HostActivationTests", - "Microsoft.Extensions.DependencyModel.Tests" - }; - - [Target( - nameof(PrepareTargets.Init), - nameof(RestoreTestAssets), - nameof(RestoreTests), - nameof(BuildTests), - nameof(RunTests))] - [Environment("DOTNET_BUILD_SKIP_TESTS", null, "0", "false")] - public static BuildTargetResult Test(BuildTargetContext c) => c.Success(); - - [Target] - public static BuildTargetResult RestoreTestAssets(BuildTargetContext c) - { - var dotnet = DotNetCli.Stage0; - CleanBinObj(c, Path.Combine(Dirs.RepoRoot, "TestAssets")); - - dotnet.Restore( - "--fallbacksource", Dirs.CorehostLocalPackages, - "--disable-parallel") - .WorkingDirectory(Path.Combine(Dirs.RepoRoot, "TestAssets")) - .Execute() - .EnsureSuccessful(); - - return c.Success(); - } - - [Target] - public static BuildTargetResult RestoreTests(BuildTargetContext c) - { - var dotnet = DotNetCli.Stage0; - CleanBinObj(c, Path.Combine(Dirs.RepoRoot, "test")); - - dotnet.Restore("--disable-parallel") - .WorkingDirectory(Path.Combine(Dirs.RepoRoot, "test")) - .Execute() - .EnsureSuccessful(); - return c.Success(); - } - - [Target] - public static BuildTargetResult BuildTests(BuildTargetContext c) - { - var dotnet = DotNetCli.Stage0; - - var configuration = c.BuildContext.Get("Configuration"); - - foreach (var testProject in TestProjects) - { - c.Info($"Building tests: {testProject}"); - dotnet.Build("--configuration", configuration) - .WorkingDirectory(Path.Combine(Dirs.RepoRoot, "test", testProject)) - .Execute() - .EnsureSuccessful(); - } - return c.Success(); - } - - [Target] - public static BuildTargetResult RunTests(BuildTargetContext c) - { - var dotnet = DotNetCli.Stage0; - - var configuration = c.BuildContext.Get("Configuration"); - - var failingTests = RunDotnetTestOnTestProjects(c, dotnet, configuration); - if (failingTests.Any()) - { - foreach (var project in failingTests) - { - c.Error($"{project} failed"); - } - return c.Failed("Tests failed!"); - } - - return c.Success(); - } - - private static List RunDotnetTestOnTestProjects(BuildTargetContext c, DotNetCli dotnet, string configuration) - { - var failingTests = new List(); - - // Fetch the target RID to determine if we support running tests or not. - string rid = c.BuildContext.Get("TargetRID"); - bool fIsCrossArch = Utils.IsCrossArchRID(rid); - - foreach (var project in TestProjects) - { - // Explicitly checking for the host tests since they are the only ones running native code. - if (String.Compare("HostActivationTests", project) == 0) - { - // We dont support running native tests for cross-architecture builds yet. - if (fIsCrossArch) - { - c.Info($"Skipping tests in: {project} since cross-arch test runs are not yet supported for {rid}."); - continue; - } - } - - c.Info($"Running tests in: {project}"); - - string actualTargetRid = c.BuildContext.Get("ArtifactsTargetRID"); - - var result = dotnet.Test("--configuration", configuration, "-xml", $"{project}-testResults.xml", "-notrait", "category=failing") - .WorkingDirectory(Path.Combine(Dirs.RepoRoot, "test", project)) - .EnvironmentVariable("PATH", $"{dotnet.BinPath}{Path.PathSeparator}{Environment.GetEnvironmentVariable("PATH")}") - .EnvironmentVariable("TEST_ARTIFACTS", Dirs.TestArtifacts) - .EnvironmentVariable("TEST_TARGETRID", actualTargetRid) - .Execute(); - - if (result.ExitCode != 0) - { - failingTests.Add(project); - } - } - - return failingTests; - } - } -} diff --git a/build_projects/dotnet-host-build/build.ps1 b/build_projects/dotnet-host-build/build.ps1 deleted file mode 100644 index 585c5312..00000000 --- a/build_projects/dotnet-host-build/build.ps1 +++ /dev/null @@ -1,151 +0,0 @@ -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -param( - [string]$Configuration="Debug", - [string]$Architecture="x64", - [string]$TargetArch="", - [string]$ToolsetDir="", - [string]$Framework="netcoreapp2.0", - [string[]]$Targets=@("Default"), - [string[]]$EnvVars=@(), - [switch]$NoPackage, - [switch]$Portable, - [switch]$Help) - -if($Help) -{ - Write-Host "Usage: .\build.ps1 [-Configuration ] [-NoPackage] [-Portable] [-Help] [-Targets ]" - Write-Host "" - Write-Host "Options:" - Write-Host " -Configuration Build the specified Configuration (Debug or Release, default: Debug)" - Write-Host " -Architecture Build on the specified architecture (x64 or x86 (supported only on Windows), default: x64)" - Write-Host " -TargetArch Build for the specified architecture (x64, x86 (supported only on Windows), arm, or arm64, default: x64)" - Write-Host " -ToolsetDir Temporary variable specifying a path to a toolset to use when building the native host for ARM64. To be removed when the toolset is publicly available. )" - Write-Host " -Framework Build the specified framework (netcoreapp1.0 or netcoreapp1.1, default: netcoreapp1.0)" - Write-Host " -Targets Comma separated build targets to run (Init, Compile, Publish, etc.; Default is a full build and publish)" - Write-Host " -EnvVars <'V1=val1','V2=val2'...> Comma separated list of environment variable name-value pairs" - Write-Host " -NoPackage Skip packaging targets" - Write-Host " -Portable Optional argument to build portable platform packages" - Write-Host " -Help Display this help message" - exit 0 -} - -$env:CONFIGURATION = $Configuration; -if (!$TargetArch) -{ - $TargetArch = $Architecture -} -$env:TARGETPLATFORM = $TargetArch; -$env:TARGETFRAMEWORK = $Framework; -$RepoRoot = "$PSScriptRoot\..\.." -$env:NUGET_PACKAGES = "$RepoRoot\.nuget\packages" - -if($TargetArch -eq "arm64") -{ - if ($Framework -eq "netcoreapp1.0") - { - throw "ARM64 is not available on netcoreapp1.0. Pass in '-Framework netcoreapp1.1' to enable ARM64" - } - $env:__ToolsetDir = $ToolsetDir; - $env:TARGETRID = "win10-arm64"; - $env:PATH="$ToolsetDir\VC_sdk\bin;$env:PATH"; - $env:LIB="$ToolsetDir\VC_sdk\lib\arm64;$ToolsetDir\sdpublic\sdk\lib\arm64"; - $env:INCLUDE="$ToolsetDir\VC_sdk\inc;$ToolsetDir\sdpublic\sdk\inc;$ToolsetDir\sdpublic\shared\inc;$ToolsetDir\sdpublic\shared\inc\minwin;$ToolsetDir\sdpublic\sdk\inc\ucrt;$ToolsetDir\sdpublic\sdk\inc\minwin;$ToolsetDir\sdpublic\sdk\inc\mincore;$ToolsetDir\sdpublic\sdk\inc\abi;$ToolsetDir\sdpublic\sdk\inc\clientcore;$ToolsetDir\diasdk\include"; -} - -# No use in specifying a RID if the current and target architecture are equivalent. -if($TargetArch -eq "x86" -and $Architecture -ne "x86") -{ - $env:TARGETRID = "win7-x86"; -} -if($TargetArch -eq "x64" -and $Architecture -ne "x64") -{ - $env:TARGETRID = "win7-x64"; -} -if($TargetArch -eq "arm") -{ - $env:TARGETRID = "win8-arm"; -} - -if($NoPackage) -{ - $env:DOTNET_BUILD_SKIP_PACKAGING=1 -} -else -{ - $env:DOTNET_BUILD_SKIP_PACKAGING=0 -} - -if($Portable) -{ - $env:DOTNET_BUILD_LINK_PORTABLE=1 -} -else -{ - $env:DOTNET_BUILD_LINK_PORTABLE=0 -} - -# Load Branch Info -cat "$RepoRoot\branchinfo.txt" | ForEach-Object { - if(!$_.StartsWith("#") -and ![String]::IsNullOrWhiteSpace($_)) { - $splat = $_.Split([char[]]@("="), 2) - Set-Content "env:\$($splat[0])" -Value $splat[1] - } -} - -# Use a repo-local install directory (but not the artifacts directory because that gets cleaned a lot -if (!$env:DOTNET_INSTALL_DIR) -{ - $env:DOTNET_INSTALL_DIR="$RepoRoot\.dotnet_stage0\Windows\$Architecture" -} - -if (!(Test-Path $env:DOTNET_INSTALL_DIR)) -{ - mkdir $env:DOTNET_INSTALL_DIR | Out-Null -} - -if (!(Test-Path "$RepoRoot\artifacts")) -{ - mkdir "$RepoRoot\artifacts" | Out-Null -} - -# Install a stage 0 -$DOTNET_INSTALL_SCRIPT_URL="https://raw.githubusercontent.com/dotnet/cli/master/scripts/obtain/dotnet-install.ps1" -Invoke-WebRequest $DOTNET_INSTALL_SCRIPT_URL -OutFile "$RepoRoot\artifacts\dotnet-install.ps1" - -& "$RepoRoot\artifacts\dotnet-install.ps1" -Version 1.0.0-preview3-003886 -Architecture $Architecture -Verbose -if($LASTEXITCODE -ne 0) { throw "Failed to install stage0" } - -# Put the stage0 on the path -$env:PATH = "$env:DOTNET_INSTALL_DIR;$env:PATH" - -# Disable first run since we want to control all package sources -$env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 - -# Figure out the RID of the current platform, based on what stage 0 thinks. -$HOST_RID=(dotnet --info | Select-String -Pattern "\s*RID:\s*(?.*)").Matches[0].Groups['rid'].Value - -# Restore the build scripts -Write-Host "Restoring Build Script projects..." -pushd "$PSScriptRoot\.." - -(Get-Content "dotnet-host-build\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "dotnet-host-build\project.json" -(Get-Content "update-dependencies\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "update-dependencies\project.json" - -dotnet restore -if($LASTEXITCODE -ne 0) { throw "Failed to restore" } -popd - -# Publish the builder -Write-Host "Compiling Build Scripts..." -dotnet publish "$PSScriptRoot" -o "$PSScriptRoot\bin" --framework netcoreapp1.0 -if($LASTEXITCODE -ne 0) { throw "Failed to compile build scripts" } - -# Run the builder -Write-Host "Invoking Build Scripts..." -Write-Host " Configuration: $env:CONFIGURATION" -& "$PSScriptRoot\bin\dotnet-host-build.exe" -t @Targets -e @EnvVars -if($LASTEXITCODE -ne 0) { throw "Build failed" } diff --git a/build_projects/dotnet-host-build/build.sh b/build_projects/dotnet-host-build/build.sh deleted file mode 100755 index 23435aa5..00000000 --- a/build_projects/dotnet-host-build/build.sh +++ /dev/null @@ -1,184 +0,0 @@ -#!/usr/bin/env bash -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -set -e - -SOURCE="${BASH_SOURCE[0]}" -while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink - DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" - SOURCE="$(readlink "$SOURCE")" - [[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located -done -DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" -OLDPATH="$PATH" - -REPOROOT="$DIR/../.." -source "$REPOROOT/scripts/common/_prettyprint.sh" - -__BuildDriverOnly=0 - -# Use uname to determine what the OS is. -OSName=$(uname -s) -case $OSName in - Linux) - __BuildOS=Linux - __HostOS=Linux - ;; - - Darwin) - __BuildOS=OSX - __HostOS=OSX - ;; - - FreeBSD) - __BuildOS=FreeBSD - __HostOS=FreeBSD - ;; - - OpenBSD) - __BuildOS=OpenBSD - __HostOS=OpenBSD - ;; - - NetBSD) - __BuildOS=NetBSD - __HostOS=NetBSD - ;; - - SunOS) - __BuildOS=SunOS - __HostOS=SunOS - ;; - - *) - echo "Unsupported OS $OSName detected, configuring as if for Linux" - __BuildOS=Linux - __HostOS=Linux - ;; -esac - -while [[ $# > 0 ]]; do - lowerI="$(echo $1 | awk '{print tolower($0)}')" - case $lowerI in - -c|--configuration) - export CONFIGURATION=$2 - shift - ;; - --targets) - IFS=',' read -r -a targets <<< $2 - shift - ;; - --env-vars) - IFS=',' read -r -a envVars <<< $2 - shift - ;; - --skiptests) - export DOTNET_BUILD_SKIP_TESTS=1 - ;; - --nopackage) - export DOTNET_BUILD_SKIP_PACKAGING=1 - ;; - -portable) - export DOTNET_BUILD_LINK_PORTABLE=1 - ;; - --skip-prereqs) - # Allow CI to disable prereqs check since the CI has the pre-reqs but not ldconfig it seems - export DOTNET_INSTALL_SKIP_PREREQS=1 - ;; - --skip-deb-package-build) - export DOTNET_BUILD_SKIP_DEB_PACKAGING=1 - ;; - --build-driver-only) - __BuildDriverOnly=1 - ;; - --verbose) - export DOTNET_BUILD_VERBOSE=1 - ;; - --help) - echo "Usage: $0 [--configuration ] [--skip-prereqs] [--nopackage] [--docker ] [--help] [--targets ]" - echo "" - echo "Options:" - echo " --configuration Build the specified Configuration (Debug or Release, default: Debug)" - echo " --targets Comma separated build targets to run (Init, Compile, Publish, etc.; Default is a full build and publish)" - echo " --env-vars <'V1=val1','V2=val2'...> Comma separated list of environment variables" - echo " --nopackage Skip packaging targets" - echo " --skip-prereqs Skip checks for pre-reqs in dotnet_install" - echo " --build-driver-only Just build dotnet-host-build binary" - echo " -portable Optional argument to build portable platform packages." - echo " --docker Build in Docker using the Dockerfile located in scripts/docker/IMAGENAME" - echo " --help Display this help message" - echo " The build targets to run (Init, Compile, Publish, etc.; Default is a full build and publish)" - exit 0 - ;; - *) - break - ;; - esac - - shift -done - -# Set nuget package cache under the repo -export NUGET_PACKAGES="$REPOROOT/.nuget/packages" - -# Load Branch Info -while read line; do - if [[ $line != \#* ]]; then - IFS='=' read -ra splat <<< "$line" - export ${splat[0]}="${splat[1]}" - fi -done < "$REPOROOT/branchinfo.txt" - -# Use a repo-local install directory (but not the artifacts directory because that gets cleaned a lot -[ -z "$DOTNET_INSTALL_DIR" ] && export DOTNET_INSTALL_DIR=$REPOROOT/.dotnet_stage0/$(uname) -[ -d "$DOTNET_INSTALL_DIR" ] || mkdir -p $DOTNET_INSTALL_DIR - -DOTNET_INSTALL_SCRIPT_URL="https://raw.githubusercontent.com/dotnet/cli/master/scripts/obtain/dotnet-install.sh" -curl -sSL "$DOTNET_INSTALL_SCRIPT_URL" | bash /dev/stdin --version 1.0.0-preview3-003886 --verbose - -# Put stage 0 on the PATH (for this shell only) -PATH="$DOTNET_INSTALL_DIR:$PATH" - -# Figure out the RID of the current platform, based on what stage 0 thinks. -RID=$(dotnet --info | grep 'RID:' | sed -e 's/[[:space:]]*RID:[[:space:]]*\(.*\)/\1/g') - -# Increases the file descriptors limit for this bash. It prevents an issue we were hitting during restore -FILE_DESCRIPTOR_LIMIT=$( ulimit -n ) -if [ $FILE_DESCRIPTOR_LIMIT -lt 1024 ] -then - echo "Increasing file description limit to 1024" - ulimit -n 1024 -fi - -# Disable first run since we want to control all package sources -export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 - -# Restore the build scripts -echo "Restoring Build Script projects..." -( - cd "$DIR/.." - sed -e "s/{RID}/$RID/g" "dotnet-host-build/project.json.template" > "dotnet-host-build/project.json" - sed -e "s/{RID}/$RID/g" "update-dependencies/project.json.template" > "update-dependencies/project.json" - - dotnet restore --disable-parallel -) - -# Build the builder -echo "Compiling Build Scripts..." -dotnet publish "$DIR" -o "$DIR/bin" --framework netcoreapp1.0 - -if [ $__BuildDriverOnly == 1 ]; then - echo "Skipping invoking build scripts." - exit 0 -fi - -export PATH="$OLDPATH" -# Run the builder -echo "Invoking Build Scripts..." -echo "Configuration: $CONFIGURATION" - -$DIR/bin/dotnet-host-build -t ${targets[@]} -e ${envVars[@]} -exit $? diff --git a/build_projects/dotnet-host-build/dotnet-host-build.xproj b/build_projects/dotnet-host-build/dotnet-host-build.xproj deleted file mode 100644 index 253ab86b..00000000 --- a/build_projects/dotnet-host-build/dotnet-host-build.xproj +++ /dev/null @@ -1,18 +0,0 @@ - - - - 14.0 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - 1dbb7542-0345-4f4b-a84b-3b00b185d416 - Microsoft.DotNet.Cli.Build - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin - - - 2.0 - - - \ No newline at end of file diff --git a/build_projects/dotnet-host-build/project.json.template b/build_projects/dotnet-host-build/project.json.template deleted file mode 100644 index 978a38a1..00000000 --- a/build_projects/dotnet-host-build/project.json.template +++ /dev/null @@ -1,36 +0,0 @@ -{ - "version": "1.0.0-*", - "description": "Build scripts for dotnet-cli", - "buildOptions": { - "emitEntryPoint": true - }, - "dependencies": { - "NETStandard.Library": "1.6.1-beta-24506-02", - "Microsoft.NETCore.Runtime.CoreCLR": "1.1.0-beta-24507-05", - "Microsoft.CSharp": "4.0.1", - "System.Dynamic.Runtime": "4.0.11", - "System.Reflection.Metadata": "1.3.0", - "System.Runtime.Serialization.Primitives": "4.1.1", - "System.Threading.Thread": "4.0.0", - "System.Xml.XmlSerializer": "4.0.11", - "WindowsAzure.Storage": "8.1.1", - "NuGet.CommandLine.XPlat": "4.0.0-rc3-2140", - "Microsoft.DotNet.Cli.Build.Framework": { - "target": "project" - }, - "shared-build-targets-utils": { - "target": "project" - } - }, - "frameworks": { - "netcoreapp1.0": { - "imports": [ - "dnxcore50", - "portable-net45+win8" - ] - } - }, - "runtimes": { - "{RID}": {} - } -} diff --git a/build_projects/shared-build-targets-utils/Utils/BuildVersion.cs b/build_projects/shared-build-targets-utils/Utils/BuildVersion.cs deleted file mode 100644 index 1567a0da..00000000 --- a/build_projects/shared-build-targets-utils/Utils/BuildVersion.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System.Collections.Generic; - -namespace Microsoft.DotNet.Cli.Build -{ - public class BuildVersion : Version - { - public string SimpleVersion => $"{Major}.{Minor}.{Patch}.{CommitCountString}"; - public string VersionSuffix => $"{ReleaseSuffix}-{CommitCountString}"; - public string NuGetVersion => $"{Major}.{Minor}.{Patch}-{VersionSuffix}"; - public string NetCoreAppVersion => $"{Major}.{Minor}.{Patch}-{VersionSuffix}-00"; - public string ProductionVersion => $"{Major}.{Minor}.{Patch}"; - } -} diff --git a/build_projects/shared-build-targets-utils/Utils/GitUtils.cs b/build_projects/shared-build-targets-utils/Utils/GitUtils.cs deleted file mode 100644 index 93ac22c7..00000000 --- a/build_projects/shared-build-targets-utils/Utils/GitUtils.cs +++ /dev/null @@ -1,27 +0,0 @@ -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; - -namespace Microsoft.DotNet.Cli.Build -{ - public static class GitUtils - { - public static int GetCommitCount() - { - return int.Parse(ExecuteGitCommand("rev-list", "--count", "HEAD")); - } - - public static string GetCommitHash() - { - return ExecuteGitCommand("rev-parse", "HEAD"); - } - - private static string ExecuteGitCommand(params string[] args) - { - var gitResult = Cmd("git", args) - .CaptureStdOut() - .Execute(); - gitResult.EnsureSuccessful(); - - return gitResult.StdOut.Trim(); - } - } -} diff --git a/build_projects/shared-build-targets-utils/Utils/HostVersion.cs b/build_projects/shared-build-targets-utils/Utils/HostVersion.cs deleted file mode 100644 index 9808648a..00000000 --- a/build_projects/shared-build-targets-utils/Utils/HostVersion.cs +++ /dev/null @@ -1,101 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace Microsoft.DotNet.Cli.Build -{ - public class HostVersion : Version - { - // ------------------------------------------HOST-VERSIONING------------------------------------------- - // - // Host versions are independent of CLI versions. Moreover, these version numbers - // are baked into the binary and is used to look up a serviced binary replacement. - // - - public struct VerInfo - { - public int Major; - public int Minor; - public int Patch; - public string Release; - public string BuildMajor; - public string BuildMinor; - public string CommitCountString; - - public VerInfo(int major, int minor, int patch, string release, string buildMajor, string buildMinor, string commitCountString) - { - Major = major; - Minor = minor; - Patch = patch; - Release = release; - BuildMajor = buildMajor; - BuildMinor = buildMinor; - CommitCountString = commitCountString; - } - - public string GenerateMsiVersion() - { - return Version.GenerateMsiVersion(Major, Minor, Patch, Int32.Parse(VerRsrcBuildMajor)); - } - - public string WithoutSuffix => $"{Major}.{Minor}.{Patch}"; - - // The version numbers to be included in the embedded version resource (.rc) files. - public string VerRsrcBuildMajor => !string.IsNullOrEmpty(BuildMajor) ? BuildMajor : CommitCountString; - public string VerRsrcBuildMinor => !string.IsNullOrEmpty(BuildMinor) ? BuildMinor : "00"; - - public override string ToString() - { - string suffix = ""; - foreach (var verPad in new string[] { Release, BuildMajor, BuildMinor }) - { - if (!string.IsNullOrEmpty(verPad)) - { - suffix += $"-{verPad}"; - } - } - return $"{Major}.{Minor}.{Patch}{suffix}"; - } - } - // - // Latest hosts for production of nupkgs. - // - - // Full versions and package information. - public string LatestHostBuildMajor => CommitCountString; - public string LatestHostBuildMinor => "00"; - public bool EnsureStableVersion { get; set; } - public VerInfo LatestHostVersion => new VerInfo(Major, Minor, Patch, ReleaseSuffix, LatestHostBuildMajor, LatestHostBuildMinor, CommitCountString); - public VerInfo LatestAppHostVersion => new VerInfo(Major, Minor, Patch, ReleaseSuffix, LatestHostBuildMajor, LatestHostBuildMinor, CommitCountString); - public VerInfo LatestHostFxrVersion => new VerInfo(Major, Minor, Patch, ReleaseSuffix, LatestHostBuildMajor, LatestHostBuildMinor, CommitCountString); - public VerInfo LatestHostPolicyVersion => new VerInfo(Major, Minor, Patch, ReleaseSuffix, LatestHostBuildMajor, LatestHostBuildMinor, CommitCountString); - public Dictionary LatestHostPackages => new Dictionary() - { - { "Microsoft.NETCore.DotNetHost", LatestHostVersion }, - { "Microsoft.NETCore.DotNetAppHost", LatestAppHostVersion }, - { "Microsoft.NETCore.DotNetHostResolver", LatestHostFxrVersion }, - { "Microsoft.NETCore.DotNetHostPolicy", LatestHostPolicyVersion } - }; - public Dictionary LatestHostPackagesToValidate => new Dictionary() - { - { "Microsoft.NETCore.DotNetHost", LatestHostVersion }, - { "Microsoft.NETCore.DotNetAppHost", LatestAppHostVersion }, - { "Microsoft.NETCore.DotNetHostResolver", LatestHostFxrVersion }, - { "Microsoft.NETCore.DotNetHostPolicy", LatestHostPolicyVersion } - }; - public Dictionary LatestHostBinaries => new Dictionary() - { - { "dotnet", LatestHostVersion }, - { "apphost", LatestAppHostVersion }, - { "hostfxr", LatestHostFxrVersion }, - { "hostpolicy", LatestHostPolicyVersion } - }; - - // - // Locked muxer for consumption in CLI. - // - // Set this variable to toggle muxer locking. - public bool IsLocked { get; set; } - public VerInfo LockedHostFxrVersion => IsLocked ? new VerInfo(Major, Minor, Patch, "", "", "", CommitCountString) : LatestHostFxrVersion; - public VerInfo LockedHostVersion => IsLocked ? new VerInfo(Major, Minor, Patch, "", "", "", CommitCountString) : LatestHostVersion; - } -} diff --git a/build_projects/shared-build-targets-utils/Utils/Version.cs b/build_projects/shared-build-targets-utils/Utils/Version.cs deleted file mode 100644 index ef955ad8..00000000 --- a/build_projects/shared-build-targets-utils/Utils/Version.cs +++ /dev/null @@ -1,44 +0,0 @@ -using System.Collections.Generic; - -namespace Microsoft.DotNet.Cli.Build -{ - public abstract class Version - { - public virtual int Major { get; set; } - public virtual int Minor { get; set; } - public virtual int Patch { get; set; } - public virtual int CommitCount { get; set; } - public virtual string CommitCountString => CommitCount.ToString("000000"); - public virtual string ReleaseSuffix { get; set; } - - public string GenerateMsiVersion() - { - return GenerateMsiVersion(Major, Minor, Patch, CommitCount); - } - - public static string GenerateMsiVersion(int Major, int Minor, int Patch, int CommitCount) - { - // MSI versioning - // Encode the CLI version to fit into the MSI versioning scheme - https://msdn.microsoft.com/en-us/library/windows/desktop/aa370859(v=vs.85).aspx - // MSI versions are 3 part - // major.minor.build - // Size(bits) of each part 8 8 16 - // So we have 32 bits to encode the CLI version - // Starting with most significant bit this how the CLI version is going to be encoded as MSI Version - // CLI major -> 6 bits - // CLI minor -> 6 bits - // CLI patch -> 6 bits - // CLI commitcount -> 14 bits - var major = Major << 26; - var minor = Minor << 20; - var patch = Patch << 14; - var msiVersionNumber = major | minor | patch | CommitCount; - - var msiMajor = (msiVersionNumber >> 24) & 0xFF; - var msiMinor = (msiVersionNumber >> 16) & 0xFF; - var msiBuild = msiVersionNumber & 0xFFFF; - - return $"{msiMajor}.{msiMinor}.{msiBuild}"; - } - } -} diff --git a/build_projects/update-dependencies/Config.cs b/build_projects/update-dependencies/Config.cs deleted file mode 100644 index fd6f7703..00000000 --- a/build_projects/update-dependencies/Config.cs +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using System; -using Microsoft.DotNet.Cli.Build; -using Microsoft.DotNet.Cli.Build.Framework; - -namespace Microsoft.DotNet.Scripts -{ - /// - /// Holds the configuration information for the update-dependencies script. - /// - /// - /// The following Environment Variables are required by this script: - /// - /// GITHUB_USER - The user to commit the changes as. - /// GITHUB_EMAIL - The user's email to commit the changes as. - /// GITHUB_PASSWORD - The password/personal access token of the GitHub user. - /// - /// The following Environment Variables can optionally be specified: - /// - /// COREFX_VERSION_URL - The Url to get the current CoreFx version. (ex. "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/corefx/master/") - /// CORECLR_VERSION_URL - The Url to get the current CoreCLR version. (ex. "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/coreclr/master/") - /// GITHUB_ORIGIN_OWNER - The owner of the GitHub fork to push the commit and create the PR from. (ex. "dotnet-bot") - /// GITHUB_UPSTREAM_OWNER - The owner of the GitHub base repo to create the PR to. (ex. "dotnet") - /// GITHUB_PROJECT - The repo name under the ORIGIN and UPSTREAM owners. (ex. "cli") - /// GITHUB_UPSTREAM_BRANCH - The branch in the GitHub base repo to create the PR to. (ex. "rel/1.0.0") - /// GITHUB_PULL_REQUEST_NOTIFICATIONS - A semi-colon ';' separated list of GitHub users to notify on the PR. - /// - public class Config - { - public static Config Instance { get; } = new Config(); - - private static BranchInfo s_branchInfo = new BranchInfo(Dirs.RepoRoot); - - private Lazy _userName = new Lazy(() => GetEnvironmentVariable("GITHUB_USER")); - private Lazy _email = new Lazy(() => GetEnvironmentVariable("GITHUB_EMAIL")); - private Lazy _password = new Lazy(() => GetEnvironmentVariable("GITHUB_PASSWORD")); - private Lazy _coreFxVersionUrl = new Lazy(() => GetEnvironmentVariable("COREFX_VERSION_URL", "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/corefx/master/")); - private Lazy _coreClrVersionUrl = new Lazy(() => GetEnvironmentVariable("CORECLR_VERSION_URL", "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/coreclr/master/")); - private Lazy _standardVersionUrl = new Lazy(() => GetEnvironmentVariable("STANDARD_VERSION_URL", "https://raw.githubusercontent.com/dotnet/versions/master/build-info/dotnet/standard/master/")); - private Lazy _gitHubOriginOwner; - private Lazy _gitHubUpstreamOwner = new Lazy(() => GetEnvironmentVariable("GITHUB_UPSTREAM_OWNER", "dotnet")); - private Lazy _gitHubProject = new Lazy(() => GetEnvironmentVariable("GITHUB_PROJECT", "core-setup")); - private Lazy _gitHubUpstreamBranch = new Lazy(() => GetEnvironmentVariable("GITHUB_UPSTREAM_BRANCH", s_branchInfo.Entries["BRANCH_NAME"])); - private Lazy _gitHubPullRequestNotifications = new Lazy(() => - GetEnvironmentVariable("GITHUB_PULL_REQUEST_NOTIFICATIONS", "") - .Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries)); - - private Config() - { - _gitHubOriginOwner = new Lazy(() => GetEnvironmentVariable("GITHUB_ORIGIN_OWNER", UserName)); - } - - public string UserName => _userName.Value; - public string Email => _email.Value; - public string Password => _password.Value; - public string CoreFxVersionUrl => _coreFxVersionUrl.Value; - public string CoreClrVersionUrl => _coreClrVersionUrl.Value; - public string StandardVersionUrl => _standardVersionUrl.Value; - public string GitHubOriginOwner => _gitHubOriginOwner.Value; - public string GitHubUpstreamOwner => _gitHubUpstreamOwner.Value; - public string GitHubProject => _gitHubProject.Value; - public string GitHubUpstreamBranch => _gitHubUpstreamBranch.Value; - public string[] GitHubPullRequestNotifications => _gitHubPullRequestNotifications.Value; - - private static string GetEnvironmentVariable(string name, string defaultValue = null) - { - string value = Environment.GetEnvironmentVariable(name); - if (value == null) - { - value = defaultValue; - } - - if (value == null) - { - throw new InvalidOperationException($"Can't find environment variable '{name}'."); - } - - return value; - } - } -} diff --git a/build_projects/update-dependencies/Dirs.cs b/build_projects/update-dependencies/Dirs.cs deleted file mode 100644 index 40696090..00000000 --- a/build_projects/update-dependencies/Dirs.cs +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using System.IO; - -namespace Microsoft.DotNet.Scripts -{ - public static class Dirs - { - public static readonly string RepoRoot = Directory.GetCurrentDirectory(); - public static readonly string Pkg = Path.Combine(RepoRoot, "pkg"); - public static readonly string PkgProjects = Path.Combine(Pkg, "projects"); - public static readonly string PkgDeps = Path.Combine(Pkg, "deps"); - } -} diff --git a/build_projects/update-dependencies/Program.cs b/build_projects/update-dependencies/Program.cs deleted file mode 100644 index d8f6a0c3..00000000 --- a/build_projects/update-dependencies/Program.cs +++ /dev/null @@ -1,201 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.DotNet.VersionTools; -using Microsoft.DotNet.VersionTools.Automation; -using Microsoft.DotNet.VersionTools.Dependencies; -using NuGet.Versioning; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Text.RegularExpressions; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Scripts -{ - public class Program - { - private static readonly Config s_config = Config.Instance; - - public static void Main(string[] args) - { - DebugHelper.HandleDebugSwitch(ref args); - - bool onlyUpdate; - ParseArgs(args, out onlyUpdate); - - List buildInfos = new List(); - - buildInfos.Add(GetBuildInfo("CoreFx", s_config.CoreFxVersionUrl, fetchLatestReleaseFile: false)); - buildInfos.Add(GetBuildInfo("CoreClr", s_config.CoreClrVersionUrl, fetchLatestReleaseFile: false)); - buildInfos.Add(GetBuildInfo("Standard", s_config.StandardVersionUrl, fetchLatestReleaseFile: false)); - - IEnumerable updaters = GetUpdaters(); - var dependencyBuildInfos = buildInfos.Select(buildInfo => - new DependencyBuildInfo( - buildInfo, - upgradeStableVersions: true, - disabledPackages: Enumerable.Empty())); - DependencyUpdateResults updateResults = DependencyUpdateUtils.Update(updaters, dependencyBuildInfos); - - if (!onlyUpdate && updateResults.ChangesDetected()) - { - GitHubAuth gitHubAuth = new GitHubAuth(s_config.Password, s_config.UserName, s_config.Email); - GitHubProject origin = new GitHubProject(s_config.GitHubProject, s_config.UserName); - GitHubBranch upstreamBranch = new GitHubBranch( - s_config.GitHubUpstreamBranch, - new GitHubProject(s_config.GitHubProject, s_config.GitHubUpstreamOwner)); - - string suggestedMessage = updateResults.GetSuggestedCommitMessage(); - string body = string.Empty; - if (s_config.GitHubPullRequestNotifications.Any()) - { - body += PullRequestCreator.NotificationString(s_config.GitHubPullRequestNotifications); - } - - new PullRequestCreator(gitHubAuth, origin, upstreamBranch) - .CreateOrUpdateAsync( - suggestedMessage, - suggestedMessage + $" ({upstreamBranch.Name})", - body) - .Wait(); - } - } - - private static bool ParseArgs(string[] args, out bool updateOnly) - { - updateOnly = false; - - for (int i = 0; i < args.Length; i++) - { - if (string.Equals(args[i], "--update", StringComparison.OrdinalIgnoreCase)) - { - updateOnly = true; - } - if (args[i] == "-e") - { - i++; - while (i < args.Length && !args[i].StartsWith("-", StringComparison.Ordinal)) - { - int idx = args[i].IndexOf('='); - if (idx < 0) - { - Console.Error.WriteLine($"Unrecognized argument '{args[i]}'"); - return false; - } - - string name = args[i].Substring(0, idx); - string value = args[i].Substring(idx + 1); - Environment.SetEnvironmentVariable(name, value); - i++; - } - } - } - - return true; - } - - private static BuildInfo GetBuildInfo(string name, string packageVersionsUrl, bool fetchLatestReleaseFile = true) - { - const string FileUrlProtocol = "file://"; - - if (packageVersionsUrl.StartsWith(FileUrlProtocol, StringComparison.Ordinal)) - { - return LocalFileGetAsync( - name, - packageVersionsUrl.Substring(FileUrlProtocol.Length), - fetchLatestReleaseFile) - .Result; - } - else - { - return BuildInfo.Get(name, packageVersionsUrl, fetchLatestReleaseFile); - } - } - - private static async Task LocalFileGetAsync( - string name, - string path, - bool fetchLatestReleaseFile = true) - { - string latestPackagesPath = Path.Combine(path, BuildInfo.LatestPackagesTxtFilename); - using (var packageFileStream = File.OpenRead(latestPackagesPath)) - using (var packageReader = new StreamReader(packageFileStream)) - { - Dictionary packages = await BuildInfo.ReadPackageListAsync(packageReader); - - string latestReleaseVersion; - if (fetchLatestReleaseFile) - { - string latestReleasePath = Path.Combine(path, BuildInfo.LatestTxtFilename); - latestReleaseVersion = File.ReadLines(latestReleasePath).First().Trim(); - } - else - { - latestReleaseVersion = FindLatestReleaseFromPackages(packages); - } - - return new BuildInfo - { - Name = name, - LatestPackages = packages, - LatestReleaseVersion = latestReleaseVersion - }; - } - } - - private static string FindLatestReleaseFromPackages(IDictionary packages) - { - IEnumerable versions = packages.Values - .Select(versionString => new NuGetVersion(versionString)); - - return - versions.FirstOrDefault(v => v.IsPrerelease)?.Release ?? - // if there are no prerelease versions, just grab the first version - versions.FirstOrDefault()?.ToNormalizedString(); - } - - private static IEnumerable GetUpdaters() - { - yield return CreateProjectJsonUpdater(); - - yield return CreateDependencyVersionsUpdater("CoreCLRVersion", "transport.Microsoft.NETCore.Runtime.CoreCLR"); - yield return CreateDependencyVersionsUpdater("JitVersion", "transport.Microsoft.NETCore.Jit"); - - yield return CreateRegexUpdater(Path.Combine("pkg", "dir.props"), new Regex(@"Microsoft\.NETCore\.Platforms\\(?.*)\\runtime\.json"), "Microsoft.NETCore.Platforms"); - } - - private static IDependencyUpdater CreateProjectJsonUpdater() - { - var projectJsonFiles = new List - { - Path.Combine(Dirs.PkgProjects, "Microsoft.NETCore.App", "project.json.template"), - Path.Combine(Dirs.PkgProjects, "Microsoft.NETCore.UniversalWindowsPlatform", "project.json.template"), - Path.Combine(Dirs.PkgDeps, "project.json") - }; - - return new ProjectJsonUpdater(projectJsonFiles); - } - - private static IDependencyUpdater CreateDependencyVersionsUpdater(string dependencyPropertyName, string packageId) - { - string dependencyVersionsPath = Path.Combine("build_projects", "shared-build-targets-utils", "DependencyVersions.cs"); - Regex dependencyVersionsRegex = new Regex($@"{dependencyPropertyName} = ""(?.*)"";"); - - return CreateRegexUpdater(dependencyVersionsPath, dependencyVersionsRegex, packageId); - } - - private static IDependencyUpdater CreateRegexUpdater(string repoRelativePath, Regex regex, string packageId) - { - return new FileRegexPackageUpdater() - { - Path = Path.Combine(Dirs.RepoRoot, repoRelativePath), - PackageId = packageId, - Regex = regex, - VersionGroupName = "version" - }; - } - } -} \ No newline at end of file diff --git a/build_projects/update-dependencies/project.json.template b/build_projects/update-dependencies/project.json.template deleted file mode 100644 index c9d24c40..00000000 --- a/build_projects/update-dependencies/project.json.template +++ /dev/null @@ -1,27 +0,0 @@ -{ - "version": "1.0.0-*", - "description": "Updates the repos dependencies", - "buildOptions": { - "emitEntryPoint": true, - "compile": [ - "../Microsoft.DotNet.Cli.Build.Framework/DebugHelper.cs", - "../shared-build-targets-utils/Utils/BranchInfo.cs" - ] - }, - "dependencies": { - "NETStandard.Library": "1.6.1-beta-24506-02", - "Microsoft.NETCore.Runtime.CoreCLR": "1.1.0-beta-24507-05", - "Microsoft.DotNet.VersionTools": "1.0.27-prerelease-01518-03" - }, - "frameworks": { - "netcoreapp1.0": { - "imports": [ - "dnxcore50", - "portable-net45+win" - ] - } - }, - "runtimes": { - "{RID}": {} - } -} diff --git a/build_projects/update-dependencies/update-dependencies.ps1 b/build_projects/update-dependencies/update-dependencies.ps1 deleted file mode 100644 index 55e03066..00000000 --- a/build_projects/update-dependencies/update-dependencies.ps1 +++ /dev/null @@ -1,83 +0,0 @@ -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -param( - [switch]$Update, - [string[]]$EnvVars=@(), - [switch]$Help) - -if($Help) -{ - Write-Host "Usage: .\update-dependencies.ps1" - Write-Host "" - Write-Host "Options:" - Write-Host " -Update Update dependencies (but don't open a PR)" - Write-Host " -EnvVars <'V1=val1','V2=val2'...> Comma separated list of environment variable name-value pairs" - Write-Host " -Help Display this help message" - exit 0 -} - -$Architecture='x64' - -$RepoRoot = "$PSScriptRoot\..\.." -$ProjectArgs = "" - -if ($Update) -{ - $ProjectArgs = "--update" -} - -# Use a repo-local install directory (but not the artifacts directory because that gets cleaned a lot -if (!$env:DOTNET_INSTALL_DIR) -{ - $env:DOTNET_INSTALL_DIR="$RepoRoot\.dotnet_stage0\Windows\$Architecture" -} - -if (!(Test-Path $env:DOTNET_INSTALL_DIR)) -{ - mkdir $env:DOTNET_INSTALL_DIR | Out-Null -} - -if (!(Test-Path "$RepoRoot\artifacts")) -{ - mkdir "$RepoRoot\artifacts" | Out-Null -} - -# Install a stage 0 -$DOTNET_INSTALL_SCRIPT_URL="https://raw.githubusercontent.com/dotnet/cli/rel/1.0.0/scripts/obtain/dotnet-install.ps1" -Invoke-WebRequest $DOTNET_INSTALL_SCRIPT_URL -OutFile "$RepoRoot\artifacts\dotnet-install.ps1" - -& "$RepoRoot\artifacts\dotnet-install.ps1" -Version 1.0.0-preview3-003886 -Architecture $Architecture -Verbose -if($LASTEXITCODE -ne 0) { throw "Failed to install stage0" } - -# Put the stage0 on the path -$env:PATH = "$env:DOTNET_INSTALL_DIR;$env:PATH" - -$appPath = "$PSScriptRoot" - -# Figure out the RID of the current platform, based on what stage 0 thinks. -$HOST_RID=(dotnet --info | Select-String -Pattern "\s*RID:\s*(?.*)").Matches[0].Groups['rid'].Value - -# Restore the build scripts -Write-Host "Restoring Build Script projects..." -pushd "$PSScriptRoot\.." - -(Get-Content "dotnet-host-build\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "dotnet-host-build\project.json" -(Get-Content "update-dependencies\project.json.template").Replace("{RID}", $HOST_RID) | Set-Content "update-dependencies\project.json" - -dotnet restore -if($LASTEXITCODE -ne 0) { throw "Failed to restore" } -popd - -# Publish the app -Write-Host "Compiling App $appPath..." -dotnet publish "$appPath" -o "$appPath\bin" --framework netcoreapp1.0 -if($LASTEXITCODE -ne 0) { throw "Failed to compile build scripts" } - -# Run the app -Write-Host "Invoking App $appPath..." -Write-Host " Configuration: $env:CONFIGURATION" -& "$appPath\bin\update-dependencies.exe" $ProjectArgs -e @EnvVars -if($LASTEXITCODE -ne 0) { throw "Build failed" } diff --git a/build_projects/update-dependencies/update-dependencies.sh b/build_projects/update-dependencies/update-dependencies.sh deleted file mode 100755 index 1b0f771f..00000000 --- a/build_projects/update-dependencies/update-dependencies.sh +++ /dev/null @@ -1,97 +0,0 @@ -#!/usr/bin/env bash -# -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -set -e - -SOURCE="${BASH_SOURCE[0]}" -while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink - DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" - SOURCE="$(readlink "$SOURCE")" - [[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located -done -DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" -OLDPATH="$PATH" - -REPOROOT="$DIR/../.." -PROJECTARGS="" -source "$REPOROOT/scripts/common/_prettyprint.sh" - -while [[ $# > 0 ]]; do - lowerI="$(echo $1 | awk '{print tolower($0)}')" - case $lowerI in - --update) - PROJECTARGS="--update" - ;; - --env-vars) - IFS=',' read -r -a envVars <<< $2 - shift - ;; - --help) - echo "Usage: $0" - echo "" - echo "Options:" - echo " --update Update dependencies (but don't open a PR)" - echo " --env-vars <'V1=val1','V2=val2'...> Comma separated list of environment variable name value-pairs" - echo " --help Display this help message" - exit 0 - ;; - *) - break - ;; - esac - - shift -done - -# Set nuget package cache under the repo -export NUGET_PACKAGES="$REPOROOT/.nuget/packages" - -# Use a repo-local install directory (but not the artifacts directory because that gets cleaned a lot -[ -z "$DOTNET_INSTALL_DIR" ] && export DOTNET_INSTALL_DIR=$REPOROOT/.dotnet_stage0/$(uname) -[ -d "$DOTNET_INSTALL_DIR" ] || mkdir -p $DOTNET_INSTALL_DIR - -DOTNET_INSTALL_SCRIPT_URL="https://raw.githubusercontent.com/dotnet/cli/rel/1.0.0/scripts/obtain/dotnet-install.sh" -curl -sSL "$DOTNET_INSTALL_SCRIPT_URL" | bash /dev/stdin --version 1.0.0-preview3-003886 --verbose - -# Put stage 0 on the PATH (for this shell only) -PATH="$DOTNET_INSTALL_DIR:$PATH" - -# Figure out the RID of the current platform, based on what stage 0 thinks. -RID=$(dotnet --info | grep 'RID:' | sed -e 's/[[:space:]]*RID:[[:space:]]*\(.*\)/\1/g') - -# Increases the file descriptors limit for this bash. It prevents an issue we were hitting during restore -FILE_DESCRIPTOR_LIMIT=$( ulimit -n ) -if [ $FILE_DESCRIPTOR_LIMIT -lt 1024 ] -then - echo "Increasing file description limit to 1024" - ulimit -n 1024 -fi - -# Disable first run since we want to control all package sources -export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 - -# Restore the build scripts -echo "Restoring Build Script projects..." -( - pushd "$DIR/.." - sed -e "s/{RID}/$RID/g" "dotnet-host-build/project.json.template" > "dotnet-host-build/project.json" - sed -e "s/{RID}/$RID/g" "update-dependencies/project.json.template" > "update-dependencies/project.json" - - dotnet restore --disable-parallel - popd -) - -# Build the builder -echo "Compiling Build Scripts..." -dotnet publish "$DIR" -o "$DIR/bin" --framework netcoreapp1.0 - -export PATH="$OLDPATH" -# Run the builder -echo "Invoking Build Scripts..." -echo "Configuration: $CONFIGURATION" - -$DIR/bin/update-dependencies "$PROJECTARGS" -e ${envVars[@]} -exit $? diff --git a/build_projects/update-dependencies/update-dependencies.xproj b/build_projects/update-dependencies/update-dependencies.xproj deleted file mode 100644 index 07cff169..00000000 --- a/build_projects/update-dependencies/update-dependencies.xproj +++ /dev/null @@ -1,18 +0,0 @@ - - - - 14.0 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - a28bd8ac-df15-4f58-8299-98a9ae2b8726 - Microsoft.DotNet.Scripts - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin - - - 2.0 - - - \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json new file mode 100644 index 00000000..0cea0044 --- /dev/null +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -0,0 +1,446 @@ +{ + "build": [ + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup previous build", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "sudo", + "arguments": "rm -dfr $(PB_SourcesDirectory)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Clone repo", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "git", + "arguments": "clone $(PB_VsoRepoUrl) $(PB_SourcesDirectory)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "git checkout", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "git", + "arguments": "checkout $(SourceVersion)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Create host machine tools sandbox", + "timeoutInMinutes": 0, + "task": { + "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "SourceFolder": "$(PB_SourcesDirectory)", + "Contents": "init-tools.sh\nBuildToolsVersion.txt\nDotnetCLIVersion.txt", + "TargetFolder": "$(PB_DockerHost_Sandbox)", + "CleanTargetFolder": "false", + "OverWrite": "false", + "flattenFolders": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize tools in sandbox for host machine", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_DockerHost_Sandbox)/init-tools.sh", + "arguments": "", + "workingFolder": "$(PB_DockerHost_Sandbox)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize docker", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", + "arguments": "$(PB_DockerImageName)", + "workingFolder": "$(PB_DockerHost_Sandbox)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Init tools", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/init-tools.sh", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Generate version assets", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/build.sh -OfficialBuildId=$(OfficialBuildId) $(PB_BuildArguments)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Publish", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup Docker", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "perl", + "arguments": "$(PB_DockerHost_ToolsDirectory)/scripts/docker/cleanup-docker.sh", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Copy Publish Artifact: Build Logs", + "timeoutInMinutes": 0, + "task": { + "id": "1d341bb0-2106-458c-8422-d00bcea6512a", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "CopyRoot": "", + "Contents": "**/*.log", + "ArtifactName": "Build Logs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup VSTS Agent", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_DockerHost_ToolsDirectory)/msbuild.sh", + "arguments": "$(PB_DockerHost_ToolsDirectory)/scripts/vstsagent/cleanupagent.proj /p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", + "workingFolder": "$(DockerHost_ToolsDirectory)/scripts/vstsagent/", + "failOnStandardError": "false" + } + } + ], + "options": [ + { + "enabled": false, + "definition": { + "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" + }, + "inputs": { + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "7c555368-ca64-4199-add6-9ebaf0b0137d" + }, + "inputs": { + "multipliers": "[]", + "parallel": "false", + "continueOnError": "true", + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "a9db38f9-9fdc-478c-b0f9-464221e58316" + }, + "inputs": { + "workItemType": "4777", + "assignToRequestor": "true", + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "57578776-4c22-4526-aeb0-86b6da17ee9c" + }, + "inputs": { + "additionalFields": "{}" + } + } + ], + "variables": { + "BuildConfiguration": { + "value": "Release", + "allowOverride": true + }, + "PB_BuildArguments": { + "value": "--skip-prereqs --configuration $(BuildConfiguration)", + "allowOverride": true + }, + "CONNECTION_STRING": { + "value": "PassedViaPipeBuild" + }, + "PUBLISH_TO_AZURE_BLOB": { + "value": "true", + "allowOverride": true + }, + "NUGET_FEED_URL": { + "value": "https://dotnet.myget.org/F/dotnet-core-dev-eng/api/v2/package" + }, + "NUGET_API_KEY": { + "value": null, + "isSecret": true + }, + "GITHUB_PASSWORD": { + "value": "PassedViaPipeBuild" + }, + "DOTNET_BUILD_CONTAINER_TAG": { + "value": "core-setup-$(PB_DockerOS)-$(Build.BuildId)" + }, + "PB_DockerOS": { + "value": "debian8", + "allowOverride": true + }, + "PB_CleanAgent": { + "value": "true" + }, + "PB_DockerHost_ToolsDirectory": { + "value": "$(PB_DockerHost_Sandbox)/Tools" + }, + "NUGET_SYMBOLS_FEED_URL": { + "value": "https://dotnet.myget.org/F/dotnet-core-dev-eng/symbols/api/v2/package" + }, + "PB_DockerImageName": { + "value": "$(PB_DockerRepository):$(PB_DockerTag)" + }, + "PB_DockerRepository": { + "value": "microsoft/dotnet-buildtools-prereqs" + }, + "PB_DockerContainerName": { + "value": "coresetup-$(Build.BuildId)" + }, + "PB_DockerTag": { + "value": "ubuntu1404_prereqs_v3" + }, + "OfficialBuildId": { + "value": "$(Build.BuildNumber)" + }, + "PB_GitDirectory": { + "value": "/root/coresetup" + }, + "SourceVersion": { + "value": "HEAD" + }, + "DockerCommonRunArgs": { + "value": "--name $(PB_DockerContainerName) -v \"$(PB_SourcesDirectory):$(PB_GitDirectory)\" -w=\"$(PB_GitDirectory)\" $(PB_DockerImageName)" + }, + "PB_VsoRepoUrl": { + "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" + }, + "PB_VsoAccountName": { + "value": "dn-bot" + }, + "PB_VsoPassword": { + "value": null, + "isSecret": true + }, + "PB_SourcesDirectory": { + "value": "$(Build.SourcesDirectory)/core-setup" + }, + "PB_Branch": { + "value": "buildtools" + }, + "PB_DockerHost_Sandbox": { + "value": "$(Build.StagingDirectory)/HostSandbox" + }, + "PB_AzureAccountName": { + "value": "sourcebuild" + }, + "PB_AzureAccessToken": { + "value": null, + "isSecret": true + }, + "PB_DistroRid": { + "value": "ubuntu.14.04-x64" + }, + "PB_TargetArchitecture": { + "value": "x64" + } + }, + "demands": [ + "Agent.OS -equals linux" + ], + "retentionRules": [ + { + "branches": [ + "+refs/heads/*" + ], + "artifacts": [], + "artifactTypesToDelete": [ + "FilePath", + "SymbolStore" + ], + "daysToKeep": 2, + "minimumToKeep": 10, + "deleteBuildRecord": true, + "deleteTestResults": true + } + ], + "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)-$(PB_DockerTag)", + "jobAuthorizationScope": "projectCollection", + "jobTimeoutInMinutes": 90, + "jobCancelTimeoutInMinutes": 5, + "badgeEnabled": true, + "repository": { + "properties": { + "labelSources": "0", + "reportBuildStatus": "true", + "fetchDepth": "0", + "gitLfsSupport": "false", + "skipSyncSource": "true", + "cleanOptions": "3" + }, + "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", + "type": "TfsGit", + "name": "DotNet-Core-Setup-Trusted", + "url": "https://devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted", + "defaultBranch": "refs/heads/buildtools", + "clean": "false", + "checkoutSubmodules": false + }, + "processParameters": {}, + "quality": "definition", + "queue": { + "id": 36, + "name": "DotNet-Build", + "pool": { + "id": 39, + "name": "DotNet-Build" + } + }, + "id": 6057, + "name": "Core-Setup-Linux-BT", + "path": "\\", + "type": "build", + "project": { + "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", + "name": "DevDiv", + "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", + "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", + "state": "wellFormed", + "revision": 418097642 + } +} \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Linux.json b/buildpipeline/Core-Setup-OSX-BT.json similarity index 54% rename from buildpipeline/Core-Setup-Linux.json rename to buildpipeline/Core-Setup-OSX-BT.json index 2de3dea3..def93e1f 100644 --- a/buildpipeline/Core-Setup-Linux.json +++ b/buildpipeline/Core-Setup-OSX-BT.json @@ -1,5 +1,41 @@ { "build": [ + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup previous build", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "rm", + "arguments": "-dfr $(PB_SourcesDirectory)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Clone repo", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "git", + "arguments": "clone $(PB_VsoRepoUrl) $(PB_SourcesDirectory)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, { "enabled": true, "continueOnError": false, @@ -14,7 +50,7 @@ "inputs": { "filename": "git", "arguments": "checkout $(SourceVersion)", - "workingFolder": "", + "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } }, @@ -22,84 +58,7 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Create host machine tools sandbox", - "timeoutInMinutes": 0, - "task": { - "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "SourceFolder": "pkg", - "Contents": "**", - "TargetFolder": "$(DockerHost_Sandbox)", - "CleanTargetFolder": "false", - "OverWrite": "false", - "flattenFolders": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Initialize tools for host machine", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "$(DockerHost_Sandbox)/init-tools.sh", - "args": "", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Initialize Docker", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "$(DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", - "args": "", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Run build in Docker container", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "build.sh", - "args": "$(BuildArguments)", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Cleanup Docker", + "displayName": "Init tools", "timeoutInMinutes": 0, "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", @@ -107,36 +66,17 @@ "definitionType": "task" }, "inputs": { - "filename": "perl", - "arguments": "$(DockerHost_ToolsDirectory)/scripts/docker/cleanup-docker.sh", - "workingFolder": "", + "filename": "$(PB_SourcesDirectory)/init-tools.sh", + "arguments": "", + "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } }, { "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Copy Publish Artifact: Build Logs", - "timeoutInMinutes": 0, - "task": { - "id": "1d341bb0-2106-458c-8422-d00bcea6512a", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "CopyRoot": "", - "Contents": "**/*.log", - "ArtifactName": "Build Logs", - "ArtifactType": "Container", - "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Cleanup VSTS Agent", + "continueOnError": false, + "alwaysRun": false, + "displayName": "Generate version assets", "timeoutInMinutes": 0, "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", @@ -144,9 +84,63 @@ "definitionType": "task" }, "inputs": { - "filename": "$(DockerHost_ToolsDirectory)/msbuild.sh", - "arguments": "cleanupagent.proj /p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", - "workingFolder": "$(DockerHost_ToolsDirectory)/scripts/vstsagent/", + "filename": "$(PB_SourcesDirectory)/Tools/msbuild.sh", + "arguments": "$(PB_SourcesDirectory)/build.proj /t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_SourcesDirectory)/build.sh", + "arguments": "-OfficialBuildId=$(OfficialBuildId) $(PB_BuildArguments)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Publish", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_SourcesDirectory)/Tools/msbuild.sh", + "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Clean up VSTS agent", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_SourcesDirectory)/Tools/msbuild.sh", + "arguments": "$(PB_SourcesDirectory)/Tools/scripts/vstsagent/cleanupagent.proj /p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", + "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } } @@ -199,8 +193,8 @@ "value": "Release", "allowOverride": true }, - "BuildArguments": { - "value": "--skip-prereqs --configuration $(BuildConfiguration) --docker $(PB_DockerOS) --targets Default", + "PB_BuildArguments": { + "value": "--skip-prereqs --configuration $(BuildConfiguration) --targets Default", "allowOverride": true }, "CONNECTION_STRING": { @@ -219,28 +213,44 @@ "GITHUB_PASSWORD": { "value": "PassedViaPipeBuild" }, - "DOTNET_BUILD_CONTAINER_TAG": { - "value": "core-setup-$(PB_DockerOS)-$(Build.BuildId)" - }, - "PB_DockerOS": { - "value": "debian8", - "allowOverride": true + "NUGET_SYMBOLS_FEED_URL": { + "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" }, "PB_CleanAgent": { "value": "true" }, - "DockerHost_Sandbox": { - "value": "$(Build.StagingDirectory)/HostSandbox" + "PB_SourcesDirectory": { + "value": "$(Build.SourcesDirectory)/core-setup" }, - "DockerHost_ToolsDirectory": { - "value": "$(DockerHost_Sandbox)/Tools" + "PB_Branch": { + "value": "buildtools" }, - "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" + "PB_AzureAccountName": { + "value": "sourcebuild" + }, + "PB_AzureAccessToken": { + "value": null, + "isSecret": true + }, + "PB_VsoRepoUrl": { + "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" + }, + "PB_VsoAccountName": { + "value": "dn-bot" + }, + "PB_VsoPassword": { + "value": null, + "isSecret": true + }, + "SourceVersion": { + "value": "HEAD" + }, + "OfficialBuildId": { + "value": "$(Build.BuildNumber)" } }, "demands": [ - "Agent.OS -equals linux" + "Configuration -equals VSTSAgent_Mac_v3.0.0" ], "retentionRules": [ { @@ -253,54 +263,53 @@ "SymbolStore" ], "daysToKeep": 2, - "minimumToKeep": 10, + "minimumToKeep": 1, "deleteBuildRecord": true, "deleteTestResults": true } ], - "buildNumberFormat": "$(date:yyyMMdd)$(rev:.r)-$(PB_DockerOS)", + "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)", "jobAuthorizationScope": "projectCollection", "jobTimeoutInMinutes": 90, + "jobCancelTimeoutInMinutes": 5, "badgeEnabled": true, "repository": { "properties": { - "connectedServiceId": "f4c31735-42d2-4c3a-bc47-7ac06fd0dccc", - "apiUrl": "https://api.github.com/repos/dotnet/core-setup", - "branchesUrl": "https://api.github.com/repos/dotnet/core-setup/branches", - "cloneUrl": "https://github.com/dotnet/core-setup.git", - "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", - "gitLfsSupport": "false", - "skipSyncSource": "false", + "labelSources": "0", + "reportBuildStatus": "true", "fetchDepth": "0", + "gitLfsSupport": "false", + "skipSyncSource": "true", "cleanOptions": "0" }, - "id": "https://github.com/dotnet/core-setup.git", - "type": "GitHub", - "name": "dotnet/core-setup", - "url": "https://github.com/dotnet/core-setup.git", - "defaultBranch": "master", - "clean": "true", + "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", + "type": "TfsGit", + "name": "DotNet-Core-Setup-Trusted", + "url": "https://devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted", + "defaultBranch": "refs/heads/buildtools", + "clean": "false", "checkoutSubmodules": false }, "quality": "definition", "queue": { + "id": 330, + "name": "DotNetCore-Build", "pool": { - "id": 39, - "name": "DotNet-Build" - }, - "id": 36, - "name": "DotNet-Build" + "id": 97, + "name": "DotNetCore-Build" + } }, + "id": 6192, + "name": "Core-Setup-OSX-BT", + "url": "https://devdiv.visualstudio.com/DefaultCollection/0bdbc590-a062-4c3f-b0f6-9383f67865ee/_apis/build/Definitions/6192", "path": "\\", "type": "build", - "id": 5075, - "name": "Core-Setup-Linux", "project": { "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", "name": "DevDiv", "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097620 + "revision": 418097676 } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-OSX-x64.json b/buildpipeline/Core-Setup-OSX-x64.json deleted file mode 100644 index 1cd99bc4..00000000 --- a/buildpipeline/Core-Setup-OSX-x64.json +++ /dev/null @@ -1,237 +0,0 @@ -{ - "build": [ - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "git checkout", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "git", - "arguments": "checkout $(SourceVersion)", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Shell Script build.sh", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "build.sh", - "args": "$(BuildArguments)", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Initialize tools", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "pkg/init-tools.sh", - "args": "", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Clean up Docker images and containers", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "perl", - "arguments": "pkg/Tools/scripts/docker/cleanup-docker.sh", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Copy Publish Artifact: Build Logs", - "timeoutInMinutes": 0, - "task": { - "id": "1d341bb0-2106-458c-8422-d00bcea6512a", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "CopyRoot": "", - "Contents": "**/*.log", - "ArtifactName": "Build Logs", - "ArtifactType": "Container", - "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" - } - } - ], - "options": [ - { - "enabled": false, - "definition": { - "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" - }, - "inputs": { - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "7c555368-ca64-4199-add6-9ebaf0b0137d" - }, - "inputs": { - "multipliers": "[]", - "parallel": "false", - "continueOnError": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "a9db38f9-9fdc-478c-b0f9-464221e58316" - }, - "inputs": { - "workItemType": "4777", - "assignToRequestor": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "57578776-4c22-4526-aeb0-86b6da17ee9c" - }, - "inputs": { - "additionalFields": "{}" - } - } - ], - "variables": { - "BuildConfiguration": { - "value": "Release", - "allowOverride": true - }, - "BuildArguments": { - "value": "--skip-prereqs --configuration $(BuildConfiguration) --targets Default $(PB_PortableBuild)", - "allowOverride": true - }, - "PB_PortableBuild": { - "value": "", - "allowOverride": true - }, - "CONNECTION_STRING": { - "value": "PassedViaPipeBuild" - }, - "PUBLISH_TO_AZURE_BLOB": { - "value": "true", - "allowOverride": true - }, - "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" - }, - "NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, - "GITHUB_PASSWORD": { - "value": "PassedViaPipeBuild" - }, - "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" - } - }, - "demands": [ - "Configuration -equals VSTSAgent_Mac_v3.0.0" - ], - "retentionRules": [ - { - "branches": [ - "+refs/heads/*" - ], - "artifacts": [], - "artifactTypesToDelete": [ - "FilePath", - "SymbolStore" - ], - "daysToKeep": 2, - "minimumToKeep": 1, - "deleteBuildRecord": true, - "deleteTestResults": true - } - ], - "buildNumberFormat": "$(date:yyyyMMdd)$(rev:.r)", - "jobAuthorizationScope": "projectCollection", - "jobTimeoutInMinutes": 90, - "badgeEnabled": true, - "repository": { - "properties": { - "connectedServiceId": "f4c31735-42d2-4c3a-bc47-7ac06fd0dccc", - "apiUrl": "https://api.github.com/repos/dotnet/core-setup", - "branchesUrl": "https://api.github.com/repos/dotnet/core-setup/branches", - "cloneUrl": "https://github.com/dotnet/core-setup.git", - "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", - "gitLfsSupport": "false", - "skipSyncSource": "false", - "fetchDepth": "0", - "cleanOptions": "0" - }, - "id": "https://github.com/dotnet/core-setup.git", - "type": "GitHub", - "name": "dotnet/core-setup", - "url": "https://github.com/dotnet/core-setup.git", - "defaultBranch": "master", - "clean": "true", - "checkoutSubmodules": false - }, - "quality": "definition", - "queue": { - "pool": { - "id": 97, - "name": "DotNetCore-Build" - }, - "id": 330, - "name": "DotNetCore-Build" - }, - "path": "\\", - "type": "build", - "id": 3544, - "name": "Core-Setup-OSX-x64", - "project": { - "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "name": "DevDiv", - "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", - "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "state": "wellFormed", - "revision": 418097620 - } -} \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Signing-Windows-x64.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json similarity index 59% rename from buildpipeline/Core-Setup-Signing-Windows-x64.json rename to buildpipeline/Core-Setup-Signing-Windows-BT.json index 0bf7454c..ecd6b238 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-x64.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -1,5 +1,43 @@ { "build": [ + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup previous build if present", + "timeoutInMinutes": 0, + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "-path $(PB_SourcesDirectory)", + "inlineScript": "param($path)\n\nif (Test-Path $path){\n # this will print out an error each time a file can't be deleted.\n Remove-Item -Recurse -Force $path\n }", + "workingFolder": "", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Clone repo", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "git", + "arguments": "clone $(PB_VsoRepoUrl) $(PB_SourcesDirectory)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, { "enabled": true, "continueOnError": false, @@ -14,7 +52,7 @@ "inputs": { "filename": "git", "arguments": "checkout $(SourceVersion)", - "workingFolder": "", + "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } }, @@ -36,26 +74,6 @@ "feedSource": "https://devdiv.pkgs.visualstudio.com/DefaultCollection/_packaging/MicroBuildToolset/nuget/v3/index.json" } }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Compile CoreHost", - "timeoutInMinutes": 0, - "task": { - "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "scriptType": "filePath", - "scriptName": "build_projects/dotnet-host-build/build.ps1", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,CompileCoreHost $(PB_PortableBuild)", - "inlineScript": "# You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host \"Hello World\"", - "workingFolder": "", - "failOnStandardError": "true" - } - }, { "enabled": true, "continueOnError": false, @@ -68,13 +86,76 @@ "definitionType": "task" }, "inputs": { - "filename": "pkg\\init-tools.cmd", + "filename": "$(PB_SourcesDirectory)\\init-tools.cmd", "arguments": "", "modifyEnvironment": "false", - "workingFolder": "", + "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Generate version assets", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_SourcesDirectory)\\build.cmd", + "arguments": "-- /t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId) $(PB_CommonMSBuildArgs)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build traversal build dependencies", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_SourcesDirectory)\\build.cmd", + "arguments": "-- $(PB_CommonMSBuildArgs) /t:BuildTraversalBuildDependencies /flp:v=diag", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build corehost", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)/src/corehost/build.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "15.0", + "msbuildArchitecture": "x86", + "msbuildLocation": "" + } + }, { "enabled": true, "continueOnError": false, @@ -87,10 +168,10 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\signing\\sign.proj", - "platform": "", + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignCoreHost $(MsbuildSigningArguments)", + "msbuildArguments": "/t:SignCoreHost $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -104,28 +185,62 @@ }, { "enabled": true, - "continueOnError": true, + "continueOnError": false, "alwaysRun": false, - "displayName": "PackagePkgProjects", + "displayName": "Build nuget packages", "timeoutInMinutes": 0, "task": { - "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", "versionSpec": "1.*", "definitionType": "task" }, "inputs": { - "scriptType": "filePath", - "scriptName": "build_projects/dotnet-host-build/build.ps1", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,PackagePkgProjects,BuildProjectsForNuGetPackages $(PB_PortableBuild)", - "inlineScript": "# You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host \"Hello World\"", - "workingFolder": "", - "failOnStandardError": "true" + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/p:IncludeAllRuntimePackagesInPlatformManifest=false $(PB_CommonMSBuildArgs) /flp:v=diag;LogFile=$(PB_SourcesDirectory)\\packages.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "15.0", + "msbuildArchitecture": "x86", + "msbuildLocation": "" } }, { "enabled": true, "continueOnError": false, "alwaysRun": false, + "displayName": "Build managed / publish sharedframework", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\managed\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=diag;LogFile=$(PB_SourcesDirectory)\\sharedframework.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "15.0", + "msbuildArchitecture": "x86", + "msbuildLocation": "" + } + }, + { + "enabled": false, + "continueOnError": false, + "alwaysRun": false, "displayName": "PublishSharedFramework", "timeoutInMinutes": 0, "task": { @@ -153,10 +268,10 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\signing\\sign.proj", - "platform": "", + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignSharedFrameworkCrossgenedAssemblies $(MsbuildSigningArguments)", + "msbuildArguments": "/t:SignSharedFrameworkCrossgenedAssemblies $(PB_CommonMSBuildArgs) $(MsbuildSigningArguments)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -180,10 +295,10 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\signing\\sign.proj", - "platform": "", + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignAssemblies $(MsbuildSigningArguments)", + "msbuildArguments": "/t:SignAssemblies $(PB_CommonMSBuildArgs) $(MsbuildSigningArguments)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -199,6 +314,60 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, + "displayName": "Package", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=diag", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "true", + "msbuildLocationMethod": "version", + "msbuildVersion": "15.0", + "msbuildArchitecture": "x86", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build and run tests", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\test\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=diag;LogFile=$(PB_SourcesDirectory)\\tests.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "15.0", + "msbuildArchitecture": "x86", + "msbuildLocation": "" + } + }, + { + "enabled": false, + "continueOnError": false, + "alwaysRun": false, "displayName": "Test and Package", "timeoutInMinutes": 0, "task": { @@ -226,10 +395,10 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\signing\\sign.proj", + "solution": "$(PB_SourcesDirectory)\\sign.proj", "platform": "", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignMsiAndCab $(MsbuildSigningArguments)", + "msbuildArguments": "/t:SignMsiAndCab $(PB_CommonMSBuildArgs) $(MsbuildSigningArguments)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -242,7 +411,7 @@ } }, { - "enabled": true, + "enabled": false, "continueOnError": false, "alwaysRun": false, "displayName": "Generate Bundle", @@ -261,7 +430,7 @@ } }, { - "enabled": true, + "enabled": false, "continueOnError": false, "alwaysRun": false, "displayName": "Extract Engine from bundle", @@ -280,34 +449,7 @@ } }, { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign Engine", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "build_projects\\signing\\sign.proj", - "platform": "", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, + "enabled": false, "continueOnError": false, "alwaysRun": false, "displayName": "Reattach Engine to Bundle", @@ -326,7 +468,7 @@ } }, { - "enabled": true, + "enabled": false, "continueOnError": false, "alwaysRun": false, "displayName": "Sign Bundle", @@ -352,6 +494,33 @@ "msbuildLocation": "" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Publish", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "15.0", + "msbuildArchitecture": "x86", + "msbuildLocation": "" + } + }, { "enabled": true, "continueOnError": false, @@ -366,7 +535,7 @@ "inputs": {} }, { - "enabled": true, + "enabled": false, "continueOnError": false, "alwaysRun": false, "displayName": "Publish Build Artifacts", @@ -486,12 +655,15 @@ "CertificateId": { "value": "400" }, + "PB_DistroRid": { + "value": "win-x64" + }, "RID": { "value": "win-x64", "allowOverride": true }, "MsbuildSigningArguments": { - "value": "/p:RID=$(RID) /p:CertificateId=$(CertificateId) /v:detailed" + "value": "/p:CertificateId=$(CertificateId) /v:detailed" }, "TeamName": { "value": "DotNetCore" @@ -505,6 +677,45 @@ }, "NUGET_SYMBOLS_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + }, + "PB_SourcesDirectory": { + "value": "$(Build.SourcesDirectory)\\core-setup" + }, + "PB_VsoRepoUrl": { + "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" + }, + "PB_AzureAccountName": { + "value": "sourcebuild" + }, + "PB_AzureAccessToken": { + "value": null, + "isSecret": true + }, + "PB_VsoAccountName": { + "value": "dn-bot" + }, + "PB_VsoPassword": { + "value": null, + "isSecret": true + }, + "PB_Branch": { + "value": "buildtools" + }, + "SourceVersion": { + "value": "HEAD" + }, + "PB_SignType": { + "value": "real" + }, + "PB_CommonMSBuildArgs": { + "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture)" + }, + "OfficialBuildId": { + "value": "$(Build.BuildNumber)" + }, + "PB_TargetArchitecture": { + "value": "x64", + "allowOverride": true } }, "demands": [ @@ -526,49 +737,48 @@ "deleteTestResults": true } ], - "buildNumberFormat": "$(Date:yyyMMdd)$(Rev:.r)", + "buildNumberFormat": "$(Date:yyyyMMdd)$(Rev:-rr)", "jobAuthorizationScope": "projectCollection", "jobTimeoutInMinutes": 120, + "jobCancelTimeoutInMinutes": 5, "badgeEnabled": true, "repository": { "properties": { - "connectedServiceId": "f4c31735-42d2-4c3a-bc47-7ac06fd0dccc", - "apiUrl": "https://api.github.com/repos/dotnet/core-setup", - "branchesUrl": "https://api.github.com/repos/dotnet/core-setup/branches", - "cloneUrl": "https://github.com/dotnet/core-setup.git", - "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", - "gitLfsSupport": "false", - "skipSyncSource": "false", + "labelSources": "0", + "reportBuildStatus": "true", "fetchDepth": "0", - "cleanOptions": "0" + "gitLfsSupport": "false", + "skipSyncSource": "true", + "cleanOptions": "3" }, - "id": "https://github.com/dotnet/core-setup.git", - "type": "GitHub", - "name": "dotnet/core-setup", - "url": "https://github.com/dotnet/core-setup.git", - "defaultBranch": "master", - "clean": "true", + "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", + "type": "TfsGit", + "name": "DotNet-Core-Setup-Trusted", + "url": "https://devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted", + "defaultBranch": "refs/heads/master", + "clean": "false", "checkoutSubmodules": false }, "quality": "definition", "queue": { + "id": 36, + "name": "DotNet-Build", "pool": { "id": 39, "name": "DotNet-Build" - }, - "id": 36, - "name": "DotNet-Build" + } }, + "id": 6102, + "name": "Core-Setup-Signing-Windows-BT", + "url": "https://devdiv.visualstudio.com/DefaultCollection/0bdbc590-a062-4c3f-b0f6-9383f67865ee/_apis/build/Definitions/6102", "path": "\\", "type": "build", - "id": 5154, - "name": "Core-Setup-Signing-Windows-x64", "project": { "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", "name": "DevDiv", "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097620 + "revision": 418097676 } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Signing-Windows-x86.json b/buildpipeline/Core-Setup-Signing-Windows-x86.json deleted file mode 100644 index 1d921b6d..00000000 --- a/buildpipeline/Core-Setup-Signing-Windows-x86.json +++ /dev/null @@ -1,544 +0,0 @@ -{ - "build": [ - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "git checkout", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "git", - "arguments": "checkout $(SourceVersion)", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Install Signing Plugin", - "timeoutInMinutes": 0, - "task": { - "id": "30666190-6959-11e5-9f96-f56098202fef", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "signType": "$(PB_SignType)", - "zipSources": "false", - "version": "", - "feedSource": "https://devdiv.pkgs.visualstudio.com/DefaultCollection/_packaging/MicroBuildToolset/nuget/v3/index.json" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Compile CoreHost", - "timeoutInMinutes": 0, - "task": { - "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "scriptType": "filePath", - "scriptName": "build_projects/dotnet-host-build/build.ps1", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,CompileCoreHost $(PB_PortableBuild)", - "inlineScript": "# You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host \"Hello World\"", - "workingFolder": "", - "failOnStandardError": "true" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Run init-tools.cmd", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "pkg\\init-tools.cmd", - "arguments": "", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign HostFxr HostPolicy", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "build_projects\\signing\\sign.proj", - "platform": "", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignCoreHost $(MsbuildSigningArguments)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "$(BuildArchitecture)", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "PackagePkgProjects", - "timeoutInMinutes": 0, - "task": { - "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "scriptType": "filePath", - "scriptName": "build_projects/dotnet-host-build/build.ps1", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,PackagePkgProjects $(PB_PortableBuild)", - "inlineScript": "# You can write your powershell scripts inline here. \n# You can also pass predefined and custom variables to this scripts using arguments\n\n Write-Host \"Hello World\"", - "workingFolder": "", - "failOnStandardError": "true" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "PublishSharedFramework", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,PublishSharedFrameworkAndSharedHost $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign Shared Framework Crossgened Assemblies", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "build_projects\\signing\\sign.proj", - "platform": "", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignSharedFrameworkCrossgenedAssemblies $(MsbuildSigningArguments)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "$(BuildArchitecture)", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Test and Package", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,Test,GenerateVersionBadge,GenerateZip,GenerateMsis $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign MSI and cab", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "build_projects\\signing\\sign.proj", - "platform": "", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignMsiAndCab $(MsbuildSigningArguments)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "$(BuildArchitecture)", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Generate Bundle", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,GenerateBundles $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Extract Engine from bundle", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,ExtractEngineFromBundle $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign Engine", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "build_projects\\signing\\sign.proj", - "platform": "", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "$(BuildArchitecture)", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Reattach Engine to Bundle", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,ReattachEngineToBundle $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign Bundle", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "build_projects\\signing\\sign.proj", - "platform": "", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "$(BuildArchitecture)", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Perform Cleanup Tasks", - "timeoutInMinutes": 0, - "task": { - "id": "521a94ea-9e68-468a-8167-6dcf361ea776", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": {} - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Publish Build Artifacts", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Architecture $(BuildArchitecture) -Targets Prepare,Publish $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Copy Publish Artifact: Build Logs", - "timeoutInMinutes": 0, - "task": { - "id": "1d341bb0-2106-458c-8422-d00bcea6512a", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "CopyRoot": "", - "Contents": "**\\*.log", - "ArtifactName": "Build Logs", - "ArtifactType": "Container", - "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" - } - } - ], - "options": [ - { - "enabled": false, - "definition": { - "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" - }, - "inputs": { - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "7c555368-ca64-4199-add6-9ebaf0b0137d" - }, - "inputs": { - "multipliers": "[]", - "parallel": "false", - "continueOnError": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "a9db38f9-9fdc-478c-b0f9-464221e58316" - }, - "inputs": { - "workItemType": "4777", - "assignToRequestor": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "57578776-4c22-4526-aeb0-86b6da17ee9c" - }, - "inputs": { - "additionalFields": "{}" - } - } - ], - "variables": { - "BuildConfiguration": { - "value": "Release", - "allowOverride": true - }, - "COREHOST_TRACE": { - "value": "0", - "allowOverride": true - }, - "STORAGE_ACCOUNT": { - "value": "dotnetcli" - }, - "STORAGE_CONTAINER": { - "value": "dotnet" - }, - "CONNECTION_STRING": { - "value": "PassedViaPipeBuild" - }, - "PUBLISH_TO_AZURE_BLOB": { - "value": "true" - }, - "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" - }, - "NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, - "GITHUB_PASSWORD": { - "value": "PassedViaPipeBuild" - }, - "BuildArchitecture": { - "value": "x86" - }, - "CertificateId": { - "value": "400" - }, - "RID": { - "value": "win-x86", - "allowOverride": true - }, - "PB_PortableBuild": { - "value": "", - "allowOverride": true - }, - "MsbuildSigningArguments": { - "value": "/p:RID=$(RID) /p:CertificateId=$(CertificateId) /v:detailed" - }, - "TeamName": { - "value": "DotNetCore" - }, - "system.debug": { - "value": "false" - }, - "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" - } - }, - "demands": [ - "Agent.OS -equals Windows_NT" - ], - "retentionRules": [ - { - "branches": [ - "+refs/heads/*" - ], - "artifacts": [], - "artifactTypesToDelete": [ - "FilePath", - "SymbolStore" - ], - "daysToKeep": 2, - "minimumToKeep": 1, - "deleteBuildRecord": true, - "deleteTestResults": true - } - ], - "buildNumberFormat": "$(Date:yyyMMdd)$(Rev:.r)", - "jobAuthorizationScope": "projectCollection", - "jobTimeoutInMinutes": 120, - "badgeEnabled": true, - "repository": { - "properties": { - "connectedServiceId": "f4c31735-42d2-4c3a-bc47-7ac06fd0dccc", - "apiUrl": "https://api.github.com/repos/dotnet/core-setup", - "branchesUrl": "https://api.github.com/repos/dotnet/core-setup/branches", - "cloneUrl": "https://github.com/dotnet/core-setup.git", - "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", - "gitLfsSupport": "false", - "skipSyncSource": "false", - "fetchDepth": "0", - "cleanOptions": "0" - }, - "id": "https://github.com/dotnet/core-setup.git", - "type": "GitHub", - "name": "dotnet/core-setup", - "url": "https://github.com/dotnet/core-setup.git", - "defaultBranch": "master", - "clean": "true", - "checkoutSubmodules": false - }, - "quality": "definition", - "queue": { - "pool": { - "id": 39, - "name": "DotNet-Build" - }, - "id": 36, - "name": "DotNet-Build" - }, - "path": "\\", - "type": "build", - "id": 5154, - "name": "Core-Setup-Signing-Windows-x86", - "project": { - "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "name": "DevDiv", - "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", - "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "state": "wellFormed", - "revision": 418097620 - } -} \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json new file mode 100644 index 00000000..d1c5f6d1 --- /dev/null +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -0,0 +1,360 @@ +{ + "build": [ + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup previous build if present", + "timeoutInMinutes": 0, + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "-path $(PB_SourcesDirectory)", + "inlineScript": "param($path)\n\nif (Test-Path $path){\n # this will print out an error each time a file can't be deleted.\n Remove-Item -Recurse -Force $path\n }", + "workingFolder": "", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Clone repo", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "git", + "arguments": "clone $(PB_VsoRepoUrl) $(PB_SourcesDirectory)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "git checkout", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "git", + "arguments": "checkout $(SourceVersion)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Init tools", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_SourcesDirectory)\\init-tools.cmd", + "arguments": "", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Generate version assets", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\build.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "15.0", + "msbuildArchitecture": "x86", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_SourcesDirectory)\\build.cmd", + "arguments": "$(PB_BuildArguments)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Publish", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "15.0", + "msbuildArchitecture": "x86", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Clean up VSTS agent", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\Tools\\scripts\\vstsagent\\cleanupagent.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "15.0", + "msbuildArchitecture": "x86", + "msbuildLocation": "" + } + } + ], + "options": [ + { + "enabled": false, + "definition": { + "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" + }, + "inputs": { + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "7c555368-ca64-4199-add6-9ebaf0b0137d" + }, + "inputs": { + "multipliers": "[]", + "parallel": "false", + "continueOnError": "true", + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "a9db38f9-9fdc-478c-b0f9-464221e58316" + }, + "inputs": { + "workItemType": "4777", + "assignToRequestor": "true", + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "57578776-4c22-4526-aeb0-86b6da17ee9c" + }, + "inputs": { + "additionalFields": "{}" + } + } + ], + "variables": { + "NUGET_FEED_URL": { + "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" + }, + "NUGET_API_KEY": { + "value": "PassedViaPipeBuild" + }, + "GITHUB_PASSWORD": { + "value": "PassedViaPipeBuild" + }, + "COREHOST_TRACE": { + "value": "0" + }, + "STORAGE_ACCOUNT": { + "value": "dotnetcli" + }, + "STORAGE_CONTAINER": { + "value": "dotnet" + }, + "CONNECTION_STRING": { + "value": "PassedViaPipeBuild" + }, + "PUBLISH_TO_AZURE_BLOB": { + "value": "true", + "allowOverride": true + }, + "NUGET_SYMBOLS_FEED_URL": { + "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + }, + "BuildConfiguration": { + "value": "Release" + }, + "PB_BuildArguments": { + "value": "-ConfigurationGroup=$(BuildConfiguration) $(PB_AdditionalBuildArguments)" + }, + "PB_CleanAgent": { + "value": "true" + }, + "PB_SourcesDirectory": { + "value": "$(Build.SourcesDirectory)\\core-setup" + }, + "PB_Branch": { + "value": "buildtools" + }, + "PB_AzureAccountName": { + "value": "sourcebuild" + }, + "PB_AzureAccessToken": { + "value": null, + "isSecret": true + }, + "PB_VsoRepoUrl": { + "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" + }, + "PB_VsoAccountName": { + "value": "dn-bot" + }, + "PB_VsoPassword": { + "value": null, + "isSecret": true + }, + "SourceVersion": { + "value": "HEAD" + }, + "OfficialBuildId": { + "value": "$(Build.BuildNumber)" + }, + "PB_TargetArchitecture": { + "value": "x64", + "allowOverride": true + }, + "PB_AdditionalBuildArguments": { + "value": "", + "allowOverride": true + } + }, + "demands": [ + "Agent.OS -equals Windows_NT", + "DotNetFramework", + "Cmd" + ], + "retentionRules": [ + { + "branches": [ + "+refs/heads/*" + ], + "artifacts": [], + "artifactTypesToDelete": [ + "FilePath", + "SymbolStore" + ], + "daysToKeep": 7, + "minimumToKeep": 1, + "deleteBuildRecord": true, + "deleteTestResults": true + } + ], + "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)", + "jobAuthorizationScope": "projectCollection", + "jobTimeoutInMinutes": 90, + "jobCancelTimeoutInMinutes": 5, + "badgeEnabled": true, + "repository": { + "properties": { + "labelSources": "0", + "reportBuildStatus": "true", + "fetchDepth": "0", + "gitLfsSupport": "false", + "skipSyncSource": "true", + "cleanOptions": "0" + }, + "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", + "type": "TfsGit", + "name": "DotNet-Core-Setup-Trusted", + "url": "https://devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted", + "defaultBranch": "refs/heads/master", + "clean": "false", + "checkoutSubmodules": false + }, + "quality": "definition", + "queue": { + "id": 36, + "name": "DotNet-Build", + "pool": { + "id": 39, + "name": "DotNet-Build" + } + }, + "id": 4371, + "name": "Core-Setup-Windows-BT", + "path": "\\", + "type": "build", + "project": { + "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", + "name": "DevDiv", + "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", + "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", + "state": "wellFormed", + "revision": 418097676 + } +} \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Windows-arm32.json b/buildpipeline/Core-Setup-Windows-arm32.json deleted file mode 100644 index d09b53d0..00000000 --- a/buildpipeline/Core-Setup-Windows-arm32.json +++ /dev/null @@ -1,203 +0,0 @@ -{ - "build": [ - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "git checkout", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "git", - "arguments": "checkout $(SourceVersion)", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Run script build.cmd", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration Release -Targets Init,Compile,Package,Publish -TargetArch arm -Framework netcoreapp2.0 $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Copy Publish Artifact: Build Logs", - "timeoutInMinutes": 0, - "task": { - "id": "1d341bb0-2106-458c-8422-d00bcea6512a", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "CopyRoot": "", - "Contents": "**\\*.log", - "ArtifactName": "Build Logs", - "ArtifactType": "Container", - "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" - } - } - ], - "options": [ - { - "enabled": false, - "definition": { - "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" - }, - "inputs": { - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "7c555368-ca64-4199-add6-9ebaf0b0137d" - }, - "inputs": { - "multipliers": "[]", - "parallel": "false", - "continueOnError": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "a9db38f9-9fdc-478c-b0f9-464221e58316" - }, - "inputs": { - "workItemType": "4777", - "assignToRequestor": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "57578776-4c22-4526-aeb0-86b6da17ee9c" - }, - "inputs": { - "additionalFields": "{}" - } - } - ], - "variables": { - "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" - }, - "NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, - "GITHUB_PASSWORD": { - "value": "PassedViaPipeBuild" - }, - "COREHOST_TRACE": { - "value": "0" - }, - "STORAGE_ACCOUNT": { - "value": "dotnetcli" - }, - "STORAGE_CONTAINER": { - "value": "dotnet" - }, - "CONNECTION_STRING": { - "value": "PassedViaPipeBuild" - }, - "PUBLISH_TO_AZURE_BLOB": { - "value": "true", - "allowOverride": true - }, - "PB_PortableBuild": { - "value": "", - "allowOverride": true - }, - "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" - } - }, - "demands": [ - "Agent.OS -equals Windows_NT", - "DotNetFramework", - "Cmd" - ], - "retentionRules": [ - { - "branches": [ - "+refs/heads/*" - ], - "artifacts": [], - "artifactTypesToDelete": [ - "FilePath", - "SymbolStore" - ], - "daysToKeep": 7, - "minimumToKeep": 1, - "deleteBuildRecord": true, - "deleteTestResults": true - } - ], - "buildNumberFormat": "$(Date:yyyMMdd)$(Rev:.r)", - "jobAuthorizationScope": "projectCollection", - "jobTimeoutInMinutes": 90, - "badgeEnabled": true, - "repository": { - "properties": { - "connectedServiceId": "f4c31735-42d2-4c3a-bc47-7ac06fd0dccc", - "apiUrl": "https://api.github.com/repos/dotnet/core-setup", - "branchesUrl": "https://api.github.com/repos/dotnet/core-setup/branches", - "cloneUrl": "https://github.com/dotnet/core-setup.git", - "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", - "gitLfsSupport": "false", - "skipSyncSource": "false", - "fetchDepth": "0", - "cleanOptions": "0" - }, - "id": "https://github.com/dotnet/core-setup.git", - "type": "GitHub", - "name": "dotnet/core-setup", - "url": "https://github.com/dotnet/core-setup.git", - "defaultBranch": "master", - "clean": "true", - "checkoutSubmodules": false - }, - "quality": "definition", - "queue": { - "pool": { - "id": 39, - "name": "DotNet-Build" - }, - "id": 36, - "name": "DotNet-Build" - }, - "path": "\\", - "type": "build", - "id": 4371, - "name": "Core-Setup-Windows-arm32", - "project": { - "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "name": "DevDiv", - "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", - "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "state": "wellFormed", - "revision": 418097620 - } -} \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Windows-arm64.json b/buildpipeline/Core-Setup-Windows-arm64.json deleted file mode 100644 index 7dbb7510..00000000 --- a/buildpipeline/Core-Setup-Windows-arm64.json +++ /dev/null @@ -1,203 +0,0 @@ -{ - "build": [ - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "git checkout", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "git", - "arguments": "checkout $(SourceVersion)", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Run script build.cmd", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration Release -Targets Init,Compile,Package,Publish -Architecure x64 -TargetArch arm64 -ToolsetDir c:\\tools\\clr -Framework netcoreapp2.0 $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Copy Publish Artifact: Build Logs", - "timeoutInMinutes": 0, - "task": { - "id": "1d341bb0-2106-458c-8422-d00bcea6512a", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "CopyRoot": "", - "Contents": "**\\*.log", - "ArtifactName": "Build Logs", - "ArtifactType": "Container", - "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" - } - } - ], - "options": [ - { - "enabled": false, - "definition": { - "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" - }, - "inputs": { - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "7c555368-ca64-4199-add6-9ebaf0b0137d" - }, - "inputs": { - "multipliers": "[]", - "parallel": "false", - "continueOnError": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "a9db38f9-9fdc-478c-b0f9-464221e58316" - }, - "inputs": { - "workItemType": "4777", - "assignToRequestor": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "57578776-4c22-4526-aeb0-86b6da17ee9c" - }, - "inputs": { - "additionalFields": "{}" - } - } - ], - "variables": { - "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" - }, - "NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, - "GITHUB_PASSWORD": { - "value": "PassedViaPipeBuild" - }, - "COREHOST_TRACE": { - "value": "0" - }, - "STORAGE_ACCOUNT": { - "value": "dotnetcli" - }, - "STORAGE_CONTAINER": { - "value": "dotnet" - }, - "CONNECTION_STRING": { - "value": "PassedViaPipeBuild" - }, - "PUBLISH_TO_AZURE_BLOB": { - "value": "true", - "allowOverride": true - }, - "PB_PortableBuild": { - "value": "", - "allowOverride": true - }, - "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" - } - }, - "demands": [ - "Agent.OS -equals Windows_NT", - "DotNetFramework", - "Cmd" - ], - "retentionRules": [ - { - "branches": [ - "+refs/heads/*" - ], - "artifacts": [], - "artifactTypesToDelete": [ - "FilePath", - "SymbolStore" - ], - "daysToKeep": 2, - "minimumToKeep": 1, - "deleteBuildRecord": true, - "deleteTestResults": true - } - ], - "buildNumberFormat": "$(Date:yyyMMdd)$(Rev:.r)", - "jobAuthorizationScope": "projectCollection", - "jobTimeoutInMinutes": 90, - "badgeEnabled": true, - "repository": { - "properties": { - "connectedServiceId": "f4c31735-42d2-4c3a-bc47-7ac06fd0dccc", - "apiUrl": "https://api.github.com/repos/dotnet/core-setup", - "branchesUrl": "https://api.github.com/repos/dotnet/core-setup/branches", - "cloneUrl": "https://github.com/dotnet/core-setup.git", - "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", - "gitLfsSupport": "false", - "skipSyncSource": "false", - "fetchDepth": "0", - "cleanOptions": "0" - }, - "id": "https://github.com/dotnet/core-setup.git", - "type": "GitHub", - "name": "dotnet/core-setup", - "url": "https://github.com/dotnet/core-setup.git", - "defaultBranch": "master", - "clean": "true", - "checkoutSubmodules": false - }, - "quality": "definition", - "queue": { - "pool": { - "id": 39, - "name": "DotNet-Build" - }, - "id": 36, - "name": "DotNet-Build" - }, - "path": "\\", - "type": "build", - "id": 4010, - "name": "Core-Setup-Windows-arm64", - "project": { - "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "name": "DevDiv", - "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", - "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "state": "wellFormed", - "revision": 418097620 - } -} \ No newline at end of file diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index a7bce991..0c8d31e0 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -16,9 +16,10 @@ }, "Definitions": [ { - "Name": "Core-Setup-Linux", + "Name": "Core-Setup-Linux-BT", "Parameters": { - "PB_DockerOS": "debian.8", + "PB_DistroRid": "debian.8-x64", + "PB_DockerTag": "debian82_prereqs_2", "REPO_ID": "579f8fb0fedca9aeeb399132", "REPO_USER": "dotnet", "REPO_SERVER": "azure-apt-cat.cloudapp.net" @@ -30,14 +31,15 @@ } }, { - "Name": "Core-Setup-Linux", + "Name": "Core-Setup-Linux-BT", "Parameters": { - "PB_DockerOS": "ubuntu.14.04", + "PB_DistroRid": "ubuntu.14.04-x64", + "PB_DockerTag": "ubuntu1404_prereqs_v3", "REPO_ID": "562fbfe0b2d7d0e0a43780c4", "REPO_USER": "dotnet", "REPO_SERVER": "azure-apt-cat.cloudapp.net", - "CLI_NUGET_FEED_URL": "https://dotnet.myget.org/F/cli-deps/api/v2/package", - "CLI_NUGET_SYMBOLS_FEED_URL": "https://dotnet.myget.org/F/cli-deps/symbols/api/v2/package" + "CLI_NUGET_FEED_URL": "https://dotnet.myget.org/F/dotnet-core-dev-eng/api/v2/package", + "CLI_NUGET_SYMBOLS_FEED_URL": "https://dotnet.myget.org/F/dotnet-core-dev-eng/symbols/api/v2/package" }, "ReportingParameters": { "OperatingSystem": "Ubuntu 14.04", @@ -46,9 +48,10 @@ } }, { - "Name": "Core-Setup-Linux", + "Name": "Core-Setup-Linux-BT", "Parameters": { - "PB_DockerOS": "ubuntu.16.04", + "PB_DistroRid": "ubuntu.16.04-x64", + "PB_DockerTag": "ubuntu1604_prereqs", "REPO_ID": "575f40f3797ef7280505232f", "REPO_USER": "dotnet", "REPO_SERVER": "azure-apt-cat.cloudapp.net" @@ -60,9 +63,10 @@ } }, { - "Name": "Core-Setup-Linux", + "Name": "Core-Setup-Linux-BT", "Parameters": { - "PB_DockerOS": "ubuntu.16.10", + "PB_DistroRid": "ubuntu.16.10-x64", + "PB_DockerTag": "ubuntu1610_prereqs_v2", "REPO_ID": "575f40f3797ef7280505232f", "REPO_USER": "dotnet", "REPO_SERVER": "azure-apt-cat.cloudapp.net" @@ -74,7 +78,7 @@ } }, { - "Name": "Core-Setup-OSX-x64", + "Name": "Core-Setup-OSX-BT", "Parameters": { "PB_PortableBuild": "-portable" }, @@ -86,20 +90,10 @@ } }, { - "Name": "Core-Setup-PortableLinux-x64", - "Parameters": { - "PB_PortableBuild": "-portable" - }, - "ReportingParameters": { - "SubType": "PortableBuild", - "OperatingSystem": "RedHat 7", - "Type": "build/product/", - "Platform": "x64" - } - }, - { - "Name": "Core-Setup-Signing-Windows-x64", + "Name": "Core-Setup-Signing-Windows-BT", "Parameters": { + "PB_DistroRid": "win7-x64", + "PB_TargetArchitecture": "x64", "PB_PortableBuild": "-portable" }, "ReportingParameters": { @@ -110,8 +104,10 @@ } }, { - "Name": "Core-Setup-Signing-Windows-x86", + "Name": "Core-Setup-Signing-Windows-BT", "Parameters": { + "PB_DistroRid": "win7-x86", + "PB_TargetArchitecture": "x86", "PB_PortableBuild": "-portable" }, "ReportingParameters": { @@ -122,23 +118,10 @@ } }, { - "Name": "Core-Setup-CrossBuild", + "Name": "Core-Setup-Windows-BT", "Parameters": { - "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", - "PB_Architecture": "arm", - "TargetRid": "linux-arm", - "PB_PortableBuild": "-portable" - }, - "ReportingParameters": { - "OperatingSystem": "Ubuntu 14.04", - "SubType": "PortableBuild", - "Type": "build/product/" - } - }, - { - "Name": "Core-Setup-Windows-arm32", - "Parameters": { - "PB_PortableBuild": "-portable" + "PB_AdditionalBuildArguments": "-portable", + "PB_TargetArchitecture": "arm" }, "ReportingParameters": { "OperatingSystem": "Windows", @@ -148,8 +131,10 @@ } }, { - "Name": "Core-Setup-Windows-arm64", + "Name": "Core-Setup-Windows-BT", "Parameters": { + "PB_AdditionalBuildArguments": "-portable", + "PB_TargetArchitecture": "arm64", "PB_PortableBuild": "-portable" }, "ReportingParameters": { @@ -158,7 +143,7 @@ "Type": "build/product/", "Platform": "arm64" } - } + } ] } ] diff --git a/clean.cmd b/clean.cmd new file mode 100644 index 00000000..15beb9f8 --- /dev/null +++ b/clean.cmd @@ -0,0 +1,34 @@ +@if not defined _echo @echo off +setlocal EnableDelayedExpansion + +echo Stop VBCSCompiler.exe execution. +for /f "tokens=2 delims=," %%F in ('tasklist /nh /fi "imagename eq VBCSCompiler.exe" /fo csv') do taskkill /f /PID %%~F + +:: Strip all dashes off the argument and use invariant +:: compare to match as many versions of "all" that we can +:: All other argument validation happens inside Run.exe +set NO_DASHES_ARG=%1 +if not defined NO_DASHES_ARG goto no_args +if /I [%NO_DASHES_ARG:-=%] == [all] ( + echo Cleaning entire working directory ... + call git clean -xdf + exit /b !ERRORLEVEL! +) +:no_args +if [%1]==[] set __args=-b +call %~dp0run.cmd clean %__args% %* +exit /b %ERRORLEVEL% + +:Usage +echo. +echo Repository cleaning script. +echo. +echo Options: +echo -b - Deletes the binary output directory. +echo -p - Deletes the repo-local nuget package directory. +echo -c - Deletes the user-local nuget package cache. +echo -all - Combines all of the above. +echo. +echo If no option is specified then clean.cmd -b is implied. + +exit /b 1 \ No newline at end of file diff --git a/clean.sh b/clean.sh new file mode 100755 index 00000000..179ba573 --- /dev/null +++ b/clean.sh @@ -0,0 +1,40 @@ +#!/usr/bin/env bash +# +# Copyright (c) .NET Foundation and contributors. All rights reserved. +# Licensed under the MIT license. See LICENSE file in the project root for full license information. +# +set -e + +usage() +{ + echo "Usage: clean [options]" + echo "Cleans the local dev environment." + echo + echo " -b Delete the binary output directory." + echo " -p Delete the repo-local NuGet package directory." + echo " -c Delete the user-local NuGet package caches." + echo " -all Cleans the root directory." + echo + echo "If no option is specified, then \"clean.sh -b\" is implied." + exit 1 +} + +if [ "$1" == "-?" ] || [ "$1" == "-h" ]; then + usage +fi + +__working_tree_root="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +if [ "$*" == "-all" ] +then + echo "Removing all untracked files in the working tree" + git clean -xdf $__working_tree_root + exit $? +fi + +if [ $# == 0 ]; then + __args=-b +fi + +$__working_tree_root/run.sh clean $__args $* +exit $? \ No newline at end of file diff --git a/config.json b/config.json new file mode 100644 index 00000000..700d99a4 --- /dev/null +++ b/config.json @@ -0,0 +1,337 @@ +{ + "settings": { + "OSGroup": { + "description": "OS Group for result binaries.", + "valueType": "property", + "values": ["Windows_NT", "Linux", "OSX", "FreeBSD", "NetBSD"], + "defaultValue": "Windows_NT" + }, + "RestoreDuringBuild": { + "description": "Enables/Disables the restoration of packages.", + "valueType": "property", + "values": ["True", "False"], + "defaultValue": true + }, + "Platform": { + "description": "Sets the value of the platform.", + "valueType": "property", + "values": ["x86", "arm", "x64", "amd64"], + "defaultValue": "x64" + }, + "Architecture":{ + "description": "Build on the specified architecture (x64 or x86 (supported only on Windows), default: x64)", + "valueType": "property", + "values": ["x64", "x86"], + "defaultValue": "x64" + }, + "PortableBuild": { + "description": "Indicates if this is a portable build.", + "valueType": "property", + "values": [ "True", "False"], + "defaultValue": "False" + }, + "DistroRid": { + "description": "Specifies the distro rid for Unix OS.", + "valueType": "property", + "values": [], + "defaultValue": "${OSRid}" + }, + "TargetArchitecture":{ + "description": "Build for the specified architecture (x64, x86 (supported only on Windows), arm, or arm64, default: x64)", + "valueType": "property", + "values": ["x64", "x86", "arm", "arm64", "armel"], + "defaultValue": "x64" + }, + "Framework":{ + "description": "Build the specified framework (netcoreapp1.0 or netcoreapp1.1, default: netcoreapp1.0)", + "valueType": "property", + "values": ["netcoreapp1.0", "netcoreapp1.1", "netcoreapp2.0"], + "defaultValue": "netcoreapp2.0" + }, + "ConfigurationGroup": { + "description": "Sets the configuration group as Release or Debug.", + "valueType": "property", + "values": ["Release", "Debug"], + "defaultValue": "Debug" + }, + "MsBuildLogging": { + "description": "MsBuild logging options.", + "valueType": "passThrough", + "values": [], + "defaultValue": "/flp:v=normal" + }, + "Project": { + "description": "Project where the commands are going to be applied.", + "valueType": "passThrough", + "values": [], + "defaultValue": "" + }, + "ExtraParameters": { + "description": "Extra parameters will be passed to the selected command.", + "valueType": "passThrough", + "values": [], + "defaultValue": "" + }, + "BatchRestorePackages": { + "description": "MsBuild target that restores the packages.", + "valueType": "target", + "values": [], + "defaultValue": "" + }, + "CleanAllProjects": { + "description": "MsBuild target that deletes the binary output directory.", + "valueType": "target", + "values": [], + "defaultValue": "" + }, + "CleanPackages": { + "description": "MsBuild target that deletes the repo-local nuget package directory.", + "valueType": "target", + "values": [], + "defaultValue": "" + }, + "CleanPackagesCache": { + "description": "MsBuild target that deletes the user-local nuget package cache.", + "valueType": "target", + "values": [], + "defaultValue": "" + }, + "GenerateNativeVersionInfo": { + "description": "Enables generation of the native version header.", + "valueType": "property", + "values": ["True", "False"], + "defaultValue": true + }, + "GenerateVersionHeader": { + "description": "MsBuild target that generates the version header.", + "valueType": "target", + "values": [], + "defaultValue": "" + }, + "CmakeBuildType": { + "description": "Sets the value of the build configuration.", + "valueType": "passThrough", + "values": [], + "defaultValue": "Debug" + }, + "HostOs": { + "description": "OS for result binaries.", + "valueType": "passThrough", + "values": ["AnyOS", "Windows_NT", "Linux", "OSX", "FreeBSD", "NetBSD"], + "defaultValue": "${OSName}" + }, + "ProcessorCount": { + "description": "Sets the value of the number of processors available.", + "valueType": "passThrough", + "values": ["Numeric values"], + "defaultValue": "--numproc ${ProcessorCount}" + }, + "AdditionalArgs": { + "description": "Pass additional arguments to the native_build script", + "valueType": "passThrough", + "values": [], + "defaultValue": "" + }, + "SkipTests": { + "description": "Skip running tests", + "valueType": "property", + "values": ["true", "false"], + "defaultValue":false + } + }, + "commands": { + "sync":{ + "alias":{ + "p":{ + "description": "Restores all NuGet packages for repository.", + "settings":{ + "RestoreDuringBuild": true, + "BatchRestorePackages": "default" + } + }, + "verbose":{ + "description": "Passes /flp:v=diag to the msbuild command or the value passed by the user.", + "settings":{ + "MsBuildLogging": "/flp:v=diag;LogFile=sync.log" + } + } + }, + "defaultValues":{ + "toolName": "msbuild", + "settings": { + "MsBuildLogging":"/flp:v=normal;LogFile=sync.log", + "Project":"build.proj" + } + } + }, + "build":{ + "alias":{ + "binaries":{ + "description": "Only builds binaries. It doesn't restore packages.", + "settings":{ + "RestoreDuringBuild": false + } + }, + "GenerateVersion": { + "description": "Generates the version header for native binaries.", + "settings": { + "GenerateNativeVersionInfo": true, + "GenerateVersionHeader": "default" + } + }, + "debug":{ + "description": "Sets ConfigurationGroup=Debug or the value passed by the user.", + "settings":{ + "ConfigurationGroup": "Debug" + } + }, + "release":{ + "description": "Sets ConfigurationGroup=Release or the value passed by the user.", + "settings":{ + "ConfigurationGroup": "Release" + } + }, + "verbose":{ + "description": "Passes /flp:v=diag to the msbuild command or the value passed by the user.", + "settings":{ + "MsBuildLogging": "/flp:v=diag" + } + }, + "cmakelog":{ + "description": "Writes msbuild log to cmake.log", + "settings":{ + "MsBuildLogging": "/flp:v=diag;LogFile=msbuild-cmake.log" + } + }, + "os":{ + "description": "Sets OSGroup=AnyOS or the value passed by the user.", + "settings":{ + "OSGroup": "default" + } + }, + "portable":{ + "description": "Make the build-native script generate binaries that are portable for the platform.", + "settings": { + "PortableBuild":"true" + } + }, + "skipTests":{ + "description": "Skips running tests", + "settings":{ + "SkipTests": "true" + } + } + }, + "defaultValues":{ + "toolName": "msbuild", + "settings": { + "Architecture": "default", + "TargetArchitecture": "default", + "OSGroup": "default", + "MsBuildLogging":"default", + "DistroRid":"default", + "Project":"build.proj" + } + } + }, + "build-native":{ + "alias":{ + "verbose":{ + "description": "Passes /flp:v=diag to the msbuild command or the value passed by the user.", + "settings":{ + "MsBuildLogging": "/flp:v=diag;LogFile=msbuild-cmake.log" + } + }, + "portable":{ + "description": "Make the build-native script generate binaries that are portable for the platform.", + "settings": { + "PortableBuild":"true" + } + } + }, + "defaultValues":{ + "toolName": "msbuild", + "settings": { + "Architecture": "default", + "TargetArchitecture": "default", + "Framework": "default", + "OSGroup": "default", + "MsBuildLogging":"/flp:v=n;LogFile=msbuild-cmake.log" + } + } + }, + "build-custom":{ + "alias":{ + "verbose":{ + "description": "Passes /flp:v=diag to the msbuild command or the value passed by the user.", + "settings":{ + "MsBuildLogging": "/flp:v=diag;LogFile=msbuild.log" + } + } + }, + "defaultValues":{ + "toolName": "msbuild", + "settings": { + "Architecture": "default", + "TargetArchitecture": "default", + "Framework": "default", + "OSGroup": "default", + "MsBuildLogging":"/flp:v=n;LogFile=msbuild.log" + } + } + }, + "clean":{ + "alias":{ + "b":{ + "description": "Deletes the binary output directory.", + "settings":{ + "CleanAllProjects": "default" + } + }, + "p":{ + "description": "Deletes the repo-local nuget package directory.", + "settings":{ + "CleanPackages": "default" + } + } + }, + "defaultValues":{ + "toolName": "msbuild", + "settings": { + "MsBuildLogging":"/flp:v=normal;LogFile=clean.log", + "Project":"build.proj" + } + } + } + }, + "tools": { + "msbuild": { + "osSpecific":{ + "windows": { + "defaultParameters": "/nologo /verbosity:minimal /clp:Summary /maxcpucount /nodeReuse:false", + "path": "Tools/msbuild.cmd" + }, + "unix":{ + "defaultParameters": "/nologo /verbosity:minimal /clp:Summary /maxcpucount /l:BinClashLogger,Tools/Microsoft.DotNet.Build.Tasks.dll;LogFile=binclash.log", + "path": "Tools/msbuild.sh" + } + }, + "valueTypes": { + "property": "/p:{name}={value}", + "target": "/t:{name}", + "internal": "/{name}" + } + }, + "terminal": { + "osSpecific":{ + "windows": { + "filesExtension": "cmd" + }, + "unix":{ + "filesExtension": "sh" + } + }, + "valueTypes": {} + } + } +} diff --git a/dependencies.props b/dependencies.props new file mode 100644 index 00000000..1daff8ba --- /dev/null +++ b/dependencies.props @@ -0,0 +1,14 @@ + + + + 2.0.0-preview2-25226-02 + 2.0.0-preview2-25226-02 + + + + + <_ProjectJsonExcludes Include="$(SourceDir)test\**\project.json" /> + <_ProjectJsonExcludes Include="$(SourceDir)pkg\**\project.json" /> + + + \ No newline at end of file diff --git a/dir.props b/dir.props new file mode 100644 index 00000000..33398c3c --- /dev/null +++ b/dir.props @@ -0,0 +1,367 @@ + + + + + + + + + 2 + 0 + 0 + false + false + preview2 + $(PreReleaseLabel) + master + master + + + + Microsoft.NETCore.App + + + + + + Unix + $(OS) + + + + + $(MSBuildThisFileDirectory) + $(ProjectDir)src/ + + + $(ProjectDir)Bin/ + $(BinDir) + $(BinDir)obj/ + $(ObjDir) + + + $(ProjectDir)packages/ + $(ProjectDir)Tools/ + $(ToolRuntimePath)local/ + $(ToolRuntimePath) + $(ProjectDir)Tools/ + $(ToolRuntimePath) + $(ToolsDir)net46/ + $(LocalToolRuntimePath) + $(LocalToolRuntimePath)net46/ + $(BuildToolsTaskDir) + $(ToolsDir)dotnetcli/ + + + + + + + + false + $(PreReleaseLabel)- + $(VersionSuffix)$(BuildNumberMajor)-$(BuildNumberMinor) + + $(MajorVersion).$(MinorVersion).$(PatchVersion)-$(VersionSuffix) + $(MajorVersion).$(MinorVersion).$(PatchVersion) + + $(ProductionVersion) + $(ProductVersion) + + $(SharedFrameworkNugetVersion) + $(SharedFrameworkNugetVersion) + $(SharedFrameworkNugetVersion) + $(SharedFrameworkNugetVersion) + $(SharedFrameworkNugetVersion) + $(SharedFrameworkNugetVersion) + + $(ProductVersion) + $(ProductVersion) + $(ProductVersion) + $(ProductVersion) + + + + + + + + + + + + + + $(ToolsDir)NuGet.CommandLine/NuGet.exe + @(NuGetSourceList -> '-source %(Identity)', ' ') + $(NuGetPackageSource) + + "$(NuGetToolPath)" + $(NugetRestoreCommand) install + + $(NugetRestoreCommand) -OutputDirectory "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" + $(NugetRestoreCommand) $(NuGetConfigCommandLine) + $(NugetRestoreCommand) -Verbosity detailed + mono $(NuGetRestoreCommand) + + + + + + + + + + + + + + + + <_DnuExcludeProjectJsonFiles Include="$(MSBuildThisFileDirectory)src\pkg\projects\**\project.json" /> + <_DnuExcludeProjectJsonFiles Include="$(MSBuildThisFileDirectory)src\test\**\project.json" /> + <_DnuExcludeProjectJsonFiles Include="$(MSBuildThisFileDirectory)Bin\**\project.json" /> + + <_ProjectJsonFiles Include="$(MSBuildThisFileDirectory)**\project.json" Exclude="@(_DnuExcludeProjectJsonFiles)" /> + + %(AdditionalArgs) --disable-parallel + + + %(AdditionalArgs) --disable-parallel --infer-runtimes + + + + + + $(DotnetCliPath)dotnet.exe + $(DotnetCliPath)dotnet + $(DotnetToolCommand) + @(DnuSourceList -> '--source %(Identity)', ' ') + + "$(DotnetToolCommand)" + $(DnuRestoreCommand) restore + $(DnuRestoreCommand) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" $(DnuRestoreSource) + $(DnuRestoreCommand) --lock + + + + + false + + + + x64 + $(TargetArchitecture) + + + + + + $(OsEnvironment) + + + + Debug + $(ConfigurationGroup) + $(OSGroup)_$(Configuration) + + + + + Debug + Release + Debug + + Windows_NT + Unix + Linux + OSX + FreeBSD + NetBSD + AnyOS + + + + + + + true + false + full + $(DefineConstants),DEBUG,TRACE + + + + + true + true + pdbonly + $(DefineConstants),TRACE + + + + + $(ConfigurationErrorMsg);Unknown ConfigurationGroup [$(ConfigurationGroup)] specificed in your project. + + + + + + .exe + + + + netcoreapp2.0 + netcoreapp1.1 + + + + win7-x86 + win7-x64 + win8-arm + win10-arm64 + + + osx.10.12-x64 + + + $(DistroRid) + + + + win-$(TargetArchitecture) + osx-$(TargetArchitecture) + linux-$(TargetArchitecture) + + + + win10-$(TargetArchitecture) + $(TargetRid) + + + + + $(TargetRid).$(ConfigurationGroup) + + $(BinDir) + $(BaseOutputPath)$(OSPlatformConfig)\ + $(BaseOutputPath)$(OSPlatformConfig)\$(MSBuildProjectName)\ + + $(BaseIntermediateOutputPath)$(OSPlatformConfig)\ + $(IntermediateOutputRootPath)$(MSBuildProjectName)\ + + $(BaseOutputRootPath)corehost\ + + $(BinDir)$(OSPlatformConfig)/ + $(PackagesBasePath)packages/ + $(PackagesOutDir) + $(PackagesBasePath)symbols/ + + $(IntermediateOutputRootPath)sharedFrameworkPublish\ + $(SharedFrameworkPublishDir)shared\$(SharedFrameworkName)\$(HostVersion) + + + + false + _portable + $(BaseOutputRootPath)sharedfx_$(TargetRid)$(PortableLabel)_$(ConfigurationGroup)_version_badge.svg + + + + .zip + .tar.gz + .msi + .pkg + .deb + .exe + $(InstallerExtension) + + + + + true + true + false + false + + + + + 4 + true + + + + false + false + false + false + false + false + + + + + true + + + + + true + true + + + + + true + true + true + + + + + true + true + true + + + + + true + true + + + + + + + <_TargetFrameworkDirectories>$(MSBuildThisFileDirectory)documentation + <_FullFrameworkReferenceAssemblyPaths>$(MSBuildThisFileDirectory)documentation + + + + true + + + + + + + diff --git a/dir.targets b/dir.targets new file mode 100644 index 00000000..a59808a0 --- /dev/null +++ b/dir.targets @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + N/A + + + + + + + + + + + + + + $(MajorVersion).$(MinorVersion).$(PatchVersion).$(BuildNumberMajor) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dir.traversal.targets b/dir.traversal.targets new file mode 100644 index 00000000..6f308484 --- /dev/null +++ b/dir.traversal.targets @@ -0,0 +1,102 @@ + + + + + + $(MSBuildProjectDefaultTargets) + + + + + + + + + + + + + + Clean + + + + + + + + + + + + + + + + RestorePackages + + + + + + + + + + + + + + $(TraversalBuildDependsOn); + BuildAllProjects; + + + + $(TraversalCleanDependsOn); + CleanAllProjects; + + + + $(TraversalRestorePackagesDependsOn) + RestoreAllProjectPackages; + + + + + + + + + + + + \ No newline at end of file diff --git a/global.json b/global.json index 30ce72c4..2d77e6f7 100644 --- a/global.json +++ b/global.json @@ -1,4 +1,4 @@ { - "projects": [ "src", "test", "setuptools", "build_projects" ], - "sdk": { "version": "1.0.0-preview2-003121" } + "projects": [ "src", "src/managed", "test", "tools-local" ], + "sdk": { "version": "1.0.0-preview2-003121" } } diff --git a/pkg/init-tools.cmd b/init-tools.cmd similarity index 72% rename from pkg/init-tools.cmd rename to init-tools.cmd index 13d61e8e..eac835f3 100644 --- a/pkg/init-tools.cmd +++ b/init-tools.cmd @@ -1,4 +1,4 @@ -@if "%_echo%" neq "on" echo off +@if not defined _echo @echo off setlocal set INIT_TOOLS_LOG=%~dp0init-tools.log @@ -13,7 +13,7 @@ set PROJECT_JSON_PATH=%TOOLRUNTIME_DIR%\%BUILDTOOLS_VERSION% set PROJECT_JSON_FILE=%PROJECT_JSON_PATH%\project.json set PROJECT_JSON_CONTENTS={ "dependencies": { "Microsoft.DotNet.BuildTools": "%BUILDTOOLS_VERSION%" }, "frameworks": { "netcoreapp1.0": { } } } set BUILD_TOOLS_SEMAPHORE=%PROJECT_JSON_PATH%\init-tools.completed - +set DUMMY_GLOBAL_JSON_PATH=%PACKAGES_DIR%global.json :: if force option is specified then clean the tool runtime and build tools package directory to force it to get recreated if [%1]==[force] ( if exist "%TOOLRUNTIME_DIR%" rmdir /S /Q "%TOOLRUNTIME_DIR%" @@ -32,18 +32,22 @@ if NOT exist "%PROJECT_JSON_PATH%" mkdir "%PROJECT_JSON_PATH%" echo %PROJECT_JSON_CONTENTS% > "%PROJECT_JSON_FILE%" echo Running %0 > "%INIT_TOOLS_LOG%" +set /p DOTNET_VERSION=< "%~dp0DotnetCLIVersion.txt" if exist "%DOTNET_CMD%" goto :afterdotnetrestore +:: core-setup repo has a global.json which causes a conflict with the init-tools publish step +if NOT exist "%PACKAGES_DIR%" mkdir %PACKAGES_DIR% > nul 2>&1 +echo { "projects": [] } > %DUMMY_GLOBAL_JSON_PATH% + echo Installing dotnet cli... if NOT exist "%DOTNET_PATH%" mkdir "%DOTNET_PATH%" -set /p DOTNET_VERSION=< "%~dp0DotnetCLIVersion.txt" set DOTNET_ZIP_NAME=dotnet-dev-win-x64.%DOTNET_VERSION%.zip set DOTNET_REMOTE_PATH=https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/%DOTNET_VERSION%/%DOTNET_ZIP_NAME% set DOTNET_LOCAL_PATH=%DOTNET_PATH%%DOTNET_ZIP_NAME% echo Installing '%DOTNET_REMOTE_PATH%' to '%DOTNET_LOCAL_PATH%' >> "%INIT_TOOLS_LOG%" powershell -NoProfile -ExecutionPolicy unrestricted -Command "$retryCount = 0; $success = $false; do { try { (New-Object Net.WebClient).DownloadFile('%DOTNET_REMOTE_PATH%', '%DOTNET_LOCAL_PATH%'); $success = $true; } catch { if ($retryCount -ge 6) { throw; } else { $retryCount++; Start-Sleep -Seconds (5 * $retryCount); } } } while ($success -eq $false); Add-Type -Assembly 'System.IO.Compression.FileSystem' -ErrorVariable AddTypeErrors; if ($AddTypeErrors.Count -eq 0) { [System.IO.Compression.ZipFile]::ExtractToDirectory('%DOTNET_LOCAL_PATH%', '%DOTNET_PATH%') } else { (New-Object -com shell.application).namespace('%DOTNET_PATH%').CopyHere((new-object -com shell.application).namespace('%DOTNET_LOCAL_PATH%').Items(),16) }" >> "%INIT_TOOLS_LOG%" if NOT exist "%DOTNET_LOCAL_PATH%" ( - echo ERROR: Could not install dotnet cli correctly. See '%INIT_TOOLS_LOG%' for more details. + echo ERROR: Could not install dotnet cli correctly. See '%INIT_TOOLS_LOG%' for more details. 1>&2 exit /b 1 ) @@ -51,24 +55,35 @@ if NOT exist "%DOTNET_LOCAL_PATH%" ( if exist "%BUILD_TOOLS_PATH%" goto :afterbuildtoolsrestore echo Restoring BuildTools version %BUILDTOOLS_VERSION%... -echo Running: "%DOTNET_CMD%" restore "%PROJECT_JSON_FILE%" --packages %PACKAGES_DIR% --source "%BUILDTOOLS_SOURCE%" >> "%INIT_TOOLS_LOG%" -call "%DOTNET_CMD%" restore "%PROJECT_JSON_FILE%" --packages %PACKAGES_DIR% --source "%BUILDTOOLS_SOURCE%" >> "%INIT_TOOLS_LOG%" +echo Running: "%DOTNET_CMD%" restore "%PROJECT_JSON_FILE%" --no-cache --packages %PACKAGES_DIR% --source "%BUILDTOOLS_SOURCE%" >> "%INIT_TOOLS_LOG%" +call "%DOTNET_CMD%" restore "%PROJECT_JSON_FILE%" --no-cache --packages %PACKAGES_DIR% --source "%BUILDTOOLS_SOURCE%" >> "%INIT_TOOLS_LOG%" if NOT exist "%BUILD_TOOLS_PATH%init-tools.cmd" ( - echo ERROR: Could not restore build tools correctly. See '%INIT_TOOLS_LOG%' for more details. + echo ERROR: Could not restore build tools correctly. See '%INIT_TOOLS_LOG%' for more details. 1>&2 exit /b 1 ) :afterbuildtoolsrestore -echo Initializing BuildTools ... +echo Initializing BuildTools... echo Running: "%BUILD_TOOLS_PATH%init-tools.cmd" "%~dp0" "%DOTNET_CMD%" "%TOOLRUNTIME_DIR%" >> "%INIT_TOOLS_LOG%" call "%BUILD_TOOLS_PATH%init-tools.cmd" "%~dp0" "%DOTNET_CMD%" "%TOOLRUNTIME_DIR%" >> "%INIT_TOOLS_LOG%" set INIT_TOOLS_ERRORLEVEL=%ERRORLEVEL% if not [%INIT_TOOLS_ERRORLEVEL%]==[0] ( - echo ERROR: An error occured when trying to initialize the tools. Please check '%INIT_TOOLS_LOG%' for more details. - exit /b %INIT_TOOLS_ERRORLEVEL% + echo ERROR: An error occured when trying to initialize the tools. Please check '%INIT_TOOLS_LOG%' for more details. 1>&2 + exit /b %INIT_TOOLS_ERRORLEVEL% ) +echo Updating CLI NuGet Frameworks map... +robocopy "%TOOLRUNTIME_DIR%" "%TOOLRUNTIME_DIR%\dotnetcli\sdk\%DOTNET_VERSION%" NuGet.Frameworks.dll /XO >> "%INIT_TOOLS_LOG%" +set UPDATE_CLI_ERRORLEVEL=%ERRORLEVEL% +if %UPDATE_CLI_ERRORLEVEL% GTR 1 ( + echo ERROR: Failed to update Nuget for CLI {Error level %UPDATE_CLI_ERRORLEVEL%}. Please check '%INIT_TOOLS_LOG%' for more details. 1>&2 + exit /b %UPDATE_CLI_ERRORLEVEL% +) + +if exist %~dp0tools-override xcopy /Y/e/s %~dp0tools-override\* %TOOLRUNTIME_DIR% + :: Create sempahore file echo Done initializing tools. -echo Init-Tools.cmd completed for BuildTools Version: %BUILDTOOLS_VERSION% > "%BUILD_TOOLS_SEMAPHORE%" \ No newline at end of file +echo Init-Tools.cmd completed for BuildTools Version: %BUILDTOOLS_VERSION% > "%BUILD_TOOLS_SEMAPHORE%" +exit /b 0 diff --git a/init-tools.sh b/init-tools.sh new file mode 100755 index 00000000..b6aa4681 --- /dev/null +++ b/init-tools.sh @@ -0,0 +1,184 @@ +#!/usr/bin/env bash + +__scriptpath=$(cd "$(dirname "$0")"; pwd -P) +__init_tools_log=$__scriptpath/init-tools.log +__PACKAGES_DIR=$__scriptpath/packages +__TOOLRUNTIME_DIR=$__scriptpath/Tools +__DOTNET_PATH=$__TOOLRUNTIME_DIR/dotnetcli +__DOTNET_CMD=$__DOTNET_PATH/dotnet +if [ -z "$__BUILDTOOLS_SOURCE" ]; then __BUILDTOOLS_SOURCE=https://dotnet.myget.org/F/dotnet-buildtools/api/v3/index.json; fi +__BUILD_TOOLS_PACKAGE_VERSION=$(cat $__scriptpath/BuildToolsVersion.txt) +__DOTNET_TOOLS_VERSION=$(cat $__scriptpath/DotnetCLIVersion.txt) +__BUILD_TOOLS_PATH=$__PACKAGES_DIR/Microsoft.DotNet.BuildTools/$__BUILD_TOOLS_PACKAGE_VERSION/lib +__PROJECT_JSON_PATH=$__TOOLRUNTIME_DIR/$__BUILD_TOOLS_PACKAGE_VERSION +__PROJECT_JSON_FILE=$__PROJECT_JSON_PATH/project.json +__PROJECT_JSON_CONTENTS="{ \"dependencies\": { \"Microsoft.DotNet.BuildTools\": \"$__BUILD_TOOLS_PACKAGE_VERSION\" }, \"frameworks\": { \"netcoreapp1.0\": { } } }" +__INIT_TOOLS_DONE_MARKER=$__PROJECT_JSON_PATH/done +__DUMMY_GLOBAL_JSON_PATH=$__PACKAGES_DIR/global.json +# Extended version of platform detection logic from dotnet/cli/scripts/obtain/dotnet-install.sh 16692fc +get_current_linux_name() { + # Detect Distro + if [ "$(cat /etc/*-release | grep -cim1 ubuntu)" -eq 1 ]; then + if [ "$(cat /etc/*-release | grep -cim1 16.04)" -eq 1 ]; then + echo "ubuntu.16.04" + return 0 + fi + if [ "$(cat /etc/*-release | grep -cim1 16.10)" -eq 1 ]; then + echo "ubuntu.16.10" + return 0 + fi + + echo "ubuntu" + return 0 + elif [ "$(cat /etc/*-release | grep -cim1 centos)" -eq 1 ]; then + echo "centos" + return 0 + elif [ "$(cat /etc/*-release | grep -cim1 rhel)" -eq 1 ]; then + echo "rhel" + return 0 + elif [ "$(cat /etc/*-release | grep -cim1 debian)" -eq 1 ]; then + echo "debian" + return 0 + elif [ "$(cat /etc/*-release | grep -cim1 alpine)" -eq 1 ]; then + echo "alpine" + return 0 + elif [ "$(cat /etc/*-release | grep -cim1 fedora)" -eq 1 ]; then + if [ "$(cat /etc/*-release | grep -cim1 23)" -eq 1 ]; then + echo "fedora.23" + return 0 + fi + if [ "$(cat /etc/*-release | grep -cim1 24)" -eq 1 ]; then + echo "fedora.24" + return 0 + fi + elif [ "$(cat /etc/*-release | grep -cim1 opensuse)" -eq 1 ]; then + if [ "$(cat /etc/*-release | grep -cim1 13.2)" -eq 1 ]; then + echo "opensuse.13.2" + return 0 + fi + if [ "$(cat /etc/*-release | grep -cim1 42.1)" -eq 1 ]; then + echo "opensuse.42.1" + return 0 + fi + fi + + # Cannot determine Linux distribution, assuming Ubuntu 14.04. + echo "ubuntu" + return 0 +} + +if [ -z "$__DOTNET_PKG" ]; then + if [ "$(uname -m | grep "i[3456]86")" = "i686" ]; then + echo "Warning: build not supported on 32 bit Unix" + fi +OSName=$(uname -s) + case $OSName in + Darwin) + OS=OSX + __DOTNET_PKG=dotnet-dev-osx-x64 + ulimit -n 2048 + ;; + + Linux) + __DOTNET_PKG="dotnet-dev-$(get_current_linux_name)-x64" + OS=Linux + ;; + + *) + echo "Unsupported OS '$OSName' detected. Downloading ubuntu-x64 tools." + OS=Linux + __DOTNET_PKG=dotnet-dev-ubuntu-x64 + ;; + esac +fi + +if [ ! -e $__INIT_TOOLS_DONE_MARKER ]; then + __PATCH_CLI_NUGET_FRAMEWORKS=0 + + if [ -e $__TOOLRUNTIME_DIR ]; then rm -rf -- $__TOOLRUNTIME_DIR; fi + echo "Running: $__scriptpath/init-tools.sh" > $__init_tools_log + + # core-setup repo has a global.json which causes a conflict with the init-tools publish step + if [ ! -e $__PACKAGES_DIR ]; then + mkdir -p $__PACKAGES_DIR + fi + echo '{ "projects": [] }' > $__DUMMY_GLOBAL_JSON_PATH + + if [ ! -e $__DOTNET_PATH ]; then + + mkdir -p "$__DOTNET_PATH" + + if [ -n "$DOTNET_TOOLSET_DIR" ] && [ -d "$DOTNET_TOOLSET_DIR/$__DOTNET_TOOLS_VERSION" ]; then + echo "Copying $DOTNET_TOOLSET_DIR/$__DOTNET_TOOLS_VERSION to $__DOTNET_PATH" >> $__init_tools_log + cp -r $DOTNET_TOOLSET_DIR/$__DOTNET_TOOLS_VERSION/* $__DOTNET_PATH + elif [ -n "$DOTNET_TOOL_DIR" ] && [ -d "$DOTNET_TOOL_DIR" ]; then + echo "Copying $DOTNET_TOOL_DIR to $__DOTNET_PATH" >> $__init_tools_log + cp -r $DOTNET_TOOL_DIR/* $__DOTNET_PATH + else + echo "Installing dotnet cli..." + __DOTNET_LOCATION="https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/${__DOTNET_TOOLS_VERSION}/${__DOTNET_PKG}.${__DOTNET_TOOLS_VERSION}.tar.gz" + # curl has HTTPS CA trust-issues less often than wget, so lets try that first. + echo "Installing '${__DOTNET_LOCATION}' to '$__DOTNET_PATH/dotnet.tar'" >> $__init_tools_log + which curl > /dev/null 2> /dev/null + if [ $? -ne 0 ]; then + wget -q -O $__DOTNET_PATH/dotnet.tar ${__DOTNET_LOCATION} + else + curl --retry 10 -sSL --create-dirs -o $__DOTNET_PATH/dotnet.tar ${__DOTNET_LOCATION} + fi + cd $__DOTNET_PATH + tar -xf $__DOTNET_PATH/dotnet.tar + + cd $__scriptpath + + __PATCH_CLI_NUGET_FRAMEWORKS=1 + fi + fi + + + if [ -n "$BUILD_TOOLS_TOOLSET_DIR" ] && [ -d "$BUILD_TOOLS_TOOLSET_DIR/$__BUILD_TOOLS_PACKAGE_VERSION" ]; then + echo "Copying $BUILD_TOOLS_TOOLSET_DIR/$__BUILD_TOOLS_PACKAGE_VERSION to $__TOOLRUNTIME_DIR" >> $__init_tools_log + cp -r $BUILD_TOOLS_TOOLSET_DIR/$__BUILD_TOOLS_PACKAGE_VERSION/* $__TOOLRUNTIME_DIR + elif [ -n "$BUILD_TOOLS_TOOL_DIR" ] && [ -d "$BUILD_TOOLS_TOOL_DIR" ]; then + echo "Copying $BUILD_TOOLS_TOOL_DIR to $__TOOLRUNTIME_DIR" >> $__init_tools_log + cp -r $BUILD_TOOLS_TOOL_DIR/* $__TOOLRUNTIME_DIR + else + if [ ! -d "$__PROJECT_JSON_PATH" ]; then mkdir "$__PROJECT_JSON_PATH"; fi + echo $__PROJECT_JSON_CONTENTS > "$__PROJECT_JSON_FILE" + + if [ ! -e $__BUILD_TOOLS_PATH ]; then + echo "Restoring BuildTools version $__BUILD_TOOLS_PACKAGE_VERSION..." + echo "Running: $__DOTNET_CMD restore \"$__PROJECT_JSON_FILE\" --no-cache --packages $__PACKAGES_DIR --source $__BUILDTOOLS_SOURCE" >> $__init_tools_log + $__DOTNET_CMD restore "$__PROJECT_JSON_FILE" --no-cache --packages $__PACKAGES_DIR --source $__BUILDTOOLS_SOURCE >> $__init_tools_log + if [ ! -e "$__BUILD_TOOLS_PATH/init-tools.sh" ]; then echo "ERROR: Could not restore build tools correctly. See '$__init_tools_log' for more details."1>&2; fi + fi + + echo "Initializing BuildTools..." + echo "Running: $__BUILD_TOOLS_PATH/init-tools.sh $__scriptpath $__DOTNET_CMD $__TOOLRUNTIME_DIR" >> $__init_tools_log + $__BUILD_TOOLS_PATH/init-tools.sh $__scriptpath $__DOTNET_CMD $__TOOLRUNTIME_DIR >> $__init_tools_log + if [ "$?" != "0" ]; then + echo "ERROR: An error occured when trying to initialize the tools. Please check '$__init_tools_log' for more details."1>&2 + exit 1 + fi + fi + + if [ $__PATCH_CLI_NUGET_FRAMEWORKS -eq 1 ]; then + echo "Updating CLI NuGet Frameworks map..." + cp $__TOOLRUNTIME_DIR/NuGet.Frameworks.dll $__TOOLRUNTIME_DIR/dotnetcli/sdk/$__DOTNET_TOOLS_VERSION >> $__init_tools_log + if [ "$?" != "0" ]; then + echo "ERROR: An error occured when updating Nuget for CLI . Please check '$__init_tools_log' for more details."1>&2 + exit 1 + fi + fi + + if [ -e $__scriptpath/tools-override/crossgen.sh ]; then + $__scriptpath/tools-override/crossgen.sh $__scriptpath/Tools + fi + + cp -fR $__scriptpath/tools-override/* $__TOOLRUNTIME_DIR + + touch $__INIT_TOOLS_DONE_MARKER + + echo "Done initializing tools." +else + echo "Tools are already initialized" +fi diff --git a/netci.groovy b/netci.groovy index 884e8554..d7c3a14a 100644 --- a/netci.groovy +++ b/netci.groovy @@ -10,7 +10,10 @@ def project = GithubProject def branch = GithubBranchName def isPR = true -def platformList = ['Debian8.2:x64:Debug', 'PortableLinux:x64:Release', 'Ubuntu:arm:Release', 'Ubuntu:x64:Release', 'Ubuntu16.04:arm:Release', 'Ubuntu16.04:x64:Release', 'Ubuntu16.10:x64:Release', 'OSX10.12:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Windows_NT:arm:Debug', 'Fedora24:x64:Debug', 'OpenSUSE42.1:x64:Debug'] +// Move these to the platform list when they are re-enabled +// [ 'Ubuntu:arm:Release', 'Ubuntu16.04:arm:Release', 'Windows_NT:arm:Debug', ] + +def platformList = ['Debian8.2:x64:Debug', 'PortableLinux:x64:Release', 'Ubuntu:x64:Release', 'Ubuntu16.04:x64:Release', 'Ubuntu16.10:x64:Release', 'OSX10.12:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Fedora24:x64:Debug', 'OpenSUSE42.1:x64:Debug'] def static getBuildJobName(def configuration, def os, def architecture) { return configuration.toLowerCase() + '_' + os.toLowerCase() + '_' + architecture.toLowerCase() @@ -28,17 +31,9 @@ platformList.each { platform -> // Calculate build command if (os == 'Windows_NT') { - if (architecture == 'arm') { - buildCommand = ".\\build.cmd -Configuration ${configuration} -TargetArch ${architecture} -Targets Default" - } - else { - buildCommand = ".\\build.cmd -Configuration ${configuration} -Architecture ${architecture} -Targets Default" - } - - } - else if (os == 'Windows_2016') { - buildCommand = ".\\build.cmd -Configuration ${configuration} -Architecture ${architecture} -RunInstallerTestsInDocker -Targets Default" + buildCommand = ".\\build.cmd -ConfigurationGroup=${configuration} -TargetArchitecture=${architecture}" } +/* else if ((os.startsWith("Ubuntu") || os.startsWith("Tizen")) && (architecture == 'arm' || architecture == 'armel')) { def linuxcodename = ''; @@ -54,12 +49,13 @@ platformList.each { platform -> // Call the arm32_ci_script.sh script to perform the cross build by using docker buildCommand = "./scripts/arm32_ci_script.sh --buildConfig=${configuration} --${architecture} --linuxCodeName=${linuxcodename} --verbose" } +*/ else if (os == 'Ubuntu') { - buildCommand = "./build.sh --skip-prereqs --configuration ${configuration} --docker ubuntu.14.04 --targets Default" + buildCommand = "./build.sh --configuration ${configuration} --docker ubuntu.14.04" } else { // Jenkins non-Ubuntu CI machines don't have docker - buildCommand = "./build.sh --skip-prereqs --configuration ${configuration} --targets Default" + buildCommand = "./build.sh ${configuration}" if (os == 'PortableLinux') { @@ -97,56 +93,58 @@ platformList.each { platform -> Utilities.addGithubPRTriggerForBranch(newJob, branch, "${contextString} Build", "(?i).*test\\W+${contextString}.*", true /* trigger on comment phrase only */) } else { - Utilities.addGithubPRTriggerForBranch(newJob, branch, "${osForGHTrigger} ${architecture} ${configuration} Build") + Utilities.addGithubPRTriggerForBranch(newJob, branch, "${osForGHTrigger} ${architecture} ${configuration} Build", "(?i).*test buildtools please.*") } ArchivalSettings settings = new ArchivalSettings(); - def archiveString = ["tar.gz", "zip", "deb", "msi", "pkg", "exe", "nupkg"].collect { "artifacts/*/packages/*.${it},artifacts/*/corehost/*.${it},pkg/bin/packages/*.${it}" }.join(",") + def archiveString = ["tar.gz", "zip", "deb", "msi", "pkg", "exe", "nupkg"].collect { "Bin/*/packages/*.${it},Bin/*/corehost/*.${it}" }.join(",") settings.addFiles(archiveString) settings.setArchiveOnSuccess() settings.setFailIfNothingArchived() Utilities.addArchival(newJob, settings) + + newJob.with { disabled(false) } } // ************************** // Define ARM64 building. // ************************** -['Windows_NT'].each { os -> - ['Release'].each { configurationGroup -> - def newJobName = "${configurationGroup.toLowerCase()}_${os.toLowerCase()}_arm64" - def arm64Users = ['ianhays', 'kyulee1', 'gkhanna79', 'weshaggard', 'stephentoub', 'rahku', 'ramarag'] - def newJob = job(Utilities.getFullJobName(project, newJobName, /* isPR */ false)) { - steps { - // build the world, but don't run the tests - batchFile("build.cmd -Configuration ${configurationGroup} -Targets Init,Compile,Package,Publish -Architecure x64 -TargetArch arm64 -ToolsetDir C:\\ats2 -Framework netcoreapp1.1") - } - label("arm64") - - // Kick off the test run - publishers { - archiveArtifacts { - pattern("artifacts/win10-arm64/packages/*.zip") - pattern("artifacts/win10-arm64/corehost/*.nupkg") - onlyIfSuccessful(true) - allowEmpty(false) - } - } - } - - // Set up standard options. - Utilities.standardJobSetup(newJob, project, /* isPR */ false, "*/${branch}") - - // Set a daily trigger - Utilities.addPeriodicTrigger(newJob, '@daily') - - // Set up a PR trigger that is only triggerable by certain members - Utilities.addPrivateGithubPRTriggerForBranch(newJob, branch, "Windows_NT ARM64 ${configurationGroup} Build", "(?i).*test\\W+ARM64\\W+${os}\\W+${configurationGroup}", null, arm64Users) - - // Set up a per-push trigger - Utilities.addGithubPushTrigger(newJob) - } -} +//['Windows_NT'].each { os -> +// ['Release'].each { configurationGroup -> +// def newJobName = "${configurationGroup.toLowerCase()}_${os.toLowerCase()}_arm64" +// def arm64Users = ['ianhays', 'kyulee1', 'gkhanna79', 'weshaggard', 'stephentoub', 'rahku', 'ramarag'] +// def newJob = job(Utilities.getFullJobName(project, newJobName, /* isPR */ false)) { +// steps { +// // build the world, but don't run the tests +// batchFile("build.cmd -ConfigurationGroup ${configurationGroup} -Architecure x64 -TargetArch arm64 -ToolsetDir C:\\ats2 -Framework netcoreapp1.1") +// } +// label("arm64") +// +// // Kick off the test run +// publishers { +// archiveArtifacts { +// pattern("artifacts/win10-arm64/packages/*.zip") +// pattern("artifacts/win10-arm64/corehost/*.nupkg") +// onlyIfSuccessful(true) +// allowEmpty(false) +// } +// } +// } +// +// // Set up standard options. +// Utilities.standardJobSetup(newJob, project, /* isPR */ false, "*/${branch}") +// +// // Set a daily trigger +// Utilities.addPeriodicTrigger(newJob, '@daily') +// +// // Set up a PR trigger that is only triggerable by certain members +// Utilities.addPrivateGithubPRTriggerForBranch(newJob, branch, "Windows_NT ARM64 ${configurationGroup} Build", "(?i).*test\\W+ARM64\\W+${os}\\W+${configurationGroup}", null, arm64Users) +// +// // Set up a per-push trigger +// Utilities.addGithubPushTrigger(newJob) +// } +//} // Make the call to generate the help job Utilities.createHelperJob(this, project, branch, diff --git a/omnisharp.json b/omnisharp.json index e7379f74..e50fae93 100644 --- a/omnisharp.json +++ b/omnisharp.json @@ -1,6 +1,6 @@ { "dotnet": { - "projects": "src/*/project.json;test/*/project.json;scripts/*/project.json", + "projects": "src/*/project.json;src/test/*/project.json;scripts/*/project.json", "enablePackageRestore": false } } diff --git a/packaging/osx/sharedframework/resources/fr.lproj/welcome.html b/packaging/osx/sharedframework/resources/fr.lproj/welcome.html deleted file mode 100644 index 6538e4d1..00000000 --- a/packaging/osx/sharedframework/resources/fr.lproj/welcome.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - Welcome to the .NET Core installer. - - - -

- Microsoft .NET Core -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-
- - diff --git a/packaging/osx/sharedframework/resources/it.lproj/welcome.html b/packaging/osx/sharedframework/resources/it.lproj/welcome.html deleted file mode 100644 index 6538e4d1..00000000 --- a/packaging/osx/sharedframework/resources/it.lproj/welcome.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - Welcome to the .NET Core installer. - - - -

- Microsoft .NET Core -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-
- - diff --git a/packaging/osx/sharedframework/resources/ja.lproj/welcome.html b/packaging/osx/sharedframework/resources/ja.lproj/welcome.html deleted file mode 100644 index 6538e4d1..00000000 --- a/packaging/osx/sharedframework/resources/ja.lproj/welcome.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - Welcome to the .NET Core installer. - - - -

- Microsoft .NET Core -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-
- - diff --git a/packaging/osx/sharedframework/resources/ko.lproj/welcome.html b/packaging/osx/sharedframework/resources/ko.lproj/welcome.html deleted file mode 100644 index 6538e4d1..00000000 --- a/packaging/osx/sharedframework/resources/ko.lproj/welcome.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - Welcome to the .NET Core installer. - - - -

- Microsoft .NET Core -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-
- - diff --git a/packaging/osx/sharedframework/resources/pl.lproj/welcome.html b/packaging/osx/sharedframework/resources/pl.lproj/welcome.html deleted file mode 100644 index 6538e4d1..00000000 --- a/packaging/osx/sharedframework/resources/pl.lproj/welcome.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - Welcome to the .NET Core installer. - - - -

- Microsoft .NET Core -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-
- - diff --git a/packaging/osx/sharedframework/resources/pt-br.lproj/welcome.html b/packaging/osx/sharedframework/resources/pt-br.lproj/welcome.html deleted file mode 100644 index 6538e4d1..00000000 --- a/packaging/osx/sharedframework/resources/pt-br.lproj/welcome.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - Welcome to the .NET Core installer. - - - -

- Microsoft .NET Core -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-
- - diff --git a/packaging/osx/sharedframework/resources/ru.lproj/welcome.html b/packaging/osx/sharedframework/resources/ru.lproj/welcome.html deleted file mode 100644 index 6538e4d1..00000000 --- a/packaging/osx/sharedframework/resources/ru.lproj/welcome.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - Welcome to the .NET Core installer. - - - -

- Microsoft .NET Core -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-
- - diff --git a/packaging/osx/sharedframework/resources/tr.lproj/welcome.html b/packaging/osx/sharedframework/resources/tr.lproj/welcome.html deleted file mode 100644 index 6538e4d1..00000000 --- a/packaging/osx/sharedframework/resources/tr.lproj/welcome.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - Welcome to the .NET Core installer. - - - -

- Microsoft .NET Core -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-
- - diff --git a/packaging/osx/sharedframework/resources/zh-hans.lproj/welcome.html b/packaging/osx/sharedframework/resources/zh-hans.lproj/welcome.html deleted file mode 100644 index 6538e4d1..00000000 --- a/packaging/osx/sharedframework/resources/zh-hans.lproj/welcome.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - Welcome to the .NET Core installer. - - - -

- Microsoft .NET Core -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-
- - diff --git a/packaging/osx/sharedframework/resources/zh-hant.lproj/welcome.html b/packaging/osx/sharedframework/resources/zh-hant.lproj/welcome.html deleted file mode 100644 index 6538e4d1..00000000 --- a/packaging/osx/sharedframework/resources/zh-hant.lproj/welcome.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - - Welcome to the .NET Core installer. - - - -

- Microsoft .NET Core -

-

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. -

-
- - diff --git a/pkg/.gitignore b/pkg/.gitignore deleted file mode 100644 index 615d90bb..00000000 --- a/pkg/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -/Tools/ -version.txt -version.props diff --git a/pkg/BuildToolsVersion.txt b/pkg/BuildToolsVersion.txt deleted file mode 100644 index 487225fe..00000000 --- a/pkg/BuildToolsVersion.txt +++ /dev/null @@ -1 +0,0 @@ -1.0.27-prerelease-01407-02 diff --git a/pkg/dir.props b/pkg/dir.props deleted file mode 100644 index 12f0646e..00000000 --- a/pkg/dir.props +++ /dev/null @@ -1,223 +0,0 @@ - - - - - - Unix - $(OS) - - - $(MSBuildThisFileDirectory) - - - $(ProjectDir)bin/ - $(BinDir)obj/ - $(ObjDir) - - $(BinDir)tests/ - $(BinDir)packages/ - $(PackagesOutDir) - - - $(ProjectDir)packages/ - $(BinDir)symbols/ - $(ProjectDir)Tools/ - $(ToolRuntimePath) - $(ProjectDir)Tools/ - $(ToolsDir)net46/ - $(BuildToolsTaskDir) - false - - true - - - - $(BinDir) - - - - - - $(PackagesOutDir) - $(SymbolPackagesOutDir) - $(ProjectDir)packages\Microsoft.NETCore.Platforms\2.0.0-preview2-25226-02\runtime.json - $(ProjectDir)projects/dotnet_library_license.txt - $(ProjectDir)projects/ThirdPartyNotices.txt - $(ProjectDir)projects/descriptions.json - - https://go.microsoft.com/fwlink/?LinkID=799417 - https://dot.net - $(Platform) - x64 - - $(MSBuildThisFileDirectory)packageIndex.json - - true - - true - - - - - - true - - - true - - - - - - - -$(PreReleaseLabel)-$(BuildNumberMajor)-$(BuildNumberMinor) - $(HostPolicyVersion)$(PreReleaseSuffix) - $(HostResolverVersion)$(PreReleaseSuffix) - $(AppHostVersion)$(PreReleaseSuffix) - $(HostVersion)$(PreReleaseSuffix) - $(UWPCoreRuntimeSdkVersion)$(PreReleaseSuffix) - - - - - - $(ProjectDir)/../NuGet.Config - - - - $(DotnetCliPath)dotnet.exe - $(DotnetCliPath)dotnet - $(DotNetTool) - "$(DotNetTool)" restore - $(DotNetRestoreCommand) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" - $(DotNetRestoreCommand) --configfile "$(NuGetConfigFile)" - $(DotNetRestoreCommand) - - - - - - - - - - - - - - - - - - - - Debug - $(ConfigurationGroup) - $(TargetGroup)_$(Configuration) - $(OSGroup)_$(Configuration) - - - - - Debug - Release - Debug - - true - - Windows_NT - Unix - Linux - OSX - FreeBSD - NetBSD - AnyOS - - netcore50aot - netstandard13aot - netstandard15aot - netcore50 - netcoreapp1.0 - netcoreapp1.1 - dnxcore50 - net463 - net462 - net461 - net46 - net45 - net451 - win8 - wpa81 - uap101aot - uap101 - - - - - - - true - false - full - $(DefineConstants),DEBUG,TRACE - - - - - true - true - pdbonly - $(DefineConstants),TRACE - - - - - $(ConfigurationErrorMsg);Unknown ConfigurationGroup [$(ConfigurationGroup)] specificed in your project. - - - - - - - true - true - false - false - - - - - 4 - true - - - - - $(OSGroup).$(Platform).$(ConfigurationGroup) - $(TargetGroup)/ - - $(BinDir) - /Compat - $(BaseOutputPath)$(OSPlatformConfig)/$(MSBuildProjectName)/$(TargetOutputRelPath)$(OutputPathSubfolder) - - $(BaseIntermediateOutputPath)$(OSPlatformConfig)/ - $(IntermediateOutputRootPath)$(MSBuildProjectName)/$(TargetOutputRelPath) - - diff --git a/pkg/dir.targets b/pkg/dir.targets deleted file mode 100644 index 9c8c5d5c..00000000 --- a/pkg/dir.targets +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - <_TargetFrameworkDirectories>$(MSBuildThisFileDirectory)/Documentation - <_FullFrameworkReferenceAssemblyPaths>$(MSBuildThisFileDirectory)/Documentation - - - - true - - diff --git a/pkg/init-tools.sh b/pkg/init-tools.sh deleted file mode 100755 index fc196c97..00000000 --- a/pkg/init-tools.sh +++ /dev/null @@ -1,125 +0,0 @@ -#!/usr/bin/env bash - -__scriptpath=$(cd "$(dirname "$0")"; pwd -P) -__init_tools_log=$__scriptpath/init-tools.log -__PACKAGES_DIR=$__scriptpath/packages -__TOOLRUNTIME_DIR=$__scriptpath/Tools -__DOTNET_PATH=$__TOOLRUNTIME_DIR/dotnetcli -__DOTNET_CMD=$__DOTNET_PATH/dotnet -if [ -z "$__BUILDTOOLS_SOURCE" ]; then __BUILDTOOLS_SOURCE=https://dotnet.myget.org/F/dotnet-buildtools/api/v3/index.json; fi -__BUILD_TOOLS_PACKAGE_VERSION=$(cat $__scriptpath/BuildToolsVersion.txt) -__DOTNET_TOOLS_VERSION=$(cat $__scriptpath/DotnetCLIVersion.txt) -__BUILD_TOOLS_PATH=$__PACKAGES_DIR/Microsoft.DotNet.BuildTools/$__BUILD_TOOLS_PACKAGE_VERSION/lib -__PROJECT_JSON_PATH=$__TOOLRUNTIME_DIR/$__BUILD_TOOLS_PACKAGE_VERSION -__PROJECT_JSON_FILE=$__PROJECT_JSON_PATH/project.json -__PROJECT_JSON_CONTENTS="{ \"dependencies\": { \"Microsoft.DotNet.BuildTools\": \"$__BUILD_TOOLS_PACKAGE_VERSION\" }, \"frameworks\": { \"netcoreapp1.0\": { } } }" -__INIT_TOOLS_DONE_MARKER=$__PROJECT_JSON_PATH/done - -# On xplat, limit HTTP parallelism to avoid restore timeouts. -export __INIT_TOOLS_RESTORE_ARGS="--disable-parallel" - -# Extended version of platform detection logic from dotnet/cli/scripts/obtain/dotnet-install.sh 16692fc -get_current_linux_name() { - # Detect Distro - if [ "$(cat /etc/*-release | grep -cim1 ubuntu)" -eq 1 ]; then - if [ "$(cat /etc/*-release | grep -cim1 16.04)" -eq 1 ]; then - echo "ubuntu.16.04" - return 0 - fi - if [ "$(cat /etc/*-release | grep -cim1 16.10)" -eq 1 ]; then - echo "ubuntu.16.10" - return 0 - fi - - echo "ubuntu" - return 0 - elif [ "$(cat /etc/*-release | grep -cim1 centos)" -eq 1 ]; then - echo "centos" - return 0 - elif [ "$(cat /etc/*-release | grep -cim1 rhel)" -eq 1 ]; then - echo "rhel" - return 0 - elif [ "$(cat /etc/*-release | grep -cim1 debian)" -eq 1 ]; then - echo "debian" - return 0 - elif [ "$(cat /etc/*-release | grep -cim1 fedora)" -eq 1 ]; then - if [ "$(cat /etc/*-release | grep -cim1 24)" -eq 1 ]; then - echo "fedora.24" - return 0 - fi - elif [ "$(cat /etc/*-release | grep -cim1 opensuse)" -eq 1 ]; then - if [ "$(cat /etc/*-release | grep -cim1 42.1)" -eq 1 ]; then - echo "opensuse.42.1" - return 0 - fi - fi - - # Cannot determine Linux distribution, assuming Ubuntu 14.04. - echo "ubuntu" - return 0 -} - -if [ -z "$__DOTNET_PKG" ]; then -OSName=$(uname -s) - case $OSName in - Darwin) - OS=OSX - __DOTNET_PKG=dotnet-dev-osx-x64 - ulimit -n 2048 - ;; - - Linux) - __DOTNET_PKG="dotnet-dev-$(get_current_linux_name)-x64" - OS=Linux - ;; - - *) - echo "Unsupported OS '$OSName' detected. Downloading ubuntu-x64 tools." - OS=Linux - __DOTNET_PKG=dotnet-dev-ubuntu-x64 - ;; - esac -fi -if [ ! -e $__INIT_TOOLS_DONE_MARKER ]; then - if [ -e $__TOOLRUNTIME_DIR ]; then rm -rf -- $__TOOLRUNTIME_DIR; fi - echo "Running: $__scriptpath/init-tools.sh" > $__init_tools_log - if [ ! -e $__DOTNET_PATH ]; then - echo "Installing dotnet cli..." - __DOTNET_LOCATION="https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/${__DOTNET_TOOLS_VERSION}/${__DOTNET_PKG}.${__DOTNET_TOOLS_VERSION}.tar.gz" - # curl has HTTPS CA trust-issues less often than wget, so lets try that first. - echo "Installing '${__DOTNET_LOCATION}' to '$__DOTNET_PATH/dotnet.tar'" >> $__init_tools_log - command -v curl > /dev/null 2> /dev/null - if [ $? -ne 0 ]; then - mkdir -p "$__DOTNET_PATH" - wget -q -O $__DOTNET_PATH/dotnet.tar ${__DOTNET_LOCATION} - else - curl --retry 10 -sSL --create-dirs -o $__DOTNET_PATH/dotnet.tar ${__DOTNET_LOCATION} - fi - cd $__DOTNET_PATH - tar -xf $__DOTNET_PATH/dotnet.tar - - cd $__scriptpath - fi - - if [ ! -d "$__PROJECT_JSON_PATH" ]; then mkdir "$__PROJECT_JSON_PATH"; fi - echo $__PROJECT_JSON_CONTENTS > "$__PROJECT_JSON_FILE" - - if [ ! -e $__BUILD_TOOLS_PATH ]; then - echo "Restoring BuildTools version $__BUILD_TOOLS_PACKAGE_VERSION..." - echo "Running: $__DOTNET_CMD restore \"$__PROJECT_JSON_FILE\" --no-cache --packages $__PACKAGES_DIR --source $__BUILDTOOLS_SOURCE" --disable-parallel >> $__init_tools_log - $__DOTNET_CMD restore "$__PROJECT_JSON_FILE" --no-cache --packages $__PACKAGES_DIR --source $__BUILDTOOLS_SOURCE --disable-parallel >> $__init_tools_log - if [ ! -e "$__BUILD_TOOLS_PATH/init-tools.sh" ]; then echo "ERROR: Could not restore build tools correctly. See '$__init_tools_log' for more details."1>&2; fi - fi - - echo "Initializing BuildTools..." - echo "Running: $__BUILD_TOOLS_PATH/init-tools.sh $__scriptpath $__DOTNET_CMD $__TOOLRUNTIME_DIR" >> $__init_tools_log - $__BUILD_TOOLS_PATH/init-tools.sh $__scriptpath $__DOTNET_CMD $__TOOLRUNTIME_DIR >> $__init_tools_log - if [ "$?" != "0" ]; then - echo "ERROR: An error occured when trying to initialize the tools. Please check '$__init_tools_log' for more details."1>&2 - exit 1 - fi - touch $__INIT_TOOLS_DONE_MARKER - echo "Done initializing tools." -else - echo "Tools are already initialized" -fi diff --git a/pkg/pack.cmd b/pkg/pack.cmd deleted file mode 100644 index 5e6d5be3..00000000 --- a/pkg/pack.cmd +++ /dev/null @@ -1,40 +0,0 @@ -@echo off -setlocal EnableDelayedExpansion - -set __ProjectDir=%~dp0 -set __DotNet=%__ProjectDir%\Tools\dotnetcli\dotnet.exe -set __MSBuild=%__ProjectDir%\Tools\MSBuild.dll -set __PortableBuildArgs=false - -:Arg_Loop -if "%1" == "" goto ArgsDone - -if /i "%1" == "-portable" (set __PortableBuildArgs=true&shift&goto Arg_Loop) - -:ArgsDone - -:: Initialize the MSBuild Tools -call "%__ProjectDir%\init-tools.cmd" -if NOT [!ERRORLEVEL!]==[0] goto :Error - -:: Restore dependencies mainly to obtain runtime.json -pushd "%__ProjectDir%\deps" -"%__DotNet%" restore --configfile "%__ProjectDir%\..\NuGet.Config" --packages "%__ProjectDir%\packages" -if NOT [!ERRORLEVEL!]==[0] goto :Error -popd - -:: Clean up existing nupkgs -if exist "%__ProjectDir%\bin" (rmdir /s /q "%__ProjectDir%\bin") - -"%__DotNet%" "%__MSBuild%" "%__ProjectDir%\tasks\core-setup.tasks.builds" /verbosity:minimal /flp:logfile=tools.log;v=diag -if NOT [!ERRORLEVEL!]==[0] goto :Error - -:: Package the assets using Tools -"%__DotNet%" "%__MSBuild%" "%__ProjectDir%\packages.builds" /p:OSGroup=Windows_NT /verbosity:minimal /p:PortableBuild=%__PortableBuildArgs% -if NOT [!ERRORLEVEL!]==[0] goto :Error - -exit /b 0 - -:Error -echo An error occurred during packing. -exit /b 1 diff --git a/pkg/pack.sh b/pkg/pack.sh deleted file mode 100755 index 70b22bd1..00000000 --- a/pkg/pack.sh +++ /dev/null @@ -1,81 +0,0 @@ -#!/usr/bin/env bash - -usage() -{ - echo "Usage: $0 --rid " - echo "" - echo "Options:" - echo " --rid Target Runtime Identifier" - echo " -portable Generate portable RID packages" - - exit 1 -} - -set -e - -# determine current directory -SOURCE="${BASH_SOURCE[0]}" -while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink - DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" - SOURCE="$(readlink "$SOURCE")" - [[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located -done - -# initialize variables -__project_dir="$( cd -P "$( dirname "$SOURCE" )" && pwd )" -__distro_rid= -__portableBuildArgs= - -while [ "$1" != "" ]; do - lowerI="$(echo $1 | awk '{print tolower($0)}')" - case $lowerI in - -h|--help) - usage - exit 1 - ;; - --rid) - shift - __distro_rid=$1 - ;; - -portable) - __portableBuildArgs="/p:PortableBuild=true" - ;; - *) - echo "Unknown argument to pack.sh $1" - exit 1 - esac - shift -done - -# setup msbuild -"$__project_dir/init-tools.sh" - -# acquire dependencies -pushd "$__project_dir/deps" -"$__project_dir/Tools/dotnetcli/dotnet" restore --configfile "$__project_dir/../NuGet.Config" --disable-parallel --packages "$__project_dir/packages" -popd - -# cleanup existing packages -rm -rf $__project_dir/bin - -# build to produce nupkgs -__msbuild="$__project_dir/Tools/msbuild.sh" - -__targets_param= -if [ "$(uname -s)" == "Darwin" ]; then - __targets_param="OSGroup=OSX" -else - __targets_param="OSGroup=Linux" - if [ -z $__distro_rid ]; then - echo "Runtime Identifier not defined" - exit 1 - fi -fi - -__common_parameters="/p:$__targets_param /p:DistroRid=$__distro_rid /verbosity:minimal $__portableBuildArgs" - -$__msbuild $__project_dir/tasks/core-setup.tasks.builds $__common_parameters || exit 1 - -$__msbuild $__project_dir/packages.builds $__common_parameters || exit 1 - -exit 0 diff --git a/publish/dir.props b/publish/dir.props new file mode 100644 index 00000000..9d74b389 --- /dev/null +++ b/publish/dir.props @@ -0,0 +1,43 @@ + + + + + + dotnetcli + 3600 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/publish/dir.targets b/publish/dir.targets new file mode 100644 index 00000000..d5866b71 --- /dev/null +++ b/publish/dir.targets @@ -0,0 +1,65 @@ + + + + + $(Channel)/Binaries/$(SharedFrameworkNugetVersion) + + + + UploadToAzure + %(Project.AdditionalProperties);ItemsToPublish=@(CompressedFile);$(OutputVersionBadge);RelativeBlobPath=$(RelativeBlobPath) + + + + + + + $(Channel)/Installers/$(SharedFrameworkNugetVersion) + + + + UploadToAzure + %(Project.AdditionalProperties);ItemsToPublish=@(InstallerFile);RelativeBlobPath=$(RelativeBlobPath) + + + + + + + + dotnet-host + + + dotnet-hostfxr + + + dotnet-sharedframework + + + + $(PackagesOutDir)%(PackageName)_package_upload.json + + + + + + + + + + + + <_FoundBlobNames Include="%(_BlobNames.FileName)%(_BlobNames.Extension)" Condition="'%(_BlobNames.Extension)' == '.svg'" /> + <_MissingBlobNames Include="@(PublishRid->'sharedfx_%(Identity)_$(ConfigurationGroup)_version_badge.svg')" + Exclude="@(_FoundBlobNames)" /> + + + \ No newline at end of file diff --git a/publish/publish.proj b/publish/publish.proj new file mode 100644 index 00000000..8a2b034c --- /dev/null +++ b/publish/publish.proj @@ -0,0 +1,122 @@ + + + + + + + + + + + + + + + + + + + + + + + + + $(RelativeBlobPath)/%(Filename)%(Extension) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_CoreHostPackages Include="%(_BlobList.Identity)" Condition="'%(_BlobList.Extension)' == '.nupkg'" /> + + + + $(BinDir)ForPublishing/ + + + + + <_DownloadedPackages Include="@(_CoreHostPackages->'$(DownloadDirectory)%(Filename)%(Extension)')" /> + <_DownloadedSymbolsPackages Include="%(_DownloadedPackages.Identity)" + Condition="$([System.String]::new('%(_DownloadedPackages.Identity)').EndsWith('.symbols.nupkg'))" /> + <_DownloadedStandardPackages Include="@(_DownloadedPackages)" + Exclude="@(_DownloadedSymbolsPackages)" /> + + + + + + $(NuGetToolPath) push -Source $(NuGetFeedUrl) -ApiKey $(NuGetApiKey) -Timeout $(NuGetPushTimeoutSeconds) + $(NuGetToolPath) push -Source $(NuGetSymbolsFeedUrl) -ApiKey $(NuGetApiKey) -Timeout $(NuGetPushTimeoutSeconds) + + + + + + + + + + + + \ No newline at end of file diff --git a/run.cmd b/run.cmd new file mode 100644 index 00000000..b0a0ed07 --- /dev/null +++ b/run.cmd @@ -0,0 +1,16 @@ +@if "%_echo%" neq "on" echo off +setlocal + +if not defined VisualStudioVersion ( + if defined VS140COMNTOOLS ( + call "%VS140COMNTOOLS%\VsDevCmd.bat" + goto :Run + ) + echo Error: Visual Studio 2015 required. + echo Please see https://github.com/dotnet/corefx/blob/master/Documentation/building/windows-instructions.md for build instructions. + exit /b 1 +) + +:Run +powershell -NoProfile -ExecutionPolicy unrestricted -Command "%~dp0run.ps1 -- %*" +exit /b %ERRORLEVEL% \ No newline at end of file diff --git a/run.ps1 b/run.ps1 new file mode 100644 index 00000000..c7cbb8d7 --- /dev/null +++ b/run.ps1 @@ -0,0 +1,12 @@ +# set the base tools directory +$toolsLocalPath = Join-Path $PSScriptRoot "Tools" +$restorePackagesPath = Join-Path $PSScriptRoot "packages" + +$initTools = Join-Path $PSScriptRoot "init-tools.cmd" +& $initTools + +# execute the tool using the dotnet.exe host +$dotNetExe = Join-Path $toolsLocalPath "dotnetcli\dotnet.exe" +$runExe = Join-Path $toolsLocalPath "run.exe" +& $dotNetExe $runExe $args +exit $LastExitCode \ No newline at end of file diff --git a/run.sh b/run.sh new file mode 100755 index 00000000..510caad3 --- /dev/null +++ b/run.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash +# +# Copyright (c) .NET Foundation and contributors. All rights reserved. +# Licensed under the MIT license. See LICENSE file in the project root for full license information. +# + +set -e + +# Use in the the functions: eval $invocation +invocation='echo "Calling: ${FUNCNAME[0]}"' +__scriptpath=$(cd "$(dirname "$0")"; pwd -P) +__toolsLocalPath=$__scriptpath/Tools + +$__scriptpath/init-tools.sh + +__dotnet=$__toolsLocalPath/dotnetcli/dotnet + +cp -fR $__scriptpath/tools-override/* $__toolsLocalPath + +$__dotnet $__toolsLocalPath/run.exe $* +exit $? \ No newline at end of file diff --git a/build_projects/signing/sign.proj b/sign.proj similarity index 90% rename from build_projects/signing/sign.proj rename to sign.proj index 888e46ce..5a052913 100644 --- a/build_projects/signing/sign.proj +++ b/sign.proj @@ -1,25 +1,23 @@ - - $(MSBuildThisFileDirectory)/../../ - + - - + + - + - $(RepoRoot)artifacts/$(RID)/ - $(OutDir)intermediate/ + $(BaseOutputRootPath)/ + $(IntermediateOutputRootPath) diff --git a/src/corehost/Windows/gen-buildsys-win.bat b/src/corehost/Windows/gen-buildsys-win.bat new file mode 100644 index 00000000..637e98ac --- /dev/null +++ b/src/corehost/Windows/gen-buildsys-win.bat @@ -0,0 +1,49 @@ +@if "%_echo%" neq "on" echo off +rem +rem This file invokes cmake and generates the build system for windows. + +set argC=0 +for %%x in (%*) do Set /A argC+=1 + +if NOT %argC%==5 GOTO :USAGE +if %1=="/?" GOTO :USAGE + +setlocal +set __sourceDir=%~dp0.. +:: VS 2015 is the minimum supported toolset +set __VSString=14 2015 + +:: Set the target architecture to a format cmake understands. ANYCPU defaults to x64 +if /i "%3" == "x86" (set cm_BaseRid=win7-x86&&set cm_Arch=I386&&set __VSString=%__VSString%) +if /i "%3" == "x64" (set cm_BaseRid=win7-x64&&set cm_Arch=AMD64&&set __VSString=%__VSString% Win64) +if /i "%3" == "arm" (set cm_BaseRid=win8-arm&&set cm_Arch=ARM&&set __VSString=%__VSString% ARM) +if /i "%3" == "arm64" (set cm_BaseRid=win10-arm64&&set cm_Arch=ARM64&&set __VSString=%__VSString% Win64) + +set __HostVersion=%4 +set __LatestCommit=%5 + +if defined CMakePath goto DoGen + +:: Eval the output from probe-win1.ps1 +pushd "%__sourceDir%" +for /f "delims=" %%a in ('powershell -NoProfile -ExecutionPolicy ByPass "& .\Windows\probe-win.ps1"') do %%a +popd + +:DoGen +echo "%CMakePath%" %__sourceDir% %__SDKVersion% "-DCLI_CMAKE_RUNTIME_ID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_HOST_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_APPHOST_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_HOST_FXR_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_HOST_POLICY_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_PKG_RID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_COMMIT_HASH:STRING=%__LatestCommit%" "-DCLI_CMAKE_PLATFORM_ARCH_%cm_Arch%=1" "-DCMAKE_INSTALL_PREFIX=%__CMakeBinDir%" "-DCLI_CMAKE_RESOURCE_DIR:STRING=%__ResourcesDir%" -G "Visual Studio %__VSString%" +"%CMakePath%" %__sourceDir% %__SDKVersion% "-DCLI_CMAKE_RUNTIME_ID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_HOST_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_APPHOST_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_HOST_FXR_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_HOST_POLICY_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_PKG_RID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_COMMIT_HASH:STRING=%__LatestCommit%" "-DCLI_CMAKE_PLATFORM_ARCH_%cm_Arch%=1" "-DCMAKE_INSTALL_PREFIX=%__CMakeBinDir%" "-DCLI_CMAKE_RESOURCE_DIR:STRING=%__ResourcesDir%" -G "Visual Studio %__VSString%" +endlocal +GOTO :DONE + +:USAGE + echo "Usage..." + echo "gen-buildsys-win.bat " + echo "Specify the path to the top level CMake file - /src/NDP" + echo "Specify the VSVersion to be used - VS2013 or VS2015" + echo "Specify the Target Architecture - x86, AnyCPU, ARM, or x64." + echo "Specify the host version" + echo "Specify latest commit hash" + EXIT /B 1 + +:DONE + EXIT /B 0 \ No newline at end of file diff --git a/src/corehost/Windows/probe-win.ps1 b/src/corehost/Windows/probe-win.ps1 new file mode 100644 index 00000000..d1ae1fd5 --- /dev/null +++ b/src/corehost/Windows/probe-win.ps1 @@ -0,0 +1,65 @@ +# This file probes for the prerequisites for the build system, and outputs commands for eval'ing +# from the cmd scripts to set variables (and exit on error) + +function GetCMakeVersions +{ + $items = @() + $items += @(Get-ChildItem hklm:\SOFTWARE\Wow6432Node\Kitware -ErrorAction SilentlyContinue) + $items += @(Get-ChildItem hklm:\SOFTWARE\Kitware -ErrorAction SilentlyContinue) + return $items | Where-Object { $_.PSChildName.StartsWith("CMake ") } +} + +function GetCMakeInfo($regKey) +{ + # This no longer works for versions 3.5+ + try { + $version = [System.Version] $regKey.PSChildName.Split(' ')[1] + } + catch { + return $null + } + $cmakeDir = (Get-ItemProperty $regKey.PSPath).'(default)' + $cmakePath = [System.IO.Path]::Combine($cmakeDir, "bin\cmake.exe") + if (![System.IO.File]::Exists($cmakePath)) { + return $null + } + return @{'version' = $version; 'path' = $cmakePath} +} + +function LocateCMake +{ + $errorMsg = "CMake is a pre-requisite to build this repository but it was not found on the path. Please install CMake from http://www.cmake.org/download/ and ensure it is on your path." + $inPathPath = (get-command cmake.exe -ErrorAction SilentlyContinue).Path + if ($inPathPath -ne $null) { + return $inPathPath + } + # Check the default installation directory + $inDefaultDir = [System.IO.Path]::Combine(${Env:ProgramFiles(x86)}, "CMake\bin\cmake.exe") + if ([System.IO.File]::Exists($inDefaultDir)) { + return $inDefaultDir + } + # Let us hope that CMake keep using their current version scheme + $validVersions = @() + foreach ($regKey in GetCMakeVersions) { + $info = GetCMakeInfo($regKey) + if ($info -ne $null) { + $validVersions += @($info) + } + } + $newestCMakePath = ($validVersions | + Sort-Object -property @{Expression={$_.version}; Ascending=$false} | + Select-Object -first 1).path + if ($newestCMakePath -eq $null) { + Throw $errorMsg + } + return $newestCMakePath +} + +try { + $cmakePath = LocateCMake + [System.Console]::WriteLine("set CMakePath=" + $cmakePath) +} +catch { + [System.Console]::Error.WriteLine($_.Exception.Message) + [System.Console]::WriteLine("exit /b 1") +} diff --git a/src/corehost/build.cmd b/src/corehost/build.cmd new file mode 100644 index 00000000..092131fb --- /dev/null +++ b/src/corehost/build.cmd @@ -0,0 +1,160 @@ +@if not defined _echo @echo off +setlocal + +:SetupArgs +:: Initialize the args that will be passed to cmake +set __nativeWindowsDir=%~dp0Windows +set __binDir=%~dp0..\..\Bin +set __rootDir=%~dp0..\.. +set __CMakeBinDir="" +set __IntermediatesDir="" +set __BuildArch=x64 +set __appContainer="" +set __VCBuildArch=x86_amd64 +set CMAKE_BUILD_TYPE=Debug +set "__LinkArgs= " +set "__LinkLibraries= " + +:Arg_Loop +if [%1] == [] goto :ToolsVersion +if /i [%1] == [Release] ( set CMAKE_BUILD_TYPE=Release&&shift&goto Arg_Loop) +if /i [%1] == [Debug] ( set CMAKE_BUILD_TYPE=Debug&&shift&goto Arg_Loop) + +if /i [%1] == [AnyCPU] ( set __BuildArch=x64&&set __VCBuildArch=x86_amd64&&shift&goto Arg_Loop) +if /i [%1] == [x86] ( set __BuildArch=x86&&set __VCBuildArch=x86&&shift&goto Arg_Loop) +if /i [%1] == [arm] ( set __BuildArch=arm&&set __VCBuildArch=x86_arm&&set __SDKVersion="-DCMAKE_SYSTEM_VERSION=10.0"&&shift&goto Arg_Loop) +if /i [%1] == [x64] ( set __BuildArch=x64&&set __VCBuildArch=x86_amd64&&shift&goto Arg_Loop) +if /i [%1] == [amd64] ( set __BuildArch=x64&&set __VCBuildArch=x86_amd64&&shift&goto Arg_Loop) +if /i [%1] == [arm64] ( set __BuildArch=arm64&&set __VCBuildArch=arm64&&shift&goto Arg_Loop) + +if /i [%1] == [rid] ( set __TargetRid=%2&&shift&&shift&goto Arg_Loop) +if /i [%1] == [toolsetDir] ( set "__ToolsetDir=%2"&&shift&&shift&goto Arg_Loop) +if /i [%1] == [version] (set __HostVersion=%2&&shift&&shift&goto Arg_Loop) +if /i [%1] == [commit] (set __CommitSha=%2&&shift&&shift&goto Arg_Loop) + +shift +goto :Arg_Loop + +:ToolsVersion +:: Determine the tools version to pass to cmake/msbuild +if not defined VisualStudioVersion ( + if defined VS140COMNTOOLS ( + goto :VS2015 + ) + goto :MissingVersion +) +if "%VisualStudioVersion%"=="14.0" ( + goto :VS2015 +) + +:MissingVersion +:: Can't find VS 2013+ +echo Error: Visual Studio 2015 required +echo Please see https://github.com/dotnet/corefx/blob/master/Documentation/project-docs/developer-guide.md for build instructions. +exit /b 1 + +:VS2015 +:: Setup vars for VS2015 +set __VSVersion=vs2015 +set __PlatformToolset=v140 +if NOT "%__BuildArch%" == "arm64" ( + :: Set the environment for the native build + call "%VS140COMNTOOLS%\..\..\VC\vcvarsall.bat" %__VCBuildArch% +) +goto :SetupDirs + +:SetupDirs +:: Setup to cmake the native components +echo Commencing build of corehost +echo. + +if %__CMakeBinDir% == "" ( + set "__CMakeBinDir=%__binDir%\%__TargetRid%.%CMAKE_BUILD_TYPE%\corehost" +) +if %__IntermediatesDir% == "" ( + set "__IntermediatesDir=%__binDir%\obj\%__TargetRid%.%CMAKE_BUILD_TYPE%\corehost" +) +set "__ResourcesDir=%__binDir%\obj\%__TargetRid%.%CMAKE_BUILD_TYPE%\hostResourceFiles% +set "__CMakeBinDir=%__CMakeBinDir:\=/%" +set "__IntermediatesDir=%__IntermediatesDir:\=/%" + + +:: Check that the intermediate directory exists so we can place our cmake build tree there +if exist "%__IntermediatesDir%" rd /s /q "%__IntermediatesDir%" +if not exist "%__IntermediatesDir%" md "%__IntermediatesDir%" + +if exist "%VSINSTALLDIR%DIA SDK" goto GenVSSolution +echo Error: DIA SDK is missing at "%VSINSTALLDIR%DIA SDK". ^ +This is due to a bug in the Visual Studio installer. It does not install DIA SDK at "%VSINSTALLDIR%" but rather ^ +at VS install location of previous version. Workaround is to copy DIA SDK folder from VS install location ^ +of previous version to "%VSINSTALLDIR%" and then resume build. +:: DIA SDK not included in Express editions +echo Visual Studio 2013 Express does not include the DIA SDK. ^ +You need Visual Studio 2013+ (Community is free). +echo See: https://github.com/dotnet/coreclr/blob/master/Documentation/project-docs/developer-guide.md#prerequisites +exit /b 1 + +:GenVSSolution +:: Regenerate the VS solution + +if /i "%__BuildArch%" == "arm64" ( + REM arm64 builds currently use private toolset which has not been released yet + REM TODO, remove once the toolset is open. + call :PrivateToolSet +) + +echo Calling "%__nativeWindowsDir%\gen-buildsys-win.bat %~dp0 %__VSVersion% %__BuildArch% %__HostVersion% %__CommitSha%" +pushd "%__IntermediatesDir%" +call "%__nativeWindowsDir%\gen-buildsys-win.bat" %~dp0 %__VSVersion% %__BuildArch% %__HostVersion% %__CommitSha% +popd + +:CheckForProj +:: Check that the project created by Cmake exists +if exist "%__IntermediatesDir%\ALL_BUILD.vcxproj" goto BuildNativeProj +goto :Failure + +:BuildNativeProj +:: Build the project created by Cmake +if "%__BuildArch%" == "arm64" ( + set __msbuildArgs=/p:UseEnv=true +) else ( + set __msbuildArgs=/p:Platform=%__BuildArch% /p:PlatformToolset="%__PlatformToolset%" +) + +cd %__rootDir% + +echo %__rootDir%\run.cmd build-native -- "%__IntermediatesDir%\ALL_BUILD.vcxproj" /t:rebuild /p:Configuration=%CMAKE_BUILD_TYPE% %__msbuildArgs% +call %__rootDir%\run.cmd build-native -- "%__IntermediatesDir%\ALL_BUILD.vcxproj" /t:rebuild /p:Configuration=%CMAKE_BUILD_TYPE% %__msbuildArgs% +IF ERRORLEVEL 1 ( + goto :Failure +) +echo Done building Native components +exit /B 0 + +:Failure +:: Build failed +echo Failed to generate native component build project! +exit /b 1 + +:PrivateToolSet +echo %__MsgPrefix% Setting Up the usage of __ToolsetDir:%__ToolsetDir% + +if /i "%__ToolsetDir%" == "" ( + echo %__MsgPrefix%Error: A toolset directory is required for the Arm64 Windows build. Use the toolsetDir argument. + exit /b 1 +) + +set PATH=%__ToolsetDir%\VC_sdk\bin;%PATH% +set LIB=%__ToolsetDir%\VC_sdk\lib\arm64;%__ToolsetDir%\sdpublic\sdk\lib\arm64 +set INCLUDE=^ +%__ToolsetDir%\VC_sdk\inc;^ +%__ToolsetDir%\sdpublic\sdk\inc;^ +%__ToolsetDir%\sdpublic\shared\inc;^ +%__ToolsetDir%\sdpublic\shared\inc\minwin;^ +%__ToolsetDir%\sdpublic\sdk\inc\ucrt;^ +%__ToolsetDir%\sdpublic\sdk\inc\minwin;^ +%__ToolsetDir%\sdpublic\sdk\inc\mincore;^ +%__ToolsetDir%\sdpublic\sdk\inc\abi;^ +%__ToolsetDir%\sdpublic\sdk\inc\clientcore;^ +%__ToolsetDir%\diasdk\include +exit /b 0 \ No newline at end of file diff --git a/src/corehost/build.proj b/src/corehost/build.proj new file mode 100644 index 00000000..d1713d2e --- /dev/null +++ b/src/corehost/build.proj @@ -0,0 +1,66 @@ + + + + + + + + + + + + + --arch $(TargetArchitecture) --apphostver $(HostVersion) --hostver $(HostVersion) --fxrver $(HostVersion) --policyver $(HostVersion) --commithash $(LatestCommit) + $(BuildArgs) -portable + + + + + + + + + + + + + + + + + + + + + + + + $(ConfigurationGroup) $(TargetArchitecture) version $(HostVersion) commit $(LatestCommit) rid $(TargetRid) + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/corehost/dir.props b/src/corehost/dir.props new file mode 100644 index 00000000..f190c359 --- /dev/null +++ b/src/corehost/dir.props @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/src/dir.proj b/src/dir.proj new file mode 100644 index 00000000..f96a3a05 --- /dev/null +++ b/src/dir.proj @@ -0,0 +1,33 @@ + + + + + + + true + + + + + true + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/dir.props b/src/dir.props new file mode 100644 index 00000000..f7adb537 --- /dev/null +++ b/src/dir.props @@ -0,0 +1,32 @@ + + + + + + $(CoreHostOutputDir)locked\ + $(IntermediateOutputRootPath)sharedFramework\framework + $(IntermediateOutputRootPath)forPackaging + + + + lib + .dll + .dylib + .so + $(LibPrefix)hostfxr$(LibSuffix) + $(LibPrefix)hostpolicy$(LibSuffix) + + + + + + $(TargetRid) + osx.10.10-x64 + rhel.7-x64 + rhel.7-x64 + rhel.7-x64 + rhel.7-x64 + rhel.7-x64 + + + \ No newline at end of file diff --git a/src/dir.targets b/src/dir.targets new file mode 100644 index 00000000..aa480436 --- /dev/null +++ b/src/dir.targets @@ -0,0 +1,4 @@ + + + + diff --git a/src/Microsoft.DotNet.PlatformAbstractions/ApplicationEnvironment.cs b/src/managed/Microsoft.DotNet.PlatformAbstractions/ApplicationEnvironment.cs similarity index 100% rename from src/Microsoft.DotNet.PlatformAbstractions/ApplicationEnvironment.cs rename to src/managed/Microsoft.DotNet.PlatformAbstractions/ApplicationEnvironment.cs diff --git a/src/Microsoft.DotNet.PlatformAbstractions/HashCodeCombiner.cs b/src/managed/Microsoft.DotNet.PlatformAbstractions/HashCodeCombiner.cs similarity index 100% rename from src/Microsoft.DotNet.PlatformAbstractions/HashCodeCombiner.cs rename to src/managed/Microsoft.DotNet.PlatformAbstractions/HashCodeCombiner.cs diff --git a/src/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.xproj b/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.xproj similarity index 100% rename from src/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.xproj rename to src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.xproj diff --git a/src/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Darwin.cs b/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Darwin.cs similarity index 100% rename from src/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Darwin.cs rename to src/managed/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Darwin.cs diff --git a/src/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Unix.cs b/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Unix.cs similarity index 100% rename from src/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Unix.cs rename to src/managed/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Unix.cs diff --git a/src/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Windows.cs b/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Windows.cs similarity index 100% rename from src/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Windows.cs rename to src/managed/Microsoft.DotNet.PlatformAbstractions/Native/NativeMethods.Windows.cs diff --git a/src/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs b/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs similarity index 100% rename from src/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs rename to src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs diff --git a/src/Microsoft.DotNet.PlatformAbstractions/Platform.cs b/src/managed/Microsoft.DotNet.PlatformAbstractions/Platform.cs similarity index 100% rename from src/Microsoft.DotNet.PlatformAbstractions/Platform.cs rename to src/managed/Microsoft.DotNet.PlatformAbstractions/Platform.cs diff --git a/src/Microsoft.DotNet.PlatformAbstractions/Properties/Properties.cs b/src/managed/Microsoft.DotNet.PlatformAbstractions/Properties/Properties.cs similarity index 100% rename from src/Microsoft.DotNet.PlatformAbstractions/Properties/Properties.cs rename to src/managed/Microsoft.DotNet.PlatformAbstractions/Properties/Properties.cs diff --git a/src/Microsoft.DotNet.PlatformAbstractions/RuntimeEnvironment.cs b/src/managed/Microsoft.DotNet.PlatformAbstractions/RuntimeEnvironment.cs similarity index 100% rename from src/Microsoft.DotNet.PlatformAbstractions/RuntimeEnvironment.cs rename to src/managed/Microsoft.DotNet.PlatformAbstractions/RuntimeEnvironment.cs diff --git a/src/Microsoft.DotNet.PlatformAbstractions/project.json b/src/managed/Microsoft.DotNet.PlatformAbstractions/project.json similarity index 90% rename from src/Microsoft.DotNet.PlatformAbstractions/project.json rename to src/managed/Microsoft.DotNet.PlatformAbstractions/project.json index db2bc28a..692ce757 100644 --- a/src/Microsoft.DotNet.PlatformAbstractions/project.json +++ b/src/managed/Microsoft.DotNet.PlatformAbstractions/project.json @@ -1,9 +1,9 @@ { "description": "Abstractions for making code that uses file system and environment testable.", - "version": "2.0.0-preview2-*", + "version": "2.0.0-*", "buildOptions": { "warningsAsErrors": true, - "keyFile": "../../setuptools/Key.snk", + "keyFile": "../../../tools-local/setuptools/Key.snk", "allowUnsafe": true }, "frameworks": { diff --git a/src/Microsoft.Extensions.DependencyModel/CollectionExtensions.cs b/src/managed/Microsoft.Extensions.DependencyModel/CollectionExtensions.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/CollectionExtensions.cs rename to src/managed/Microsoft.Extensions.DependencyModel/CollectionExtensions.cs diff --git a/src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs b/src/managed/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs rename to src/managed/Microsoft.Extensions.DependencyModel/CompilationLibrary.cs diff --git a/src/Microsoft.Extensions.DependencyModel/CompilationOptions.cs b/src/managed/Microsoft.Extensions.DependencyModel/CompilationOptions.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/CompilationOptions.cs rename to src/managed/Microsoft.Extensions.DependencyModel/CompilationOptions.cs diff --git a/src/Microsoft.Extensions.DependencyModel/Dependency.cs b/src/managed/Microsoft.Extensions.DependencyModel/Dependency.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/Dependency.cs rename to src/managed/Microsoft.Extensions.DependencyModel/Dependency.cs diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContext.cs b/src/managed/Microsoft.Extensions.DependencyModel/DependencyContext.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/DependencyContext.cs rename to src/managed/Microsoft.Extensions.DependencyModel/DependencyContext.cs diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextExtensions.cs b/src/managed/Microsoft.Extensions.DependencyModel/DependencyContextExtensions.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/DependencyContextExtensions.cs rename to src/managed/Microsoft.Extensions.DependencyModel/DependencyContextExtensions.cs diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextJsonReader.cs b/src/managed/Microsoft.Extensions.DependencyModel/DependencyContextJsonReader.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/DependencyContextJsonReader.cs rename to src/managed/Microsoft.Extensions.DependencyModel/DependencyContextJsonReader.cs diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs b/src/managed/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs rename to src/managed/Microsoft.Extensions.DependencyModel/DependencyContextLoader.cs diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs b/src/managed/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs rename to src/managed/Microsoft.Extensions.DependencyModel/DependencyContextPaths.cs diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextStrings.cs b/src/managed/Microsoft.Extensions.DependencyModel/DependencyContextStrings.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/DependencyContextStrings.cs rename to src/managed/Microsoft.Extensions.DependencyModel/DependencyContextStrings.cs diff --git a/src/Microsoft.Extensions.DependencyModel/DependencyContextWriter.cs b/src/managed/Microsoft.Extensions.DependencyModel/DependencyContextWriter.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/DependencyContextWriter.cs rename to src/managed/Microsoft.Extensions.DependencyModel/DependencyContextWriter.cs diff --git a/src/Microsoft.Extensions.DependencyModel/DirectoryWrapper.cs b/src/managed/Microsoft.Extensions.DependencyModel/DirectoryWrapper.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/DirectoryWrapper.cs rename to src/managed/Microsoft.Extensions.DependencyModel/DirectoryWrapper.cs diff --git a/src/Microsoft.Extensions.DependencyModel/EnvironmentWrapper.cs b/src/managed/Microsoft.Extensions.DependencyModel/EnvironmentWrapper.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/EnvironmentWrapper.cs rename to src/managed/Microsoft.Extensions.DependencyModel/EnvironmentWrapper.cs diff --git a/src/Microsoft.Extensions.DependencyModel/FileSystemWrapper.cs b/src/managed/Microsoft.Extensions.DependencyModel/FileSystemWrapper.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/FileSystemWrapper.cs rename to src/managed/Microsoft.Extensions.DependencyModel/FileSystemWrapper.cs diff --git a/src/Microsoft.Extensions.DependencyModel/FileWrapper.cs b/src/managed/Microsoft.Extensions.DependencyModel/FileWrapper.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/FileWrapper.cs rename to src/managed/Microsoft.Extensions.DependencyModel/FileWrapper.cs diff --git a/src/Microsoft.Extensions.DependencyModel/IDependencyContextReader.cs b/src/managed/Microsoft.Extensions.DependencyModel/IDependencyContextReader.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/IDependencyContextReader.cs rename to src/managed/Microsoft.Extensions.DependencyModel/IDependencyContextReader.cs diff --git a/src/Microsoft.Extensions.DependencyModel/IDirectory.cs b/src/managed/Microsoft.Extensions.DependencyModel/IDirectory.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/IDirectory.cs rename to src/managed/Microsoft.Extensions.DependencyModel/IDirectory.cs diff --git a/src/Microsoft.Extensions.DependencyModel/IEnvironment.cs b/src/managed/Microsoft.Extensions.DependencyModel/IEnvironment.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/IEnvironment.cs rename to src/managed/Microsoft.Extensions.DependencyModel/IEnvironment.cs diff --git a/src/Microsoft.Extensions.DependencyModel/IFile.cs b/src/managed/Microsoft.Extensions.DependencyModel/IFile.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/IFile.cs rename to src/managed/Microsoft.Extensions.DependencyModel/IFile.cs diff --git a/src/Microsoft.Extensions.DependencyModel/IFileSystem.cs b/src/managed/Microsoft.Extensions.DependencyModel/IFileSystem.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/IFileSystem.cs rename to src/managed/Microsoft.Extensions.DependencyModel/IFileSystem.cs diff --git a/src/Microsoft.Extensions.DependencyModel/JsonTextReaderExtensions.cs b/src/managed/Microsoft.Extensions.DependencyModel/JsonTextReaderExtensions.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/JsonTextReaderExtensions.cs rename to src/managed/Microsoft.Extensions.DependencyModel/JsonTextReaderExtensions.cs diff --git a/src/Microsoft.Extensions.DependencyModel/Library.cs b/src/managed/Microsoft.Extensions.DependencyModel/Library.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/Library.cs rename to src/managed/Microsoft.Extensions.DependencyModel/Library.cs diff --git a/src/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.xproj b/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.xproj similarity index 83% rename from src/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.xproj rename to src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.xproj index 8c6e7884..af468481 100644 --- a/src/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.xproj +++ b/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.xproj @@ -8,8 +8,8 @@ 688870c8-9843-4f9e-8576-d39290ad0f25 Microsoft.Extensions.DependencyModel - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin + ..\..\..\Bin\obj\$(MSBuildProjectName) + ..\..\..\Bin\$(MSBuildProjectName) 2.0 diff --git a/src/Microsoft.Extensions.DependencyModel/Properties/Properties.cs b/src/managed/Microsoft.Extensions.DependencyModel/Properties/Properties.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/Properties/Properties.cs rename to src/managed/Microsoft.Extensions.DependencyModel/Properties/Properties.cs diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs rename to src/managed/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/CompositeCompilationAssemblyResolver.cs b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/CompositeCompilationAssemblyResolver.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/Resolution/CompositeCompilationAssemblyResolver.cs rename to src/managed/Microsoft.Extensions.DependencyModel/Resolution/CompositeCompilationAssemblyResolver.cs diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/DotNetReferenceAssembliesPathResolver.cs b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/DotNetReferenceAssembliesPathResolver.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/Resolution/DotNetReferenceAssembliesPathResolver.cs rename to src/managed/Microsoft.Extensions.DependencyModel/Resolution/DotNetReferenceAssembliesPathResolver.cs diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/ICompilationAssemblyResolver.cs b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/ICompilationAssemblyResolver.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/Resolution/ICompilationAssemblyResolver.cs rename to src/managed/Microsoft.Extensions.DependencyModel/Resolution/ICompilationAssemblyResolver.cs diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/PackageCompilationAssemblyResolver.cs b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/PackageCompilationAssemblyResolver.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/Resolution/PackageCompilationAssemblyResolver.cs rename to src/managed/Microsoft.Extensions.DependencyModel/Resolution/PackageCompilationAssemblyResolver.cs diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/ReferenceAssemblyPathResolver.cs b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/ReferenceAssemblyPathResolver.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/Resolution/ReferenceAssemblyPathResolver.cs rename to src/managed/Microsoft.Extensions.DependencyModel/Resolution/ReferenceAssemblyPathResolver.cs diff --git a/src/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs rename to src/managed/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs diff --git a/src/Microsoft.Extensions.DependencyModel/ResourceAssembly.cs b/src/managed/Microsoft.Extensions.DependencyModel/ResourceAssembly.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/ResourceAssembly.cs rename to src/managed/Microsoft.Extensions.DependencyModel/ResourceAssembly.cs diff --git a/src/Microsoft.Extensions.DependencyModel/RuntimeAssembly.cs b/src/managed/Microsoft.Extensions.DependencyModel/RuntimeAssembly.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/RuntimeAssembly.cs rename to src/managed/Microsoft.Extensions.DependencyModel/RuntimeAssembly.cs diff --git a/src/Microsoft.Extensions.DependencyModel/RuntimeAssetGroup.cs b/src/managed/Microsoft.Extensions.DependencyModel/RuntimeAssetGroup.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/RuntimeAssetGroup.cs rename to src/managed/Microsoft.Extensions.DependencyModel/RuntimeAssetGroup.cs diff --git a/src/Microsoft.Extensions.DependencyModel/RuntimeFallbacks.cs b/src/managed/Microsoft.Extensions.DependencyModel/RuntimeFallbacks.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/RuntimeFallbacks.cs rename to src/managed/Microsoft.Extensions.DependencyModel/RuntimeFallbacks.cs diff --git a/src/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs b/src/managed/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs rename to src/managed/Microsoft.Extensions.DependencyModel/RuntimeLibrary.cs diff --git a/src/Microsoft.Extensions.DependencyModel/TargetInfo.cs b/src/managed/Microsoft.Extensions.DependencyModel/TargetInfo.cs similarity index 100% rename from src/Microsoft.Extensions.DependencyModel/TargetInfo.cs rename to src/managed/Microsoft.Extensions.DependencyModel/TargetInfo.cs diff --git a/src/Microsoft.Extensions.DependencyModel/project.json b/src/managed/Microsoft.Extensions.DependencyModel/project.json similarity index 91% rename from src/Microsoft.Extensions.DependencyModel/project.json rename to src/managed/Microsoft.Extensions.DependencyModel/project.json index 1f4316fc..49cffdf5 100644 --- a/src/Microsoft.Extensions.DependencyModel/project.json +++ b/src/managed/Microsoft.Extensions.DependencyModel/project.json @@ -1,9 +1,9 @@ { "description": "Abstractions for reading `.deps` files.", - "version": "2.0.0-preview2-*", + "version": "2.0.0-*", "buildOptions": { "warningsAsErrors": true, - "keyFile": "../../setuptools/Key.snk" + "keyFile": "../../../tools-local/setuptools/Key.snk" }, "dependencies": { "Microsoft.DotNet.PlatformAbstractions": { diff --git a/src/managed/dir.proj b/src/managed/dir.proj new file mode 100644 index 00000000..1a166dbd --- /dev/null +++ b/src/managed/dir.proj @@ -0,0 +1,259 @@ + + + + + + + + + + + + BuildProjectsForNuGetPackages; + PublishSharedFrameworkAndSharedHost; + GenerateRuntimeGraph; + CopyHostArtifactsToSharedFramework; + CrossGenDirectory; + GenerateVersionFile; + + + + + + + + + + + --build-base-path $(IntermediateOutputForPackaging) --configuration $(ConfigurationGroup) + + + + + + + + + + + + + + + + + + --fallbacksource $(PackagesOutDir) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(PackageTargetRid) + transport.runtime.$(CrossgenRid).Microsoft.NetCore.Runtime.CoreCLR + $(PackagesDir)$(RuntimePackageId)/$(CoreCLRVersion)/tools + $(CrossgenPathRoot)/x86_arm/crossgen.exe + $(CrossgenPathRoot)/x64_arm64/crossgen.exe + $(CrossgenPathRoot)/crossgen$(ExeSuffix) + $(PackagesDir)$(RuntimePackageId)/$(CoreCLRVersion)/runtimes/$(CrossgenRid)/lib/netstandard1.0 + transport.runtime.$(CrossgenRid).Microsoft.NETCore.Jit + $(PackagesDir)$(JitPackageId)/$(JitVersion)/runtimes + $(JitPathRoot)/x86_arm/native/$(LibPrefix)clrjit$(LibSuffix) + $(JitPathRoot)/x64_arm64/native/$(LibPrefix)clrjit$(LibSuffix) + $(JitPathRoot)/$(CrossgenRid)/native/$(LibPrefix)clrjit$(LibSuffix) + $(IntermediateOutputRootPath)$([System.Guid]::NewGuid()) + + + + + + + + + + + + + + + + + + $(CoreLibsDir);$(SharedFrameworkNameAndVersionRoot) + -platform_assemblies_paths $(PlatformAssembliesPaths) -JITPath $(JitPath) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + DepsProcessor + $(ProjectDir)tools-local/setuptools/independent/$(runtimeGraphGeneratorName) + $(IntermediateOutputRootPath)setuptools/independent/$(runtimeGraphGeneratorName) + win + osx + linux + + + + + + $(runtimeGraphGeneratorOutput)/$(runtimeGraphGeneratorName)$(ExeSuffix) + $(SharedFrameworkNameAndVersionRoot)\$(SharedFrameworkName).deps.json + + + + + + + + + + + + + + + + + + + + + + + + $(IntermediateOutputRootPath)lockedHostTemp + + + + + + + + --source https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v3/index.json --fallbacksource $(PackagesOutDir) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" + + + + + + --output $(CoreHostLockedDir) --no-build -r $(PackageTargetRid) + + + + + + + + + + + + + + + + $(MSBuildThisFileDirectory)sharedframework\framework\project.json.template + + + + + + + + + \ No newline at end of file diff --git a/src/sharedframework/framework/Program.cs b/src/managed/sharedframework/framework/Program.cs similarity index 100% rename from src/sharedframework/framework/Program.cs rename to src/managed/sharedframework/framework/Program.cs diff --git a/src/sharedframework/framework/project.json.template b/src/managed/sharedframework/framework/project.json.template similarity index 97% rename from src/sharedframework/framework/project.json.template rename to src/managed/sharedframework/framework/project.json.template index 60e883ff..8965197d 100644 --- a/src/sharedframework/framework/project.json.template +++ b/src/managed/sharedframework/framework/project.json.template @@ -11,6 +11,5 @@ }, "frameworks": { "$(TargetFramework)": {} - } } } diff --git a/pkg/deps/project.json b/src/pkg/deps/project.json similarity index 100% rename from pkg/deps/project.json rename to src/pkg/deps/project.json diff --git a/src/pkg/dir.proj b/src/pkg/dir.proj new file mode 100644 index 00000000..8f59412e --- /dev/null +++ b/src/pkg/dir.proj @@ -0,0 +1,25 @@ + + + + + + + + + + TargetsWindows=true + TargetsOSX=true;DistroRid=$(PackageTargetRid) + TargetsLinux=true;DistroRid=$(PackageTargetRid) + + + + + + + + + + + + \ No newline at end of file diff --git a/src/pkg/dir.props b/src/pkg/dir.props new file mode 100644 index 00000000..cd9d3e55 --- /dev/null +++ b/src/pkg/dir.props @@ -0,0 +1,49 @@ + + + + + + $(TargetArchitecture) + $(BaseOutputRootPath)corehost + $(StabilizePackageVersion) + + + + $(ObjDir)version.txt + + + + $(PackagesOutDir) + $(SymbolPackagesOutDir) + $(ProjectDir)src/pkg/projects/dotnet_library_license.txt + $(ProjectDir)src/pkg/projects/ThirdPartyNotices.txt + $(ProjectDir)src/pkg/projects/descriptions.json + + https://go.microsoft.com/fwlink/?LinkID=799417 + https://dot.net + $(Platform) + x64 + + $(MSBuildThisFileDirectory)packageIndex.json + + + true + + + + + + + + + + + + + + + + + + + diff --git a/src/pkg/dir.targets b/src/pkg/dir.targets new file mode 100644 index 00000000..03b490b6 --- /dev/null +++ b/src/pkg/dir.targets @@ -0,0 +1,7 @@ + + + + + $(ProjectDir)packages\$(PlatformPackageId)\$(PlatformPackageVersion)\runtime.json + + diff --git a/pkg/dir.traversal.targets b/src/pkg/dir.traversal.targets similarity index 100% rename from pkg/dir.traversal.targets rename to src/pkg/dir.traversal.targets diff --git a/pkg/global.json b/src/pkg/global.json similarity index 100% rename from pkg/global.json rename to src/pkg/global.json diff --git a/pkg/packageIndex.json b/src/pkg/packageIndex.json similarity index 100% rename from pkg/packageIndex.json rename to src/pkg/packageIndex.json diff --git a/pkg/packages.builds b/src/pkg/packages.builds similarity index 100% rename from pkg/packages.builds rename to src/pkg/packages.builds diff --git a/packaging/LICENSE.txt b/src/pkg/packaging/LICENSE.txt similarity index 100% rename from packaging/LICENSE.txt rename to src/pkg/packaging/LICENSE.txt diff --git a/packaging/deb/dotnet-hostfxr-debian_config.json b/src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json similarity index 100% rename from packaging/deb/dotnet-hostfxr-debian_config.json rename to src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json diff --git a/packaging/deb/dotnet-sharedframework-debian_config.json b/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json similarity index 100% rename from packaging/deb/dotnet-sharedframework-debian_config.json rename to src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json diff --git a/packaging/deb/dotnet-sharedhost-debian_config.json b/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json similarity index 100% rename from packaging/deb/dotnet-sharedhost-debian_config.json rename to src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json diff --git a/src/pkg/packaging/deb/package.props b/src/pkg/packaging/deb/package.props new file mode 100644 index 00000000..564683e9 --- /dev/null +++ b/src/pkg/packaging/deb/package.props @@ -0,0 +1,16 @@ + + + + dotnet-deb-tool + 1.0.1-* + $(ProjectDir)setuptools/dotnet-deb-tool/ + $(PackagesOutDir) + dotnet-deb-tool-consumer + debian_config.json + $(IntermediateOutputRootPath)$(toolConsumerProjectName) + $(CompressionRoot)deb/ + dotnet-host + dotnet-hostfxr-$(HostVersion) + dotnet-sharedframework-$(SharedFrameworkName)-$(SharedFrameworkNugetVersion) + + \ No newline at end of file diff --git a/src/pkg/packaging/deb/package.targets b/src/pkg/packaging/deb/package.targets new file mode 100644 index 00000000..4b3704ad --- /dev/null +++ b/src/pkg/packaging/deb/package.targets @@ -0,0 +1,211 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(SharedHostDebPkgName) + $(HostVersion) + $(SharedHostPublishRoot) + $(SharedHostInstallerFile) + $(ProjectDir)Documentation/manpages + dotnet-sharedhost-debian_config.json + $(debPackaginfConfigPath)$(ConfigJsonName) + $(PackagesIntermediateDir)$(DebPackageName)/$(DebPackageVersion) + + + + $(debIntermediatesDir)/debianLayoutDirectory/ + $(debLayoutDirectory)$ + $(debLayoutDirectory)package_root + $(debLayoutDirectory)samples + $(debLayoutDirectory)docs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(HostFxrDebPkgName) + $(HostVersion) + $(HostFxrPublishRoot) + $(HostFxrInstallerFile) + dotnet-hostfxr-debian_config.json + $(debPackaginfConfigPath)$(ConfigJsonName) + $(PackagesIntermediateDir)$(DebPackageName)/$(DebPackageVersion) + + + + $(debIntermediatesDir)/debianLayoutDirectory/ + $(debLayoutDirectory)$ + $(debLayoutDirectory)package_root + $(debLayoutDirectory)samples + $(debLayoutDirectory)docs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(SharedFxDebPkgName) + $(HostVersion) + $(SharedHostPublishRoot) + $(SharedHostInstallerFile) + dotnet-sharedframework-debian_config.json + $(debPackaginfConfigPath)$(ConfigJsonName) + $(PackagesIntermediateDir)$(DebPackageName)/$(DebPackageVersion) + + + + $(debIntermediatesDir)/debianLayoutDirectory/ + $(debLayoutDirectory)$ + $(debLayoutDirectory)package_root + $(debLayoutDirectory)samples + $(debLayoutDirectory)docs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj new file mode 100644 index 00000000..4b06fc8c --- /dev/null +++ b/src/pkg/packaging/dir.proj @@ -0,0 +1,163 @@ + + + + + + + + GenerateVersionBadge; + GenerateCompressedFiles; + GenerateNugetPackages; + GenerateInstallers; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(ProjectDir)resources/images/version_badge.svg + + + + + + + + + + + + + + + + + + + + + + + + + + @(CombinedCompressedFileSet->'%(Identity)', ' ') + @(HostFxrCompressedFileSet->'%(Identity)', ' ') + @(SharedFrameworkCompressedFileSet->'%(Identity)', ' ') + + + + + + + + + + + + + + GenerateMsis; + GenerateBundles; + GeneratePkgs; + GenerateDebs; + + + + + + + + + + + + --build-base-path $(IntermediateOutputForPackaging) + --output $(PackagesOutDir) + --configuration $(Configuration) + --version-suffix $(VersionSuffix) + + + + + + \ No newline at end of file diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props new file mode 100644 index 00000000..851c5cbf --- /dev/null +++ b/src/pkg/packaging/dir.props @@ -0,0 +1,38 @@ + + + + + + $(ProjectDir)src/pkg/packaging/ + + $(IntermediateOutputRootPath)packages/ + $(IntermediateOutputRootPath)sharedHost/ + $(IntermediateOutputRootPath)hostFxr/ + $(IntermediateOutputRootPath)sharedFx/ + $(IntermediateOutputRootPath)combined-framework-host/ + + + + $(PackageTargetRid)-$(HostFullVersion) + + + + dotnet-$(ProductMoniker)$(CompressedFileExtension) + dotnet-hostfxr-$(ProductMoniker)$(CompressedFileExtension) + dotnet-sharedframework-$(ProductMoniker)$(CompressedFileExtension) + + + + dotnet-$(ProductMoniker)$(CombinedInstallerExtension) + dotnet-host-$(ProductMoniker)$(InstallerExtension) + dotnet-hostfxr-$(ProductMoniker)$(InstallerExtension) + dotnet-sharedframework-$(ProductMoniker)$(InstallerExtension) + dotnet-sharedframework-$(ProductMoniker)-engine.exe + + + + 'Microsoft .NET Core $(ProductionVersion) - Host' + 'Microsoft .NET Core $(ProductionVersion) - Host FX Resolver' + 'Microsoft .NET Core $(ProductionVersion) - Runtime' + + \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/cs.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/cs.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/cs.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/cs.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/cs.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/cs.lproj/welcome.html similarity index 56% rename from packaging/osx/sharedframework/resources/cs.lproj/welcome.html rename to src/pkg/packaging/osx/hostfxr/resources/cs.lproj/welcome.html index 6538e4d1..3bf1c66c 100644 --- a/packaging/osx/sharedframework/resources/cs.lproj/welcome.html +++ b/src/pkg/packaging/osx/hostfxr/resources/cs.lproj/welcome.html @@ -2,16 +2,19 @@ - Welcome to the .NET Core installer. + Welcome to the .NET Core CLI installer.

- Microsoft .NET Core + Microsoft .NET Core CLI

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. + .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use.

- + \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/de.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/de.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/de.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/de.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/de.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/de.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/de.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/de.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/de.lproj/welcome.html similarity index 56% rename from packaging/osx/sharedframework/resources/de.lproj/welcome.html rename to src/pkg/packaging/osx/hostfxr/resources/de.lproj/welcome.html index 6538e4d1..3bf1c66c 100644 --- a/packaging/osx/sharedframework/resources/de.lproj/welcome.html +++ b/src/pkg/packaging/osx/hostfxr/resources/de.lproj/welcome.html @@ -2,16 +2,19 @@ - Welcome to the .NET Core installer. + Welcome to the .NET Core CLI installer.

- Microsoft .NET Core + Microsoft .NET Core CLI

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. + .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use.

- + \ No newline at end of file diff --git a/packaging/osx/sharedframework/resources/dotnetbackground.png b/src/pkg/packaging/osx/hostfxr/resources/dotnetbackground.png similarity index 100% rename from packaging/osx/sharedframework/resources/dotnetbackground.png rename to src/pkg/packaging/osx/hostfxr/resources/dotnetbackground.png diff --git a/src/pkg/packaging/osx/hostfxr/resources/en.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/en.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/en.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/en.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/en.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/en.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/en.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/en.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/en.lproj/welcome.html similarity index 56% rename from packaging/osx/sharedframework/resources/en.lproj/welcome.html rename to src/pkg/packaging/osx/hostfxr/resources/en.lproj/welcome.html index 6538e4d1..3bf1c66c 100644 --- a/packaging/osx/sharedframework/resources/en.lproj/welcome.html +++ b/src/pkg/packaging/osx/hostfxr/resources/en.lproj/welcome.html @@ -2,16 +2,19 @@ - Welcome to the .NET Core installer. + Welcome to the .NET Core CLI installer.

- Microsoft .NET Core + Microsoft .NET Core CLI

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. + .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use.

- + \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/es.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/es.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/es.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/es.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/es.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/es.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/es.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/es.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/es.lproj/welcome.html similarity index 56% rename from packaging/osx/sharedframework/resources/es.lproj/welcome.html rename to src/pkg/packaging/osx/hostfxr/resources/es.lproj/welcome.html index 6538e4d1..3bf1c66c 100644 --- a/packaging/osx/sharedframework/resources/es.lproj/welcome.html +++ b/src/pkg/packaging/osx/hostfxr/resources/es.lproj/welcome.html @@ -2,16 +2,19 @@ - Welcome to the .NET Core installer. + Welcome to the .NET Core CLI installer.

- Microsoft .NET Core + Microsoft .NET Core CLI

- .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. + .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use.

- + \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/fr.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/fr.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/fr.lproj/eula.rtf diff --git a/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/welcome.html new file mode 100644 index 00000000..3bf1c66c --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/welcome.html @@ -0,0 +1,20 @@ + + + + + Welcome to the .NET Core CLI installer. + + + +

+ Microsoft .NET Core CLI +

+

+ .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. +

+
+ + \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/it.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/it.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/it.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/it.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/it.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/it.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/it.lproj/eula.rtf diff --git a/src/pkg/packaging/osx/hostfxr/resources/it.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/it.lproj/welcome.html new file mode 100644 index 00000000..3bf1c66c --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/it.lproj/welcome.html @@ -0,0 +1,20 @@ + + + + + Welcome to the .NET Core CLI installer. + + + +

+ Microsoft .NET Core CLI +

+

+ .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. +

+
+ + \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/ja.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/ja.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/ja.lproj/eula.rtf diff --git a/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/welcome.html new file mode 100644 index 00000000..3bf1c66c --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/welcome.html @@ -0,0 +1,20 @@ + + + + + Welcome to the .NET Core CLI installer. + + + +

+ Microsoft .NET Core CLI +

+

+ .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. +

+
+ + \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/ko.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/ko.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/ko.lproj/eula.rtf diff --git a/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/welcome.html new file mode 100644 index 00000000..3bf1c66c --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/welcome.html @@ -0,0 +1,20 @@ + + + + + Welcome to the .NET Core CLI installer. + + + +

+ Microsoft .NET Core CLI +

+

+ .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. +

+
+ + \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/pl.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/pl.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/pl.lproj/eula.rtf diff --git a/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/welcome.html new file mode 100644 index 00000000..3bf1c66c --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/welcome.html @@ -0,0 +1,20 @@ + + + + + Welcome to the .NET Core CLI installer. + + + +

+ Microsoft .NET Core CLI +

+

+ .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. +

+
+ + \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf diff --git a/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/welcome.html new file mode 100644 index 00000000..3bf1c66c --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/welcome.html @@ -0,0 +1,20 @@ + + + + + Welcome to the .NET Core CLI installer. + + + +

+ Microsoft .NET Core CLI +

+

+ .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. +

+
+ + \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/ru.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/ru.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/ru.lproj/eula.rtf diff --git a/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/welcome.html new file mode 100644 index 00000000..3bf1c66c --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/welcome.html @@ -0,0 +1,20 @@ + + + + + Welcome to the .NET Core CLI installer. + + + +

+ Microsoft .NET Core CLI +

+

+ .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. +

+
+ + \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/tr.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/tr.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/tr.lproj/eula.rtf diff --git a/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/welcome.html new file mode 100644 index 00000000..3bf1c66c --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/welcome.html @@ -0,0 +1,20 @@ + + + + + Welcome to the .NET Core CLI installer. + + + +

+ Microsoft .NET Core CLI +

+

+ .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. +

+
+ + \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf diff --git a/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/welcome.html new file mode 100644 index 00000000..3bf1c66c --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/welcome.html @@ -0,0 +1,20 @@ + + + + + Welcome to the .NET Core CLI installer. + + + +

+ Microsoft .NET Core CLI +

+

+ .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. +

+
+ + \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html new file mode 100644 index 00000000..65eb6343 --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html @@ -0,0 +1,22 @@ + + + + + + Congratulations! You've successfully installed .NET Core CLI! + + +
+

The installation was successful.

+

.NET Core CLI was successfully installed.

+

+ Install dependencies +

+

+ In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page. +

+
+ + diff --git a/packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf similarity index 100% rename from packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf rename to src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf diff --git a/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/welcome.html b/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/welcome.html new file mode 100644 index 00000000..3bf1c66c --- /dev/null +++ b/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/welcome.html @@ -0,0 +1,20 @@ + + + + + Welcome to the .NET Core CLI installer. + + + +

+ Microsoft .NET Core CLI +

+

+ .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs. +

+

+ This package contains all the tools you will need to start writing applications with .NET Core. It includes the several tools, including the C# compiler and the NuGet package manager, and a copy of .NET Core for both you and the tools to use. +

+
+ + \ No newline at end of file diff --git a/packaging/osx/hostfxr/scripts/postinstall b/src/pkg/packaging/osx/hostfxr/scripts/postinstall old mode 100755 new mode 100644 similarity index 100% rename from packaging/osx/hostfxr/scripts/postinstall rename to src/pkg/packaging/osx/hostfxr/scripts/postinstall diff --git a/src/pkg/packaging/osx/package.props b/src/pkg/packaging/osx/package.props new file mode 100644 index 00000000..e554116b --- /dev/null +++ b/src/pkg/packaging/osx/package.props @@ -0,0 +1,10 @@ + + + + $(CompressionRoot)osx/ + com.microsoft.dotnet.sharedhost.component.osx.x64 + com.microsoft.dotnet.hostfxr.$(HostVersion).component.osx.x64 + com.microsoft.dotnet.sharedframework.$(SharedFrameworkName).$(HostVersion).component.osx.x64 + com.microsoft.dotnet.$(SharedFrameworkName).$(HostVersion).osx.x64 + + \ No newline at end of file diff --git a/src/pkg/packaging/osx/package.targets b/src/pkg/packaging/osx/package.targets new file mode 100644 index 00000000..c9d0ded8 --- /dev/null +++ b/src/pkg/packaging/osx/package.targets @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + $(SharedFxComponentId) + $(SharedFrameworkPublishRoot) + + $(PackagesIntermediateDir)$(SharedFxComponentId).pkg + $(SharedFrameworkInstallerFile) + + + $(SharedHostComponentId) + $(SharedHostPublishRoot) + + $(PackagesIntermediateDir)$(SharedHostComponentId).pkg + $(SharedHostInstallerFile) + + + $(HostFxrComponentId) + $(HostFxrPublishRoot) + + $(PackagesIntermediateDir)$(HostFxrComponentId).pkg + $(HostFxrInstallerFile) + + + + + /usr/local/share/dotnet + --version $(HostVersion) --install-location $(InstallLocation) + + + + + + + + + $(OSXScriptRoot)sharedframework/ + $(SharedFxScriptRoot)resources + $(PackagesIntermediateDir)$(CombinedInstallerFile) + shared-framework-distribution-template.xml + $(PackagesIntermediateDir)$(TemplateFile) + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packaging/osx/sharedframework/resources/cs.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/cs.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/cs.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/cs.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/de.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/de.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/de.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/de.lproj/eula.rtf diff --git a/src/pkg/packaging/osx/sharedframework/resources/dotnetbackground.png b/src/pkg/packaging/osx/sharedframework/resources/dotnetbackground.png new file mode 100644 index 0000000000000000000000000000000000000000..15ce07c36f2e009a6776b3b0a299d1b1600fcfff GIT binary patch literal 4054 zcmeHJdpy&7AD@yF9_dCQJe@)pL&>EYDoJjmQ*l_BQ{*z17}F9_6iFqPhDE2#rdA&N%bIxDSAJ0GM``739{r!I5@B91ye7^6``>Gez zSwl@%4Fm#dxEwzC69}{f0RkzNELQ<${P1_rgFu>vE(iA?Lx1M=Npp^m7QP&uGdXIt zDr|}FNsApj2nRh1b{wZ|&TZ8k{=?XI!7{A`d2%HX0@JceDFRv+16NLbt#rz}|n4zZv*n z8MtS(^xW-kvH6yUl1D`6g!L=g+dYh@{m%1Ugb4M9|6 z1_(qAQP%sm+jrrAV)zc(pTim7M)meGW_(@i!%@clvgmdcvls7%EbK5kx%GlL_fSkE`rSB(jey;HRY-4nvO9a1VOse5p9EmYqj_mX==OF6!Jt8c~F zO#U1AcGE5DdTgYIQy~8RgA`s7(!=Ef_Crs|uOeNjR9a7zH#8L|iD%^L7y8@|P$HfI z+zgazlBQZ#BX+#vaJi0BeM{I0<22V%S}9T1)X|N0^-0qj^}IA_VaD6g!Sf?2tYjXIkFBnMOK=X)D(l<$=LtbxPUuU?RR zc@jB!b*I>x!`MeW?LgXmJl#uRbrmGXQK|OOcFDDBXo??@jUQ+^aAYK{cKTU zL0QiBt0YMRUtjIGN$IP0EGq)?+V76E^+I=E+AzMry?hP%2&!tE)(OwH#EsQF34h@< zD|;hq2LJYMVw{k`86k%BLg)N(;kE}qe?%?>pF)Se+Y}Tmoh1%G@E?qq@7ZH&?%zFe zg8q99zN102v%mL|&vRr~%ej}xV(>i<1gB=kQ6uQfjZS4b< z*CQZwunMgH%wV;!$Few&38f=Oco;U^xD1+Jhw%(OQ7P%tp^OX>`q*q!&VZi!$uCo?U8%9 zZQV0@L+_0VA6zec8o~$bihdRqRJ-3cW)tUUdg(!#9c1`;DG@O<927JbgEJ`6`dXG& zjG@;JVJ(L$+KTw77?D>{Z=E(a(ws4ra58$HRPpc{HP3%6bBmwFspD~UZ?bk5H+TM8 zbbLEhG+?#CIt#NT{X*pVllwg8XuTm%KUt(!8scV)^i{3NLJ(+bJ7cGkXsA@KYW2yA zR`h^}W39j&ER^lY_^eJEHR2xN<=0xLnqXGIP~rJn!Jg08dujMQKD1`%{;o67zF8(N zr<=p!G@Z2<+f-zL>O3}4ABnww7befcggO|Zr z5g9=0J`<-s`H#9XTQT8{Fw>x08ZDlf?N!=jSrmyjxPPDqbrpe=Fm zbq75sQ}weNsk+mqsL#y=IEr^_`9#$ZFp=^?w95;K{XFwy6>k}=U^gY;R>6I3WaTP+ zM-5s6T#Iml_#s&rL6aiq4WT5hZWv_ZDe=^6j{D=n!v=<0d~BZb=lF+4KDX>oRGFEY z`sJG9dbLLoE3Y@iK&O}j2>HRL?#=7;&Y%4fy83Le!`#rrm*vY~0`Vi0N_iMho;GTf zO-5eXYmi1Gr|~O(kCH30OiNn{K5~`*dY9gOBP&k&I{x3wcV@+8gU}#x7aKUDJ{0S z6RK2e&fd-gv`8&N&HA1!o9ec{u^W|HNEEX~&t#Wug?{0~bX#ZA7mR-y&CU=?RC;-Q z9ilKPcl;v7FiP}(x)(QE#5Y|(bvPX7mR1>sVxm8>FLQdzZL8ZfNqh}#Mml9_GQ4hr zs@?q7N!1!?y(7^?BTv&8QDyKo2++PgjNhiWG5QlD<8frli(^!4u8-TRd)&8ip?5FP z(fn#r*H+3&Z%z#UPR;N2_HK(g&_>XXF0r@E&$yFOr;R!XXfWTYaHQF7iC!# zle-0UgGJTu6ZZrY@K2z}(*ccL{&jOVVsles?%VB0E9WD*6)Ox?)+($*#d~<&9Gj?7 zALYKD@dP6DgBedgdB9wveLDW2Rs`jJthgXXm?Gr;|-)RghI?aOcL#ya5ei|?| zibnhb%R`z^x`N5qRm0^31-3ZY<35}u|06)re11q^NW zSO2M{>sa@t#=Z;%w#B_PFE&ndWQ0-H?C@T2fYrH;R8o*=tabKDdxFYL>a}AiU7hs=AnX&z%Sukd+AON`!__ z)+EqI!W*(QBR%wWwG?zK_XPigG;#a#XJea>`T`yy1*l+P89aQuX3L>+k8+vdqNkp? z>T9|9gb+uWO{^Xq8cE6)CEfK)YI}bARwyQvxX7LvhG>*s&avD0kqsf2iroFDY8PKj zZDtIW;RJ|qy>#&g)fm}Az&A{*5rVW@XL*8Yb>U^F?8Qu$m;c_~u-R1SsWHS#eAz2@ z_|grg$Vi=JyD19LGUzAvr$vkrT>CHq@l-1Mx-V06n^_pKnfY8Y>WvpOZ^AKi{aHa# ztWo{DKvk*%{)?;J^9AW1uI+yOQE84N7Q2%%8wk^d`gEN*LoCdeW5hQA`uA*Nn6)P| z(pZq1=EpT3fwW67;&0`3!feT7h;MGj&8-d?Vso(O`e?Zehb68mZhLK#`0zf2EwrX#g&L@vqv;V&%jo|TAE1r2}co`E~@%{MD7^LOE* zIsSut1^|Dx(0^i<0o(p>8~?}fdoy3S7P0Irn1pgKMPgqXD9n4Zx~er>@%T;Nl38(v hMhegUe;odu@}(%@7uUE9!GZ#Yixc!<#Q}KAzW{oKiPQi9 literal 0 HcmV?d00001 diff --git a/packaging/osx/sharedframework/resources/en.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/en.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/en.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/en.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/es.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/es.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/es.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/es.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/fr.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/fr.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/fr.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/fr.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/it.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/it.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/it.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/it.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/ja.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/ja.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/ja.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/ja.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/ko.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/ko.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/ko.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/ko.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/pl.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/pl.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/pl.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/pl.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/pt-br.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/pt-br.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/ru.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/ru.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/ru.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/ru.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/tr.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/tr.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/tr.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/tr.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/zh-hans.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/zh-hans.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/zh-hans.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/zh-hans.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/resources/zh-hant.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/zh-hant.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedframework/resources/zh-hant.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedframework/resources/zh-hant.lproj/eula.rtf diff --git a/packaging/osx/sharedframework/scripts/postinstall b/src/pkg/packaging/osx/sharedframework/scripts/postinstall old mode 100755 new mode 100644 similarity index 100% rename from packaging/osx/sharedframework/scripts/postinstall rename to src/pkg/packaging/osx/sharedframework/scripts/postinstall diff --git a/packaging/osx/sharedframework/shared-framework-distribution-template.xml b/src/pkg/packaging/osx/sharedframework/shared-framework-distribution-template.xml similarity index 97% rename from packaging/osx/sharedframework/shared-framework-distribution-template.xml rename to src/pkg/packaging/osx/sharedframework/shared-framework-distribution-template.xml index 38062e4d..a9550ce3 100644 --- a/packaging/osx/sharedframework/shared-framework-distribution-template.xml +++ b/src/pkg/packaging/osx/sharedframework/shared-framework-distribution-template.xml @@ -7,7 +7,7 @@ - + diff --git a/packaging/osx/sharedhost/resources/cs.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/cs.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/cs.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/cs.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/resources/de.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/de.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/de.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/de.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/resources/en.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/en.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/en.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/en.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/resources/es.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/es.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/es.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/es.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/resources/fr.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/fr.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/fr.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/fr.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/resources/it.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/it.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/it.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/it.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/resources/ja.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/ja.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/ja.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/ja.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/resources/ko.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/ko.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/ko.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/ko.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/resources/pl.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/pl.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/pl.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/pl.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/resources/ru.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/ru.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/ru.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/ru.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/resources/tr.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/tr.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/tr.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/tr.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf similarity index 100% rename from packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf rename to src/pkg/packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf diff --git a/packaging/osx/sharedhost/scripts/postinstall b/src/pkg/packaging/osx/sharedhost/scripts/postinstall old mode 100755 new mode 100644 similarity index 100% rename from packaging/osx/sharedhost/scripts/postinstall rename to src/pkg/packaging/osx/sharedhost/scripts/postinstall diff --git a/src/pkg/packaging/windows/GetWix.ps1 b/src/pkg/packaging/windows/GetWix.ps1 new file mode 100644 index 00000000..498c89ab --- /dev/null +++ b/src/pkg/packaging/windows/GetWix.ps1 @@ -0,0 +1,19 @@ +Param( + [string]$WixFilename="wix.3.10.2.zip", + [string]$OutputDir="." +) + +$uri = "https://dotnetcli.blob.core.windows.net/build/wix/" + $wixFilename +$outFile = $OutputDir + "\" + $wixFilename + +if (!(Test-Path "$OutputDir")) +{ + mkdir "$OutputDir" | Out-Null +} + +if(!(Test-Path "$outFile")) +{ + Write-Output "Downloading WixTools to $outFile.." + Write-Output $uri + Invoke-WebRequest -Uri $uri -OutFile $outFile +} \ No newline at end of file diff --git a/packaging/windows/host/generatemsi.ps1 b/src/pkg/packaging/windows/host/generatemsi.ps1 similarity index 86% rename from packaging/windows/host/generatemsi.ps1 rename to src/pkg/packaging/windows/host/generatemsi.ps1 index 9d3955e6..d7450d2f 100644 --- a/packaging/windows/host/generatemsi.ps1 +++ b/src/pkg/packaging/windows/host/generatemsi.ps1 @@ -14,22 +14,28 @@ param( [Parameter(Mandatory=$true)][string]$SharedHostUpgradeCode ) -. "$PSScriptRoot\..\..\..\scripts\common\_common.ps1" -$RepoRoot = Convert-Path "$PSScriptRoot\..\..\.." +$RepoRoot = Convert-Path "$PSScriptRoot\..\..\..\..\.." +$CommonScript = "$RepoRoot\tools-local\scripts\common\_common.ps1" +if(-Not (Test-Path "$CommonScript")) +{ + Exit -1 +} +. "$CommonScript" +$CompressionRoot = Join-Path $RepoRoot "src\pkg\packaging" function RunCandle { $result = $true pushd "$WixRoot" Write-Host Running candle.. - $AuthWsxRoot = Join-Path $RepoRoot "packaging\windows\host" + $AuthWsxRoot = Join-Path $CompressionRoot "windows\host" .\candle.exe -nologo ` -out "$WixObjRoot\" ` -ext WixDependencyExtension.dll ` -dHostSrc="$SharedHostPublishRoot" ` - -dMicrosoftEula="$RepoRoot\packaging\osx\sharedhost\resources\en.lproj\eula.rtf" ` + -dMicrosoftEula="$CompressionRoot\osx\sharedhost\resources\en.lproj\eula.rtf" ` -dProductMoniker="$ProductMoniker" ` -dBuildVersion="$SharedHostMSIVersion" ` -dNugetVersion="$SharedHostNugetVersion" ` diff --git a/packaging/windows/host/host.wxs b/src/pkg/packaging/windows/host/host.wxs similarity index 100% rename from packaging/windows/host/host.wxs rename to src/pkg/packaging/windows/host/host.wxs diff --git a/packaging/windows/host/provider.wxs b/src/pkg/packaging/windows/host/provider.wxs similarity index 100% rename from packaging/windows/host/provider.wxs rename to src/pkg/packaging/windows/host/provider.wxs diff --git a/packaging/windows/host/variables.wxi b/src/pkg/packaging/windows/host/variables.wxi similarity index 100% rename from packaging/windows/host/variables.wxi rename to src/pkg/packaging/windows/host/variables.wxi diff --git a/packaging/windows/hostfxr/generatemsi.ps1 b/src/pkg/packaging/windows/hostfxr/generatemsi.ps1 similarity index 89% rename from packaging/windows/hostfxr/generatemsi.ps1 rename to src/pkg/packaging/windows/hostfxr/generatemsi.ps1 index 4175a358..f75827c7 100644 --- a/packaging/windows/hostfxr/generatemsi.ps1 +++ b/src/pkg/packaging/windows/hostfxr/generatemsi.ps1 @@ -14,8 +14,16 @@ param( [Parameter(Mandatory=$true)][string]$HostFxrUpgradeCode ) -. "$PSScriptRoot\..\..\..\scripts\common\_common.ps1" -$RepoRoot = Convert-Path "$PSScriptRoot\..\..\.." +$RepoRoot = Convert-Path "$PSScriptRoot\..\..\..\..\.." +$CommonScript = "$RepoRoot\tools-local\scripts\common\_common.ps1" + +if(-Not (Test-Path "$CommonScript")) +{ + Exit -1 +} +. "$CommonScript" + +$CompressionRoot = Join-Path $RepoRoot "src\pkg\packaging" $InstallFileswsx = "$WixObjRoot\install-files.wxs" $InstallFilesWixobj = "$WixObjRoot\install-files.wixobj" @@ -53,14 +61,14 @@ function RunCandle pushd "$WixRoot" Write-Host Running candle.. - $AuthWsxRoot = Join-Path $RepoRoot "packaging\windows\hostfxr" + $AuthWsxRoot = Join-Path $CompressionRoot "windows\hostfxr" $ComponentVersion = $HostFxrNugetVersion.Replace('-', '_'); .\candle.exe -nologo ` -out "$WixObjRoot\" ` -dHostFxrSrc="$HostFxrPublishRoot" ` - -dMicrosoftEula="$RepoRoot\packaging\osx\hostfxr\resources\en.lproj\eula.rtf" ` + -dMicrosoftEula="$CompressionRoot\osx\hostfxr\resources\en.lproj\eula.rtf" ` -dProductMoniker="$ProductMoniker" ` -dBuildVersion="$HostFxrMSIVersion" ` -dNugetVersion="$HostFxrNugetVersion" ` diff --git a/packaging/windows/hostfxr/hostfxr.wxs b/src/pkg/packaging/windows/hostfxr/hostfxr.wxs similarity index 100% rename from packaging/windows/hostfxr/hostfxr.wxs rename to src/pkg/packaging/windows/hostfxr/hostfxr.wxs diff --git a/packaging/windows/hostfxr/provider.wxs b/src/pkg/packaging/windows/hostfxr/provider.wxs similarity index 100% rename from packaging/windows/hostfxr/provider.wxs rename to src/pkg/packaging/windows/hostfxr/provider.wxs diff --git a/packaging/windows/hostfxr/registrykeys.wxs b/src/pkg/packaging/windows/hostfxr/registrykeys.wxs similarity index 100% rename from packaging/windows/hostfxr/registrykeys.wxs rename to src/pkg/packaging/windows/hostfxr/registrykeys.wxs diff --git a/packaging/windows/hostfxr/variables.wxi b/src/pkg/packaging/windows/hostfxr/variables.wxi similarity index 100% rename from packaging/windows/hostfxr/variables.wxi rename to src/pkg/packaging/windows/hostfxr/variables.wxi diff --git a/src/pkg/packaging/windows/package.props b/src/pkg/packaging/windows/package.props new file mode 100644 index 00000000..b91b5f3c --- /dev/null +++ b/src/pkg/packaging/windows/package.props @@ -0,0 +1,13 @@ + + + + $(CompressionRoot)windows\ + 3.10.2 + $(WindowsScriptRoot)GetWix.ps1 + $(IntermediateOutputRootPath)WixTools.$(WixVersion) + $(IntermediateOutputRootPath)wix/ + $(TargetArchitecture) + x86 + x64 + + \ No newline at end of file diff --git a/src/pkg/packaging/windows/package.targets b/src/pkg/packaging/windows/package.targets new file mode 100644 index 00000000..80313203 --- /dev/null +++ b/src/pkg/packaging/windows/package.targets @@ -0,0 +1,110 @@ + + + + + + + + + + + + 3.10.2 + wix.$(WixVersion).zip + + + + + + <_filelist Include="$(WixToolsDir)\**" /> + + + + + + + + + + + + + + + + + + $(SharedHostPublishRoot) + $(SharedHostBrandName) + $(PackagesOutDir)$(SharedHostInstallerFile) + $(SharedHostUpgradeCode) + + + $(HostFxrPublishRoot) + $(HostFxrBrandName) + $(PackagesOutDir)$(HostFxrInstallerFile) + $(HostFxrUpgradeCode) + + + + $(SharedFrameworkPublishRoot) + $(SharedFrameworkBrandName) + $(PackagesOutDir)$(SharedFrameworkInstallerFile) + + + + + + + + + + + + + + + + "$(MsiArch)" "$(TargetArchitecture)" + $(MsiVersionString) $(HostVersion) $(ArchParams) + $(MsiVersionString) $(SharedFrameworkName) $(HostVersion) $(SharedFxUpgradeCode) $(ArchParams) + + + + + + + + + + $(WindowsScriptRoot)sharedframework\generatebundle.ps1 + $(PackagesOutDir)$(SharedFrameworkInstallerFile) + $(PackagesOutDir)$(SharedHostInstallerFile) + $(PackagesOutDir)$(HostFxrInstallerFile) + $(PackagesOutDir)$(CombinedInstallerFile) + 'Microsoft .NET Core $(ProductionVersion) - Runtime' + "$(MsiArch)" "$(TargetArchitecture)" + + + + + + + + $(ShareFXMsi) $(HostMsi) $(HostFxrMsi) $(SharedBundle) $(WixToolsDir) $(SharedBrandName) $(MsiVersionString) $(BundleDisplayVersion) $(SharedFrameworkName) $(HostVersion) $(SharedBundleCode) $(ArchParams) + + + + + \ No newline at end of file diff --git a/packaging/windows/sharedframework/bundle.thm b/src/pkg/packaging/windows/sharedframework/bundle.thm similarity index 100% rename from packaging/windows/sharedframework/bundle.thm rename to src/pkg/packaging/windows/sharedframework/bundle.thm diff --git a/packaging/windows/sharedframework/bundle.wxl b/src/pkg/packaging/windows/sharedframework/bundle.wxl similarity index 100% rename from packaging/windows/sharedframework/bundle.wxl rename to src/pkg/packaging/windows/sharedframework/bundle.wxl diff --git a/packaging/windows/sharedframework/bundle.wxs b/src/pkg/packaging/windows/sharedframework/bundle.wxs similarity index 100% rename from packaging/windows/sharedframework/bundle.wxs rename to src/pkg/packaging/windows/sharedframework/bundle.wxs diff --git a/packaging/windows/sharedframework/generatebundle.ps1 b/src/pkg/packaging/windows/sharedframework/generatebundle.ps1 similarity index 86% rename from packaging/windows/sharedframework/generatebundle.ps1 rename to src/pkg/packaging/windows/sharedframework/generatebundle.ps1 index 3bda64da..2feac699 100644 --- a/packaging/windows/sharedframework/generatebundle.ps1 +++ b/src/pkg/packaging/windows/sharedframework/generatebundle.ps1 @@ -17,8 +17,15 @@ param( [Parameter(Mandatory=$true)][string]$Architecture ) -. "$PSScriptRoot\..\..\..\scripts\common\_common.ps1" -$RepoRoot = Convert-Path "$PSScriptRoot\..\..\.." +$RepoRoot = Convert-Path "$PSScriptRoot\..\..\..\..\.." +$CommonScript = "$RepoRoot\tools-local\scripts\common\_common.ps1" +if(-Not (Test-Path "$CommonScript")) +{ + Exit -1 +} +. "$CommonScript" + +$CompressionRoot = Join-Path $RepoRoot "src\pkg\packaging" function RunCandleForBundle { @@ -26,11 +33,11 @@ function RunCandleForBundle pushd "$WixRoot" Write-Host Running candle for bundle.. - $AuthWsxRoot = Join-Path $RepoRoot "packaging\windows\sharedframework" + $AuthWsxRoot = Join-Path $CompressionRoot "windows\sharedframework" $SharedFrameworkComponentVersion = $SharedFrameworkNugetVersion.Replace('-', '_'); .\candle.exe -nologo ` - -dMicrosoftEula="$RepoRoot\packaging\osx\sharedframework\resources\en.lproj\eula.rtf" ` + -dMicrosoftEula="$CompressionRoot\osx\sharedframework\resources\en.lproj\eula.rtf" ` -dProductMoniker="$ProductMoniker" ` -dBuildVersion="$DotnetMSIVersion" ` -dDisplayVersion="$DotnetCLIVersion" ` @@ -64,7 +71,7 @@ function RunLightForBundle pushd "$WixRoot" Write-Host Running light for bundle.. - $AuthWsxRoot = Join-Path $RepoRoot "packaging\windows\sharedframework" + $AuthWsxRoot = Join-Path $CompressionRoot "windows\sharedframework" .\light.exe -nologo ` -cultures:en-us ` diff --git a/packaging/windows/sharedframework/generatemsi.ps1 b/src/pkg/packaging/windows/sharedframework/generatemsi.ps1 similarity index 90% rename from packaging/windows/sharedframework/generatemsi.ps1 rename to src/pkg/packaging/windows/sharedframework/generatemsi.ps1 index 84381d5c..ae9eca4d 100644 --- a/packaging/windows/sharedframework/generatemsi.ps1 +++ b/src/pkg/packaging/windows/sharedframework/generatemsi.ps1 @@ -15,8 +15,15 @@ param( [Parameter(Mandatory=$true)][string]$WixObjRoot ) -. "$PSScriptRoot\..\..\..\scripts\common\_common.ps1" -$RepoRoot = Convert-Path "$PSScriptRoot\..\..\.." +$RepoRoot = Convert-Path "$PSScriptRoot\..\..\..\..\.." +$CommonScript = "$RepoRoot\tools-local\scripts\common\_common.ps1" +if(-Not (Test-Path "$CommonScript")) +{ + Exit -1 +} +. "$CommonScript" + +$CompressionRoot = Join-Path $RepoRoot "src\pkg\packaging" $InstallFileswsx = "$WixObjRoot\install-files.wxs" $InstallFilesWixobj = "$WixObjRoot\install-files.wixobj" @@ -55,13 +62,13 @@ function RunCandle pushd "$WixRoot" Write-Host Running candle.. - $AuthWsxRoot = Join-Path $RepoRoot "packaging\windows\sharedframework" + $AuthWsxRoot = Join-Path $CompressionRoot "windows\sharedframework" $SharedFrameworkComponentVersion = $SharedFrameworkNugetVersion.Replace('-', '_'); .\candle.exe -nologo ` -out "$WixObjRoot\" ` -dSharedFrameworkSource="$SharedFrameworkPublishRoot" ` - -dMicrosoftEula="$RepoRoot\packaging\osx\sharedframework\resources\en.lproj\eula.rtf" ` + -dMicrosoftEula="$CompressionRoot\osx\sharedframework\resources\en.lproj\eula.rtf" ` -dProductMoniker="$ProductMoniker" ` -dFrameworkName="$SharedFrameworkNugetName" ` -dFrameworkDisplayVersion="$SharedFrameworkNugetVersion" ` diff --git a/packaging/windows/sharedframework/provider.wxs b/src/pkg/packaging/windows/sharedframework/provider.wxs similarity index 100% rename from packaging/windows/sharedframework/provider.wxs rename to src/pkg/packaging/windows/sharedframework/provider.wxs diff --git a/packaging/windows/sharedframework/registrykeys.wxs b/src/pkg/packaging/windows/sharedframework/registrykeys.wxs similarity index 86% rename from packaging/windows/sharedframework/registrykeys.wxs rename to src/pkg/packaging/windows/sharedframework/registrykeys.wxs index bcf20c23..67ff47fd 100644 --- a/packaging/windows/sharedframework/registrykeys.wxs +++ b/src/pkg/packaging/windows/sharedframework/registrykeys.wxs @@ -8,6 +8,11 @@ + + + + + diff --git a/packaging/windows/sharedframework/sharedframework.wxs b/src/pkg/packaging/windows/sharedframework/sharedframework.wxs similarity index 100% rename from packaging/windows/sharedframework/sharedframework.wxs rename to src/pkg/packaging/windows/sharedframework/sharedframework.wxs diff --git a/packaging/windows/sharedframework/variables.wxi b/src/pkg/packaging/windows/sharedframework/variables.wxi similarity index 100% rename from packaging/windows/sharedframework/variables.wxi rename to src/pkg/packaging/windows/sharedframework/variables.wxi diff --git a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.builds b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.builds similarity index 100% rename from pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.builds rename to src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.builds diff --git a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj similarity index 100% rename from pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj rename to src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj diff --git a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj similarity index 97% rename from pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj rename to src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index 25fae771..15d877a1 100644 --- a/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -2,9 +2,11 @@ + + $(NetCoreAppVersion) - netcoreapp$([System.Version]::Parse('$(NetCoreAppVersion)').ToString(2)) + netcoreapp$([System.Version]::Parse('$(ProductionVersion)').ToString(2)) true true false @@ -60,7 +62,6 @@ - runtimes/$(PackageTargetRuntime)/native
- + diff --git a/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.OSX.Microsoft.NETCore.DotNetAppHost.props b/src/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.OSX.Microsoft.NETCore.DotNetAppHost.props similarity index 89% rename from pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.OSX.Microsoft.NETCore.DotNetAppHost.props rename to src/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.OSX.Microsoft.NETCore.DotNetAppHost.props index e4a11056..f40f61fb 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.OSX.Microsoft.NETCore.DotNetAppHost.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.OSX.Microsoft.NETCore.DotNetAppHost.props @@ -6,6 +6,6 @@ runtimes/$(PackageTargetRuntime)/native - + diff --git a/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props b/src/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props similarity index 92% rename from pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props rename to src/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props index 69fc882a..0e598ce8 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props @@ -9,6 +9,6 @@ runtimes/$(PackageTargetRuntime)/native - + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.builds b/src/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.builds similarity index 100% rename from pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.builds rename to src/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.builds diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.pkgproj b/src/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.pkgproj similarity index 100% rename from pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.pkgproj rename to src/pkg/projects/Microsoft.NETCore.DotNetHost/Microsoft.NETCore.DotNetHost.pkgproj diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Linux.Microsoft.NETCore.DotNetHost.props b/src/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Linux.Microsoft.NETCore.DotNetHost.props similarity index 89% rename from pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Linux.Microsoft.NETCore.DotNetHost.props rename to src/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Linux.Microsoft.NETCore.DotNetHost.props index 7d2f6677..11279e41 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Linux.Microsoft.NETCore.DotNetHost.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Linux.Microsoft.NETCore.DotNetHost.props @@ -6,6 +6,6 @@ runtimes/$(PackageTargetRuntime)/native - + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.OSX.Microsoft.NETCore.DotNetHost.props b/src/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.OSX.Microsoft.NETCore.DotNetHost.props similarity index 89% rename from pkg/projects/Microsoft.NETCore.DotNetHost/runtime.OSX.Microsoft.NETCore.DotNetHost.props rename to src/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.OSX.Microsoft.NETCore.DotNetHost.props index 7d2f6677..11279e41 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.OSX.Microsoft.NETCore.DotNetHost.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.OSX.Microsoft.NETCore.DotNetHost.props @@ -6,6 +6,6 @@ runtimes/$(PackageTargetRuntime)/native - + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props b/src/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props similarity index 92% rename from pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props rename to src/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props index c0b3529a..3f97b80b 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props @@ -9,6 +9,6 @@ runtimes/$(PackageTargetRuntime)/native - + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.builds b/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.builds similarity index 100% rename from pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.builds rename to src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.builds diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj similarity index 100% rename from pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj rename to src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Linux.Microsoft.NETCore.DotNetHostPolicy.props b/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Linux.Microsoft.NETCore.DotNetHostPolicy.props similarity index 87% rename from pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Linux.Microsoft.NETCore.DotNetHostPolicy.props rename to src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Linux.Microsoft.NETCore.DotNetHostPolicy.props index c39547e4..b309276b 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Linux.Microsoft.NETCore.DotNetHostPolicy.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Linux.Microsoft.NETCore.DotNetHostPolicy.props @@ -6,6 +6,6 @@ runtimes/$(PackageTargetRuntime)/native - + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.OSX.Microsoft.NETCore.DotNetHostPolicy.props b/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.OSX.Microsoft.NETCore.DotNetHostPolicy.props similarity index 87% rename from pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.OSX.Microsoft.NETCore.DotNetHostPolicy.props rename to src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.OSX.Microsoft.NETCore.DotNetHostPolicy.props index 208dbbaa..5ab47585 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.OSX.Microsoft.NETCore.DotNetHostPolicy.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.OSX.Microsoft.NETCore.DotNetHostPolicy.props @@ -6,6 +6,6 @@ runtimes/$(PackageTargetRuntime)/native - + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props b/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props similarity index 92% rename from pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props rename to src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props index a1d247b8..8f9e9b80 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props @@ -9,6 +9,6 @@ runtimes/$(PackageTargetRuntime)/native - + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.builds b/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.builds similarity index 100% rename from pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.builds rename to src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.builds diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj b/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj similarity index 100% rename from pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj rename to src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Linux.Microsoft.NETCore.DotNetHostResolver.props b/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Linux.Microsoft.NETCore.DotNetHostResolver.props similarity index 89% rename from pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Linux.Microsoft.NETCore.DotNetHostResolver.props rename to src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Linux.Microsoft.NETCore.DotNetHostResolver.props index faee75fb..b3ebe195 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Linux.Microsoft.NETCore.DotNetHostResolver.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Linux.Microsoft.NETCore.DotNetHostResolver.props @@ -6,6 +6,6 @@ runtimes/$(PackageTargetRuntime)/native - + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.OSX.Microsoft.NETCore.DotNetHostResolver.props b/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.OSX.Microsoft.NETCore.DotNetHostResolver.props similarity index 89% rename from pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.OSX.Microsoft.NETCore.DotNetHostResolver.props rename to src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.OSX.Microsoft.NETCore.DotNetHostResolver.props index 7eb0d2c1..bd722644 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.OSX.Microsoft.NETCore.DotNetHostResolver.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.OSX.Microsoft.NETCore.DotNetHostResolver.props @@ -6,6 +6,6 @@ runtimes/$(PackageTargetRuntime)/native - + diff --git a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props b/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props similarity index 90% rename from pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props rename to src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props index 2f5beffd..580df8f3 100644 --- a/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props @@ -9,6 +9,6 @@ runtimes/$(PackageTargetRuntime)/native - + \ No newline at end of file diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds similarity index 100% rename from pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds rename to src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj similarity index 100% rename from pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj rename to src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj diff --git a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj similarity index 98% rename from pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj rename to src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj index 232876bf..18a98301 100644 --- a/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj @@ -49,7 +49,7 @@ - + + + true + + + true + + diff --git a/pkg/projects/dir.targets b/src/pkg/projects/dir.targets similarity index 98% rename from pkg/projects/dir.targets rename to src/pkg/projects/dir.targets index 33c9cc78..921733f4 100644 --- a/pkg/projects/dir.targets +++ b/src/pkg/projects/dir.targets @@ -41,7 +41,7 @@ diff --git a/pkg/projects/dir.traversal.targets b/src/pkg/projects/dir.traversal.targets similarity index 100% rename from pkg/projects/dir.traversal.targets rename to src/pkg/projects/dir.traversal.targets diff --git a/pkg/projects/dotnet_library_license.txt b/src/pkg/projects/dotnet_library_license.txt similarity index 100% rename from pkg/projects/dotnet_library_license.txt rename to src/pkg/projects/dotnet_library_license.txt diff --git a/pkg/projects/netcoreappRIDs.props b/src/pkg/projects/netcoreappRIDs.props similarity index 100% rename from pkg/projects/netcoreappRIDs.props rename to src/pkg/projects/netcoreappRIDs.props diff --git a/TestAssets/TestProjects/LightupClient/LightupClient.xproj b/src/test/Assets/TestProjects/LightupClient/LightupClient.xproj similarity index 100% rename from TestAssets/TestProjects/LightupClient/LightupClient.xproj rename to src/test/Assets/TestProjects/LightupClient/LightupClient.xproj diff --git a/TestAssets/TestProjects/LightupClient/Program.cs b/src/test/Assets/TestProjects/LightupClient/Program.cs similarity index 100% rename from TestAssets/TestProjects/LightupClient/Program.cs rename to src/test/Assets/TestProjects/LightupClient/Program.cs diff --git a/TestAssets/TestProjects/LightupClient/project.json b/src/test/Assets/TestProjects/LightupClient/project.json similarity index 85% rename from TestAssets/TestProjects/LightupClient/project.json rename to src/test/Assets/TestProjects/LightupClient/project.json index b98525da..82352df1 100644 --- a/TestAssets/TestProjects/LightupClient/project.json +++ b/src/test/Assets/TestProjects/LightupClient/project.json @@ -9,7 +9,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-preview2-*" + "version": "2.0.0-*" } } } diff --git a/TestAssets/TestProjects/LightupLib/LightupLib.xproj b/src/test/Assets/TestProjects/LightupLib/LightupLib.xproj similarity index 100% rename from TestAssets/TestProjects/LightupLib/LightupLib.xproj rename to src/test/Assets/TestProjects/LightupLib/LightupLib.xproj diff --git a/TestAssets/TestProjects/LightupLib/Program.cs b/src/test/Assets/TestProjects/LightupLib/Program.cs similarity index 100% rename from TestAssets/TestProjects/LightupLib/Program.cs rename to src/test/Assets/TestProjects/LightupLib/Program.cs diff --git a/TestAssets/TestProjects/LightupLib/project.json b/src/test/Assets/TestProjects/LightupLib/project.json similarity index 99% rename from TestAssets/TestProjects/LightupLib/project.json rename to src/test/Assets/TestProjects/LightupLib/project.json index 7607c6ae..d4ddc430 100644 --- a/TestAssets/TestProjects/LightupLib/project.json +++ b/src/test/Assets/TestProjects/LightupLib/project.json @@ -9,7 +9,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-preview2-*" + "version": "2.0.0-*" }, "Newtonsoft.Json": "9.0.1-beta1", "Microsoft.CodeAnalysis.Analyzers": { diff --git a/TestAssets/TestProjects/PortableApp/PortableApp.xproj b/src/test/Assets/TestProjects/PortableApp/PortableApp.xproj similarity index 100% rename from TestAssets/TestProjects/PortableApp/PortableApp.xproj rename to src/test/Assets/TestProjects/PortableApp/PortableApp.xproj diff --git a/TestAssets/TestProjects/PortableApp/Program.cs b/src/test/Assets/TestProjects/PortableApp/Program.cs similarity index 100% rename from TestAssets/TestProjects/PortableApp/Program.cs rename to src/test/Assets/TestProjects/PortableApp/Program.cs diff --git a/TestAssets/TestProjects/SharedFxLookupPortableApp/project.json b/src/test/Assets/TestProjects/PortableApp/project.json similarity index 99% rename from TestAssets/TestProjects/SharedFxLookupPortableApp/project.json rename to src/test/Assets/TestProjects/PortableApp/project.json index 29ccd7e6..ae1dc033 100644 --- a/TestAssets/TestProjects/SharedFxLookupPortableApp/project.json +++ b/src/test/Assets/TestProjects/PortableApp/project.json @@ -9,7 +9,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-preview2-*" + "version": "2.0.0-*" }, "Newtonsoft.Json": "9.0.1-beta1", "Microsoft.CodeAnalysis.Analyzers": { diff --git a/TestAssets/TestProjects/PortableTestApp/PortableApp.xproj b/src/test/Assets/TestProjects/PortableTestApp/PortableApp.xproj similarity index 100% rename from TestAssets/TestProjects/PortableTestApp/PortableApp.xproj rename to src/test/Assets/TestProjects/PortableTestApp/PortableApp.xproj diff --git a/TestAssets/TestProjects/PortableTestApp/Program.cs b/src/test/Assets/TestProjects/PortableTestApp/Program.cs similarity index 100% rename from TestAssets/TestProjects/PortableTestApp/Program.cs rename to src/test/Assets/TestProjects/PortableTestApp/Program.cs diff --git a/TestAssets/TestProjects/PortableTestApp/project.json b/src/test/Assets/TestProjects/PortableTestApp/project.json similarity index 99% rename from TestAssets/TestProjects/PortableTestApp/project.json rename to src/test/Assets/TestProjects/PortableTestApp/project.json index 63f7ef5b..941bffb3 100644 --- a/TestAssets/TestProjects/PortableTestApp/project.json +++ b/src/test/Assets/TestProjects/PortableTestApp/project.json @@ -12,7 +12,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-preview2-*" + "version": "2.0.0-*" }, "Newtonsoft.Json": "9.0.1-beta1", "xunit": "2.1.0", diff --git a/TestAssets/TestProjects/ResourceLookup/Program.cs b/src/test/Assets/TestProjects/ResourceLookup/Program.cs similarity index 100% rename from TestAssets/TestProjects/ResourceLookup/Program.cs rename to src/test/Assets/TestProjects/ResourceLookup/Program.cs diff --git a/TestAssets/TestProjects/ResourceLookup/ResourceLookup.xproj b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.xproj similarity index 100% rename from TestAssets/TestProjects/ResourceLookup/ResourceLookup.xproj rename to src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.xproj diff --git a/TestAssets/TestProjects/ResourceLookup/project.json b/src/test/Assets/TestProjects/ResourceLookup/project.json similarity index 100% rename from TestAssets/TestProjects/ResourceLookup/project.json rename to src/test/Assets/TestProjects/ResourceLookup/project.json diff --git a/TestAssets/TestProjects/SharedFxLookupPortableApp/Program.cs b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/Program.cs similarity index 100% rename from TestAssets/TestProjects/SharedFxLookupPortableApp/Program.cs rename to src/test/Assets/TestProjects/SharedFxLookupPortableApp/Program.cs diff --git a/TestAssets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.xproj b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.xproj similarity index 100% rename from TestAssets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.xproj rename to src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.xproj diff --git a/TestAssets/TestProjects/PortableApp/project.json b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/project.json similarity index 99% rename from TestAssets/TestProjects/PortableApp/project.json rename to src/test/Assets/TestProjects/SharedFxLookupPortableApp/project.json index 29ccd7e6..ae1dc033 100644 --- a/TestAssets/TestProjects/PortableApp/project.json +++ b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/project.json @@ -9,7 +9,7 @@ "dependencies": { "Microsoft.NETCore.App": { "type": "platform", - "version": "2.0.0-preview2-*" + "version": "2.0.0-*" }, "Newtonsoft.Json": "9.0.1-beta1", "Microsoft.CodeAnalysis.Analyzers": { diff --git a/TestAssets/TestProjects/StandaloneApp/Program.cs b/src/test/Assets/TestProjects/StandaloneApp/Program.cs similarity index 100% rename from TestAssets/TestProjects/StandaloneApp/Program.cs rename to src/test/Assets/TestProjects/StandaloneApp/Program.cs diff --git a/TestAssets/TestProjects/StandaloneApp/StandaloneApp.xproj b/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.xproj similarity index 100% rename from TestAssets/TestProjects/StandaloneApp/StandaloneApp.xproj rename to src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.xproj diff --git a/TestAssets/TestProjects/StandaloneApp/project.json.template b/src/test/Assets/TestProjects/StandaloneApp/project.json.template similarity index 99% rename from TestAssets/TestProjects/StandaloneApp/project.json.template rename to src/test/Assets/TestProjects/StandaloneApp/project.json.template index 1870907b..200a107e 100644 --- a/TestAssets/TestProjects/StandaloneApp/project.json.template +++ b/src/test/Assets/TestProjects/StandaloneApp/project.json.template @@ -5,7 +5,7 @@ "frameworks": { "netcoreapp2.0": { "dependencies": { - "Microsoft.NETCore.App": "2.0.0-preview2-*", + "Microsoft.NETCore.App": "2.0.0-*", "Newtonsoft.Json": "9.0.1-beta1", "Microsoft.CodeAnalysis.Analyzers": { diff --git a/TestAssets/TestProjects/StandaloneTestApp/Program.cs b/src/test/Assets/TestProjects/StandaloneTestApp/Program.cs similarity index 100% rename from TestAssets/TestProjects/StandaloneTestApp/Program.cs rename to src/test/Assets/TestProjects/StandaloneTestApp/Program.cs diff --git a/TestAssets/TestProjects/StandaloneTestApp/StandaloneApp.xproj b/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneApp.xproj similarity index 100% rename from TestAssets/TestProjects/StandaloneTestApp/StandaloneApp.xproj rename to src/test/Assets/TestProjects/StandaloneTestApp/StandaloneApp.xproj diff --git a/TestAssets/TestProjects/StandaloneTestApp/project.json.template b/src/test/Assets/TestProjects/StandaloneTestApp/project.json.template similarity index 99% rename from TestAssets/TestProjects/StandaloneTestApp/project.json.template rename to src/test/Assets/TestProjects/StandaloneTestApp/project.json.template index 718e76e8..baed76b2 100644 --- a/TestAssets/TestProjects/StandaloneTestApp/project.json.template +++ b/src/test/Assets/TestProjects/StandaloneTestApp/project.json.template @@ -9,7 +9,7 @@ "portable-net451+win8" ], "dependencies": { - "Microsoft.NETCore.App": "2.0.0-preview2-*", + "Microsoft.NETCore.App": "2.0.0-*", "Newtonsoft.Json": "9.0.1-beta1", "xunit": "2.1.0", "xunit.netcore.extensions": "1.0.0-prerelease-00206", diff --git a/TestAssets/TestUtils/SDKLookup/dotnet.runtimeconfig.json b/src/test/Assets/TestUtils/SDKLookup/dotnet.runtimeconfig.json similarity index 100% rename from TestAssets/TestUtils/SDKLookup/dotnet.runtimeconfig.json rename to src/test/Assets/TestUtils/SDKLookup/dotnet.runtimeconfig.json diff --git a/TestAssets/TestUtils/SDKLookup/global.json b/src/test/Assets/TestUtils/SDKLookup/global.json similarity index 100% rename from TestAssets/TestUtils/SDKLookup/global.json rename to src/test/Assets/TestUtils/SDKLookup/global.json diff --git a/TestAssets/global.json b/src/test/Assets/global.json similarity index 100% rename from TestAssets/global.json rename to src/test/Assets/global.json diff --git a/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs b/src/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs similarity index 100% rename from test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs rename to src/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs diff --git a/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs b/src/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs similarity index 100% rename from test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs rename to src/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs diff --git a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs similarity index 98% rename from test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs rename to src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index 9a340413..351d52f0 100644 --- a/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Linq; using Microsoft.DotNet.InternalAbstractions; @@ -29,7 +29,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // From the artifacts dir, it's possible to find where the sharedFrameworkPublish folder is. We need // to locate it because we'll copy its contents into other folders string artifactsDir = Environment.GetEnvironmentVariable("TEST_ARTIFACTS"); - string builtDotnet = Path.Combine(artifactsDir, "..", "..", "intermediate", "sharedFrameworkPublish"); + string builtDotnet = Path.Combine(artifactsDir, "sharedFrameworkPublish"); // The dotnetMultilevelSDKLookup dir will contain some folders and files that will be // necessary to perform the tests @@ -360,7 +360,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup throw new DirectoryNotFoundException(); } - string dummyRuntimeConfig = Path.Combine(RepoDirectories.RepoRoot, "TestAssets", "TestUtils", + string dummyRuntimeConfig = Path.Combine(RepoDirectories.RepoRoot, "src", "test", "Assets", "TestUtils", "SDKLookup", "dotnet.runtimeconfig.json"); foreach (string version in availableVersions) @@ -442,7 +442,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup public void SetGlobalJsonVersion() { string destFile = Path.Combine(_currentWorkingDir, "global.json"); - string srcFile = Path.Combine(RepoDirectories.RepoRoot, "TestAssets", "TestUtils", + string srcFile = Path.Combine(RepoDirectories.RepoRoot, "src", "test", "Assets", "TestUtils", "SDKLookup", "global.json"); File.Copy(srcFile, destFile, true); diff --git a/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs similarity index 99% rename from test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs rename to src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs index acbf105a..b132307f 100644 --- a/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs @@ -28,7 +28,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // From the artifacts dir, it's possible to find where the sharedFrameworkPublish folder is. We need // to locate it because we'll copy its contents into other folders string artifactsDir = Environment.GetEnvironmentVariable("TEST_ARTIFACTS"); - string builtDotnet = Path.Combine(artifactsDir, "..", "..", "intermediate", "sharedFrameworkPublish"); + string builtDotnet = Path.Combine(artifactsDir, "sharedFrameworkPublish"); // The dotnetMultilevelSharedFxLookup dir will contain some folders and files that will be // necessary to perform the tests diff --git a/test/HostActivationTests/GivenThatICareAboutPortableAppActivation.cs b/src/test/HostActivationTests/GivenThatICareAboutPortableAppActivation.cs similarity index 100% rename from test/HostActivationTests/GivenThatICareAboutPortableAppActivation.cs rename to src/test/HostActivationTests/GivenThatICareAboutPortableAppActivation.cs diff --git a/test/HostActivationTests/GivenThatICareAboutResourceLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutResourceLookup.cs similarity index 100% rename from test/HostActivationTests/GivenThatICareAboutResourceLookup.cs rename to src/test/HostActivationTests/GivenThatICareAboutResourceLookup.cs diff --git a/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs b/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs similarity index 98% rename from test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs rename to src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs index 0881afb1..0837a7bb 100644 --- a/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs @@ -1,4 +1,4 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Copyright (c) .NET Foundation and contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. using System; @@ -12,6 +12,7 @@ using Microsoft.DotNet.CoreSetup.Test; using Microsoft.DotNet.Cli.Build.Framework; using System.Security.Cryptography; using System.Text; +using Microsoft.DotNet.InternalAbstractions; namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.StandaloneApp { diff --git a/test/HostActivationTests/HostActivationTests.xproj b/src/test/HostActivationTests/HostActivationTests.xproj similarity index 81% rename from test/HostActivationTests/HostActivationTests.xproj rename to src/test/HostActivationTests/HostActivationTests.xproj index 5300386c..9d0e9c69 100644 --- a/test/HostActivationTests/HostActivationTests.xproj +++ b/src/test/HostActivationTests/HostActivationTests.xproj @@ -8,8 +8,6 @@ 386d412c-003c-47b1-8258-0e35865cb7c4 Microsoft.DotNet.Tools.Publish.Tests - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin 2.0 diff --git a/test/HostActivationTests/project.json b/src/test/HostActivationTests/project.json similarity index 100% rename from test/HostActivationTests/project.json rename to src/test/HostActivationTests/project.json diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/CompilationLibraryTests.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/CompilationLibraryTests.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/CompilationLibraryTests.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/CompilationLibraryTests.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/CompositeResolverTests.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/CompositeResolverTests.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/CompositeResolverTests.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/CompositeResolverTests.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextBuilderTests.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextBuilderTests.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextBuilderTests.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextBuilderTests.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonReaderTest.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonReaderTest.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonReaderTest.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonReaderTest.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonWriterTests.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonWriterTests.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonWriterTests.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextJsonWriterTests.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextLoaderTests.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextLoaderTests.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextLoaderTests.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextLoaderTests.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextPathsTests.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextPathsTests.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextPathsTests.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextPathsTests.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextTests.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextTests.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextTests.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/DependencyContextTests.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/EnvironmentMockBuilder.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/EnvironmentMockBuilder.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/EnvironmentMockBuilder.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/EnvironmentMockBuilder.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/JsonAssetions.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/JsonAssetions.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/JsonAssetions.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/JsonAssetions.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.xproj b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.xproj similarity index 80% rename from test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.xproj rename to src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.xproj index f6f7d285..93ba20b9 100644 --- a/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.xproj +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.xproj @@ -8,8 +8,6 @@ 4a4711d8-4312-49fc-87b5-4f183f4c6a51 Microsoft.Extensions.DependencyModel.Tests - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin 2.0 diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/ReferenceAssemblyResolverTests.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/ReferenceAssemblyResolverTests.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/ReferenceAssemblyResolverTests.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/ReferenceAssemblyResolverTests.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/TestLibraryFactory.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/TestLibraryFactory.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/TestLibraryFactory.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/TestLibraryFactory.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/mocks/FileSystemMockBuilder.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/mocks/FileSystemMockBuilder.cs similarity index 100% rename from test/Microsoft.Extensions.DependencyModel.Tests/mocks/FileSystemMockBuilder.cs rename to src/test/Microsoft.Extensions.DependencyModel.Tests/mocks/FileSystemMockBuilder.cs diff --git a/test/Microsoft.Extensions.DependencyModel.Tests/project.json b/src/test/Microsoft.Extensions.DependencyModel.Tests/project.json similarity index 93% rename from test/Microsoft.Extensions.DependencyModel.Tests/project.json rename to src/test/Microsoft.Extensions.DependencyModel.Tests/project.json index a862224e..14a77650 100644 --- a/test/Microsoft.Extensions.DependencyModel.Tests/project.json +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/project.json @@ -2,7 +2,7 @@ "version": "1.0.0-*", "description": "Microsoft.DotNet.Tools.Tests.Utilities Class Library", "buildOptions": { - "keyFile": "../../setuptools/Key.snk" + "keyFile": "../../../tools-local/setuptools/Key.snk" }, "dependencies": { "Microsoft.NETCore.App": { diff --git a/test/TestUtils/AppHostExtensions.cs b/src/test/TestUtils/AppHostExtensions.cs similarity index 100% rename from test/TestUtils/AppHostExtensions.cs rename to src/test/TestUtils/AppHostExtensions.cs diff --git a/test/TestUtils/Assertions/CommandResultAssertions.cs b/src/test/TestUtils/Assertions/CommandResultAssertions.cs similarity index 100% rename from test/TestUtils/Assertions/CommandResultAssertions.cs rename to src/test/TestUtils/Assertions/CommandResultAssertions.cs diff --git a/test/TestUtils/Assertions/CommandResultExtensions.cs b/src/test/TestUtils/Assertions/CommandResultExtensions.cs similarity index 100% rename from test/TestUtils/Assertions/CommandResultExtensions.cs rename to src/test/TestUtils/Assertions/CommandResultExtensions.cs diff --git a/test/TestUtils/Assertions/DirectoryInfoAssertions.cs b/src/test/TestUtils/Assertions/DirectoryInfoAssertions.cs similarity index 100% rename from test/TestUtils/Assertions/DirectoryInfoAssertions.cs rename to src/test/TestUtils/Assertions/DirectoryInfoAssertions.cs diff --git a/test/TestUtils/Assertions/DirectoryInfoExtensions.cs b/src/test/TestUtils/Assertions/DirectoryInfoExtensions.cs similarity index 100% rename from test/TestUtils/Assertions/DirectoryInfoExtensions.cs rename to src/test/TestUtils/Assertions/DirectoryInfoExtensions.cs diff --git a/test/TestUtils/RepoDirectoriesProvider.cs b/src/test/TestUtils/RepoDirectoriesProvider.cs similarity index 53% rename from test/TestUtils/RepoDirectoriesProvider.cs rename to src/test/TestUtils/RepoDirectoriesProvider.cs index d8a8082c..b8e3e672 100644 --- a/test/TestUtils/RepoDirectoriesProvider.cs +++ b/src/test/TestUtils/RepoDirectoriesProvider.cs @@ -16,9 +16,12 @@ namespace Microsoft.DotNet.CoreSetup.Test private string _builtDotnet; private string _nugetPackages; private string _corehostPackages; + private string _dotnetSDK; private string _targetRID; + private string _buildRID; + public string BuildRID => _buildRID; public string TargetRID => _targetRID; public string RepoRoot => _repoRoot; public string Artifacts => _artifacts; @@ -26,26 +29,39 @@ namespace Microsoft.DotNet.CoreSetup.Test public string BuiltDotnet => _builtDotnet; public string NugetPackages => _nugetPackages; public string CorehostPackages => _corehostPackages; + public string DotnetSDK => _dotnetSDK; public RepoDirectoriesProvider( string repoRoot = null, string artifacts = null, string builtDotnet = null, string nugetPackages = null, - string corehostPackages = null) + string corehostPackages = null, + string dotnetSdk = null) { - _repoRoot = repoRoot ?? Path.Combine(Directory.GetCurrentDirectory(), "..", ".."); - - string baseArtifactsFolder = artifacts ?? Path.Combine(_repoRoot, "artifacts"); + _repoRoot = repoRoot ?? Directory.GetParent(Directory.GetCurrentDirectory()).Parent.Parent.FullName; + string baseArtifactsFolder = artifacts ?? Path.Combine(_repoRoot, "Bin"); + _targetRID = Environment.GetEnvironmentVariable("TEST_TARGETRID"); + _buildRID = Environment.GetEnvironmentVariable("BUILDRID"); - _artifacts = Path.Combine(baseArtifactsFolder, _targetRID); + _dotnetSDK = dotnetSdk ?? Path.Combine(baseArtifactsFolder, "tests", _targetRID+".Debug", "Tools", "dotnetcli"); + if(!Directory.Exists(_dotnetSDK)) + _dotnetSDK = dotnetSdk ?? Path.Combine(baseArtifactsFolder, "tests", _targetRID+".Release", "Tools", "dotnetcli"); + _artifacts = Path.Combine(baseArtifactsFolder, _buildRID+".Debug"); + if(!Directory.Exists(_artifacts)) + _artifacts = Path.Combine(baseArtifactsFolder, _buildRID+".Release"); _hostArtifacts = artifacts ?? Path.Combine(_artifacts, "corehost"); - _nugetPackages = nugetPackages ?? Path.Combine(_repoRoot, ".nuget", "packages"); + + _nugetPackages = nugetPackages ?? Path.Combine(_repoRoot, "packages"); + _corehostPackages = corehostPackages ?? Path.Combine(_artifacts, "corehost"); - _builtDotnet = builtDotnet ?? Path.Combine(_artifacts, "intermediate", "sharedFrameworkPublish"); + + _builtDotnet = builtDotnet ?? Path.Combine(baseArtifactsFolder, "obj", _buildRID+".Debug", "sharedFrameworkPublish"); + if(!Directory.Exists(_builtDotnet)) + _builtDotnet = builtDotnet ?? Path.Combine(baseArtifactsFolder, "obj", _buildRID+".Release", "sharedFrameworkPublish"); } } } diff --git a/test/TestUtils/RuntimeInformationExtensions.cs b/src/test/TestUtils/RuntimeInformationExtensions.cs similarity index 100% rename from test/TestUtils/RuntimeInformationExtensions.cs rename to src/test/TestUtils/RuntimeInformationExtensions.cs diff --git a/test/TestUtils/TestProject.cs b/src/test/TestUtils/TestProject.cs similarity index 97% rename from test/TestUtils/TestProject.cs rename to src/test/TestUtils/TestProject.cs index 6d32848a..958c055d 100644 --- a/test/TestUtils/TestProject.cs +++ b/src/test/TestUtils/TestProject.cs @@ -24,9 +24,6 @@ namespace Microsoft.DotNet.CoreSetup.Test private string _hostPolicyDll; private string _hostFxrDll; - private IEnumerable _compilationFiles; - private IEnumerable _outputFiles; - public string ProjectDirectory => _projectDirectory; public string ProjectName => _projectName; diff --git a/test/TestUtils/TestProjectFixture.cs b/src/test/TestUtils/TestProjectFixture.cs similarity index 98% rename from test/TestUtils/TestProjectFixture.cs rename to src/test/TestUtils/TestProjectFixture.cs index fd2ff0f5..c200fd97 100644 --- a/test/TestUtils/TestProjectFixture.cs +++ b/src/test/TestUtils/TestProjectFixture.cs @@ -1,4 +1,4 @@ -using Microsoft.DotNet.Cli.Build; +using Microsoft.DotNet.Cli.Build; using System; using System.Collections.Generic; using System.IO; @@ -64,12 +64,12 @@ namespace Microsoft.DotNet.CoreSetup.Test _repoDirectoriesProvider = repoDirectoriesProvider; _testProjectSourceDirectory = testProjectSourceDirectory - ?? Path.Combine(repoDirectoriesProvider.RepoRoot, "TestAssets", "TestProjects"); + ?? Path.Combine(repoDirectoriesProvider.RepoRoot, "src", "test", "Assets", "TestProjects"); _testArtifactDirectory = _testArtifactDirectory ?? Environment.GetEnvironmentVariable(s_testArtifactDirectoryEnvironmentVariable) ?? Path.Combine(AppContext.BaseDirectory, s_testArtifactDirectoryEnvironmentVariable); - _sdkDotnet = new DotNetCli(dotnetInstallPath ?? DotNetCli.GetStage0Path(repoDirectoriesProvider.RepoRoot)); + _sdkDotnet = new DotNetCli(dotnetInstallPath ?? repoDirectoriesProvider.DotnetSDK); _currentRid = currentRid ?? repoDirectoriesProvider.TargetRID; _builtDotnet = new DotNetCli(repoDirectoriesProvider.BuiltDotnet); diff --git a/test/TestUtils/TestUtils.xproj b/src/test/TestUtils/TestUtils.xproj similarity index 81% rename from test/TestUtils/TestUtils.xproj rename to src/test/TestUtils/TestUtils.xproj index 5e2ca9ff..dd3162e8 100644 --- a/test/TestUtils/TestUtils.xproj +++ b/src/test/TestUtils/TestUtils.xproj @@ -1,5 +1,6 @@  + 14.0 $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) @@ -8,8 +9,6 @@ 42095367-4423-4157-bd31-d1a8e3b823b9 Microsoft.DotNet.CoreSetup.Tests.TestUtils - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin 2.0 diff --git a/src/test/TestUtils/project.json b/src/test/TestUtils/project.json new file mode 100644 index 00000000..d89f7dff --- /dev/null +++ b/src/test/TestUtils/project.json @@ -0,0 +1,44 @@ +{ + "version": "1.0.0-*", + "buildOptions": { + "allowUnsafe": true, + "compile": { + "include": [ + "../build/shared-build-targets-utils/Utils/DotNetCli.cs", + "../build/shared-build-targets-utils/Utils/EnvVars.cs", + "../build/Microsoft.DotNet.Cli.Build.Framework/AnsiConsole.cs", + "../build/Microsoft.DotNet.Cli.Build.Framework/AnsiColorExtensions.cs", + "../build/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs", + "../build/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.cs", + "../build/Microsoft.DotNet.Cli.Build.Framework/BuildReporter.cs", + "../build/Microsoft.DotNet.Cli.Build.Framework/Command.cs", + "../build/Microsoft.DotNet.Cli.Build.Framework/CommandResult.cs", + "../build/Microsoft.DotNet.Cli.Build.Framework/Constants.cs", + "../build/Microsoft.DotNet.Cli.Build.Framework/Reporter.cs", + "../build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildPlatform.cs", + "../build/Microsoft.DotNet.Cli.Build.Framework/CurrentPlatform.cs" + ] + } + }, + "dependencies": { + "Microsoft.NETCore.App": { + "type": "platform", + "version": "1.0.0" + }, + "FluentAssertions": "4.0.0", + "System.Runtime.Serialization.Primitives": "4.1.1", + "xunit": "2.1.0", + "xunit.netcore.extensions": "1.0.0-prerelease-00206", + "dotnet-test-xunit": "1.0.0-rc2-192208-24", + "System.Runtime.InteropServices.RuntimeInformation": "4.0.0", + "Microsoft.DotNet.InternalAbstractions": "1.0.0-rc2-002702" + }, + "frameworks": { + "netcoreapp1.0": { + "imports": [ + "dotnet5.4", + "portable-net451+win8" + ] + } + } +} diff --git a/src/test/bootstrap/.cliversion b/src/test/bootstrap/.cliversion new file mode 100644 index 00000000..4a198d5f --- /dev/null +++ b/src/test/bootstrap/.cliversion @@ -0,0 +1 @@ +1.0.0-preview3-003886 diff --git a/src/test/bootstrap/.toolversions b/src/test/bootstrap/.toolversions new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/src/test/bootstrap/.toolversions @@ -0,0 +1 @@ + diff --git a/src/test/bootstrap/bootstrap.ps1 b/src/test/bootstrap/bootstrap.ps1 new file mode 100644 index 00000000..cd02a4d4 --- /dev/null +++ b/src/test/bootstrap/bootstrap.ps1 @@ -0,0 +1,102 @@ +param +( + [Parameter(Mandatory=$false)][string]$RepositoryRoot = "$PSScriptRoot", + [Parameter(Mandatory=$false)][string]$ToolsLocalPath = (Join-Path $RepositoryRoot "..\Tools"), + [Parameter(Mandatory=$false)][string]$CliLocalPath = (Join-Path $ToolsLocalPath "dotnetcli"), + [Parameter(Mandatory=$false)][string]$SharedFrameworkSymlinkPath = (Join-Path $ToolsLocalPath "dotnetcli\shared\Microsoft.NETCore.App\version"), + [Parameter(Mandatory=$false)][string]$SharedFrameworkVersion = "", + [Parameter(Mandatory=$false)][string]$Architecture = "", + [Parameter(Mandatory=$false)][string]$DotNetInstallBranch = "master", + [switch]$Force = $false +) + +$rootToolVersions = Join-Path $RepositoryRoot ".toolversions" +$bootstrapComplete = Join-Path $ToolsLocalPath "bootstrap.complete" + +# if the force switch is specified delete the semaphore file if it exists +if ($Force -and (Test-Path $bootstrapComplete)) +{ + del $bootstrapComplete +} + +# if the semaphore file exists and is identical to the specified version then exit +if ((Test-Path $bootstrapComplete) -and !(Compare-Object (Get-Content $rootToolVersions) (Get-Content $bootstrapComplete))) +{ + exit 0 +} + +$initCliScript = "dotnet-install.ps1" +$dotnetInstallPath = Join-Path $ToolsLocalPath $initCliScript + +# blow away the tools directory so we can start from a known state +if (Test-Path $ToolsLocalPath) +{ + # if the bootstrap.ps1 script was downloaded to the tools directory don't delete it + rd -recurse -force $ToolsLocalPath -exclude "bootstrap.ps1" +} +else +{ + mkdir $ToolsLocalPath | Out-Null +} + +# download CLI boot-strapper script +Invoke-WebRequest "https://raw.githubusercontent.com/dotnet/cli/$DotNetInstallBranch/scripts/obtain/dotnet-install.ps1" -OutFile $dotnetInstallPath + +# load the version of the CLI +$rootCliVersion = Join-Path $RepositoryRoot ".cliversion" +$dotNetCliVersion = Get-Content $rootCliVersion + +if (-Not (Test-Path $CliLocalPath)) +{ + mkdir $CliLocalPath | Out-Null +} + +# now execute the script +Write-Host "$dotnetInstallPath -Version $dotNetCliVersion -InstallDir $CliLocalPath -Architecture ""$Architecture""" +Invoke-Expression "$dotnetInstallPath -Version $dotNetCliVersion -InstallDir $CliLocalPath -Architecture ""$Architecture""" +if ($LastExitCode -ne 0) +{ + Write-Output "The .NET CLI installation failed with exit code $LastExitCode" + exit $LastExitCode +} + +# now stage the contents to tools directory and run any init scripts +foreach ($tool in $tools) +{ + $name, $version = $tool.split("=") + + # verify that the version we expect is what was restored + $pkgVerPath = Join-Path $packagesPath "$name\$version" + if ((Test-Path $pkgVerPath) -eq 0) + { + Write-Output "Directory '$pkgVerPath' doesn't exist, ensure that the version restored matches the version specified." + exit 1 + } + + # at present we have the following conventions when staging package content: + # 1. if a package contains a "tools" directory then recursively copy its contents + # to a directory named the package ID that's under $ToolsLocalPath. + # 2. if a package contains a "libs" directory then recursively copy its contents + # under the $ToolsLocalPath directory. + # 3. if a package contains a file "lib\init-tools.cmd" execute it. + + if (Test-Path (Join-Path $pkgVerPath "tools")) + { + $destination = Join-Path $ToolsLocalPath $name + mkdir $destination | Out-Null + copy (Join-Path $pkgVerPath "tools\*") $destination -recurse + } + elseif (Test-Path (Join-Path $pkgVerPath "lib")) + { + copy (Join-Path $pkgVerPath "lib\*") $ToolsLocalPath -recurse + } + + if (Test-Path (Join-Path $pkgVerPath "lib\init-tools.cmd")) + { + cmd.exe /c (Join-Path $pkgVerPath "lib\init-tools.cmd") $RepositoryRoot $dotNetExe $ToolsLocalPath | Out-File (Join-Path $RepositoryRoot "Init-$name.log") + } +} + +# write semaphore file +copy $rootToolVersions $bootstrapComplete +exit 0 diff --git a/src/test/bootstrap/bootstrap.sh b/src/test/bootstrap/bootstrap.sh new file mode 100755 index 00000000..32621455 --- /dev/null +++ b/src/test/bootstrap/bootstrap.sh @@ -0,0 +1,225 @@ +#!/usr/bin/env bash + +# Stop script on NZEC +# set -e +# Stop script if unbound variable found (use ${var:-} if intentional) +set -u +# By default cmd1 | cmd2 returns exit code of cmd2 regardless of cmd1 success +# This is causing it to fail +set -o pipefail + +# Use in the the functions: eval $invocation +invocation='say_verbose "Calling: ${FUNCNAME[0]}"' + +# standard output may be used as a return value in the functions +# we need a way to write text on the screen in the functions so that +# it won't interfere with the return value. +# Exposing stream 3 as a pipe to standard output of the script itself +exec 3>&1 + +say_err() { + printf "%b\n" "bootstrap: Error: $1" >&2 +} + +say() { + # using stream 3 (defined in the beginning) to not interfere with stdout of functions + # which may be used as return value + printf "%b\n" "bootstrap: $1" >&3 +} + +say_verbose() { + if [ "$verbose" = true ]; then + say "$1" + fi +} + +machine_has() { + eval $invocation + + hash "$1" > /dev/null 2>&1 + return $? +} + +check_min_reqs() { + local hasMinimum=false + if machine_has "curl"; then + hasMinimum=true; + fi + if machine_has "wget"; then + hasMinimum=true; + fi + if [ "$hasMinimum" = "false" ]; then + say_err "curl (recommended) or wget are required to download dotnet. Install missing prereq to proceed." + return 1 + fi + return 0 +} + +# args: +# remote_path - $1 +# [out_path] - $2 - stdout if not provided +download() { + eval $invocation + + local remote_path=$1 + local out_path=${2:-} + + local failed=false + which curl > /dev/null 2> /dev/null + if [ $? -ne 0 ]; then + echo "using wget for download" + if [ -z "$out_path" ]; then + wget -q --tries 10 $remote_path || failed=true + else + wget -q --tries 10 -O $out_path $remote_path || failed=true + fi + else + echo "using curl for download" + if [ -z "$out_path" ]; then + curl --retry 10 -sSL --create-dirs $remote_path || failed=true + else + curl --retry 10 -sSL --create-dirs -o $out_path $remote_path || failed=true + fi + fi + + if [ "$failed" = true ]; then + say_err "Download failed" + return 1 + fi +} + +verbose=false +repoRoot="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +toolsLocalPath="" +cliLocalPath="" +symlinkPath="" +sharedFxVersion="" +force= +forcedCliLocalPath="" +architecture="" +dotNetInstallBranch="rel/1.0.0" + +while [ $# -ne 0 ] +do + name=$1 + case $name in + -r|--repositoryRoot|-[Rr]epositoryRoot) + shift + repoRoot="$1" + ;; + -t|--toolsLocalPath|-[Tt]oolsLocalPath) + shift + toolsLocalPath="$1" + ;; + -c|--cliInstallPath|--cliLocalPath|-[Cc]liLocalPath) + shift + cliLocalPath="$1" + ;; + -u|--useLocalCli|-[Uu]seLocalCli) + shift + forcedCliLocalPath="$1" + ;; + -a|--architecture|-[Aa]rchitecture) + shift + architecture="$1" + ;; + --dotNetInstallBranch|-[Dd]ot[Nn]et[Ii]nstall[Bb]ranch) + shift + dotNetInstallBranch="$1" + ;; + --sharedFrameworkSymlinkPath|--symlink|-[Ss]haredFrameworkSymlinkPath) + shift + symlinkPath="$1" + ;; + --sharedFrameworkVersion|-[Ss]haredFrameworkVersion) + sharedFxVersion="$1" + ;; + --force|-[Ff]orce) + force=true + ;; + -v|--verbose|-[Vv]erbose) + verbose=true + ;; + *) + say_err "Unknown argument \`$name\`" + exit 1 + ;; + esac + + shift +done + +if [ $toolsLocalPath = "" ]; then + toolsLocalPath="$repoRoot/Tools" +fi + +if [ $cliLocalPath = "" ]; then + if [ $forcedCliLocalPath = "" ]; then + cliLocalPath="$toolsLocalPath/dotnetcli" + else + cliLocalPath=$forcedCliLocalPath + fi +fi + +if [ $symlinkPath = "" ]; then + symlinkPath="$toolsLocalPath/dotnetcli/shared/Microsoft.NETCore.App/version" +fi + +rootToolVersions="$repoRoot/.toolversions" +bootstrapComplete="$toolsLocalPath/bootstrap.complete" + +# if the force switch is specified delete the semaphore file if it exists +if [[ $force && -f $bootstrapComplete ]]; then + rm -f $bootstrapComplete +fi + +# if the semaphore file exists and is identical to the specified version then exit +if [[ -f $bootstrapComplete && ! `cmp $bootstrapComplete $rootToolVersions` ]]; then + say "$bootstrapComplete appears to show that bootstrapping is complete. Use --force if you want to re-bootstrap." + exit 0 +fi + +initCliScript="dotnet-install.sh" +dotnetInstallPath="$toolsLocalPath/$initCliScript" + +# blow away the tools directory so we can start from a known state +if [ -d $toolsLocalPath ]; then + # if the bootstrap.sh script was downloaded to the tools directory don't delete it + find $toolsLocalPath -type f -not -name bootstrap.sh -exec rm -f {} \; +else + mkdir -p $toolsLocalPath +fi + +if [ $forcedCliLocalPath = "" ]; then + check_min_reqs + + # download CLI boot-strapper script + # temporary hack for custom dotnet-install script which allows curl or wget use + # download "https://raw.githubusercontent.com/dotnet/cli/$dotNetInstallBranch/scripts/obtain/dotnet-install.sh" "$dotnetInstallPath" + if [ ! -d $toolsLocalPath ]; then + mkdir -p $toolsLocalPath + fi + cp -fv $repoRoot/dotnet-install.sh $dotnetInstallPath + chmod u+x "$dotnetInstallPath" + + # load the version of the CLI + rootCliVersion="$repoRoot/.cliversion" + dotNetCliVersion=`cat $rootCliVersion` + + if [ ! -e $cliLocalPath ]; then + mkdir -p "$cliLocalPath" + fi + + # now execute the script + say_verbose "installing CLI: $dotnetInstallPath --version \"$dotNetCliVersion\" --install-dir $cliLocalPath --architecture \"$architecture\"" + $dotnetInstallPath --version "$dotNetCliVersion" --install-dir $cliLocalPath --architecture "$architecture" + if [ "$?" != "0" ]; then + say_err "The .NET CLI installation failed with exit code $?" + exit $? + fi +fi + +cp $rootToolVersions $bootstrapComplete + +say "Bootstrap finished successfully." + diff --git a/src/test/bootstrap/dotnet-install.sh b/src/test/bootstrap/dotnet-install.sh new file mode 100644 index 00000000..d2b6c6c7 --- /dev/null +++ b/src/test/bootstrap/dotnet-install.sh @@ -0,0 +1,740 @@ +#!/usr/bin/env bash +# Copyright (c) .NET Foundation and contributors. All rights reserved. +# Licensed under the MIT license. See LICENSE file in the project root for full license information. +# + +# Stop script on NZEC +set -e +# Stop script if unbound variable found (use ${var:-} if intentional) +set -u +# By default cmd1 | cmd2 returns exit code of cmd2 regardless of cmd1 success +# This is causing it to fail +set -o pipefail + +# Use in the the functions: eval $invocation +invocation='say_verbose "Calling: ${yellow:-}${FUNCNAME[0]} ${green:-}$*${normal:-}"' + +# standard output may be used as a return value in the functions +# we need a way to write text on the screen in the functions so that +# it won't interfere with the return value. +# Exposing stream 3 as a pipe to standard output of the script itself +exec 3>&1 + +# Setup some colors to use. These need to work in fairly limited shells, like the Ubuntu Docker container where there are only 8 colors. +# See if stdout is a terminal +if [ -t 1 ]; then + # see if it supports colors + ncolors=$(tput colors) + if [ -n "$ncolors" ] && [ $ncolors -ge 8 ]; then + bold="$(tput bold || echo)" + normal="$(tput sgr0 || echo)" + black="$(tput setaf 0 || echo)" + red="$(tput setaf 1 || echo)" + green="$(tput setaf 2 || echo)" + yellow="$(tput setaf 3 || echo)" + blue="$(tput setaf 4 || echo)" + magenta="$(tput setaf 5 || echo)" + cyan="$(tput setaf 6 || echo)" + white="$(tput setaf 7 || echo)" + fi +fi + +say_err() { + printf "%b\n" "${red:-}dotnet_install: Error: $1${normal:-}" >&2 +} + +say() { + # using stream 3 (defined in the beginning) to not interfere with stdout of functions + # which may be used as return value + printf "%b\n" "${cyan:-}dotnet-install:${normal:-} $1" >&3 +} + +say_verbose() { + if [ "$verbose" = true ]; then + say "$1" + fi +} + +get_os_download_name_from_platform() { + eval $invocation + + platform="$1" + case "$platform" in + "centos.7") + echo "centos" + return 0 + ;; + "debian.8") + echo "debian" + return 0 + ;; + "fedora.23") + echo "fedora.23" + return 0 + ;; + "fedora.24") + echo "fedora.24" + return 0 + ;; + "opensuse.13.2") + echo "opensuse.13.2" + return 0 + ;; + "opensuse.42.1") + echo "opensuse.42.1" + return 0 + ;; + "rhel.7"*) + echo "rhel" + return 0 + ;; + "ubuntu.14.04") + echo "ubuntu" + return 0 + ;; + "ubuntu.16.04") + echo "ubuntu.16.04" + return 0 + ;; + "ubuntu.16.10") + echo "ubuntu.16.10" + return 0 + ;; + "alpine.3.4.3") + echo "alpine" + return 0 + ;; + esac + return 1 +} + +get_current_os_name() { + eval $invocation + + local uname=$(uname) + if [ "$uname" = "Darwin" ]; then + echo "osx" + return 0 + elif [ -n "$runtime_id" ]; then + echo $(get_os_download_name_from_platform "${runtime_id%-*}" || echo "${runtime_id%-*}") + return 0 + else + if [ -e /etc/os-release ]; then + . /etc/os-release + os=$(get_os_download_name_from_platform "$ID.$VERSION_ID" || echo "") + if [ -n "$os" ]; then + echo "$os" + return 0 + fi + fi + fi + + say_err "OS name could not be detected: $ID.$VERSION_ID" + return 1 +} + +machine_has() { + eval $invocation + + hash "$1" > /dev/null 2>&1 + return $? +} + +check_min_reqs() { + local hasMinimum=false + if machine_has "curl"; then + hasMinimum=true; + fi + if machine_has "wget"; then + hasMinimum=true; + fi + if [ "$hasMinimum" = "false" ]; then + say_err "curl (recommended) or wget are required to download dotnet. Install missing prereq to proceed." + return 1 + fi + return 0 +} + +check_pre_reqs() { + eval $invocation + + local failing=false; + + if [ "${DOTNET_INSTALL_SKIP_PREREQS:-}" = "1" ]; then + return 0 + fi + + if [ "$(uname)" = "Linux" ]; then + if ! [ -x "$(command -v ldconfig)" ]; then + echo "ldconfig is not in PATH, trying /sbin/ldconfig." + LDCONFIG_COMMAND="/sbin/ldconfig" + else + LDCONFIG_COMMAND="ldconfig" + fi + + [ -z "$($LDCONFIG_COMMAND -p | grep libunwind)" ] && say_err "Unable to locate libunwind. Install libunwind to continue" && failing=true + [ -z "$($LDCONFIG_COMMAND -p | grep libssl)" ] && say_err "Unable to locate libssl. Install libssl to continue" && failing=true + [ -z "$($LDCONFIG_COMMAND -p | grep libcurl)" ] && say_err "Unable to locate libcurl. Install libcurl to continue" && failing=true + [ -z "$($LDCONFIG_COMMAND -p | grep libicu)" ] && say_err "Unable to locate libicu. Install libicu to continue" && failing=true + fi + + if [ "$failing" = true ]; then + return 1 + fi + + return 0 +} + +# args: +# input - $1 +to_lowercase() { + #eval $invocation + + echo "$1" | tr '[:upper:]' '[:lower:]' + return 0 +} + +# args: +# input - $1 +remove_trailing_slash() { + #eval $invocation + + local input=${1:-} + echo "${input%/}" + return 0 +} + +# args: +# input - $1 +remove_beginning_slash() { + #eval $invocation + + local input=${1:-} + echo "${input#/}" + return 0 +} + +# args: +# root_path - $1 +# child_path - $2 - this parameter can be empty +combine_paths() { + eval $invocation + + # TODO: Consider making it work with any number of paths. For now: + if [ ! -z "${3:-}" ]; then + say_err "combine_paths: Function takes two parameters." + return 1 + fi + + local root_path=$(remove_trailing_slash $1) + local child_path=$(remove_beginning_slash ${2:-}) + say_verbose "combine_paths: root_path=$root_path" + say_verbose "combine_paths: child_path=$child_path" + echo "$root_path/$child_path" + return 0 +} + +get_machine_architecture() { + eval $invocation + + # Currently the only one supported + echo "x64" + return 0 +} + +# args: +# architecture - $1 +get_normalized_architecture_from_architecture() { + eval $invocation + + local architecture=$(to_lowercase $1) + case $architecture in + \) + echo "$(get_normalized_architecture_from_architecture $(get_machine_architecture))" + return 0 + ;; + amd64|x64) + echo "x64" + return 0 + ;; + x86) + say_err "Architecture ``x86`` currently not supported" + return 1 + ;; + esac + + say_err "Architecture ``$architecture`` not supported. If you think this is a bug, please report it at https://github.com/dotnet/cli/issues" + return 1 +} + +# version_info is a conceptual two line string representing commit hash and 4-part version +# format: +# Line 1: # commit_hash +# Line 2: # 4-part version + +# args: +# version_text - stdin +get_version_from_version_info() { + eval $invocation + + cat | tail -n 1 + return 0 +} + +# args: +# version_text - stdin +get_commit_hash_from_version_info() { + eval $invocation + + cat | head -n 1 + return 0 +} + +# args: +# install_root - $1 +# relative_path_to_package - $2 +# specific_version - $3 +is_dotnet_package_installed() { + eval $invocation + + local install_root=$1 + local relative_path_to_package=$2 + local specific_version=${3//[$'\t\r\n']} + + local dotnet_package_path=$(combine_paths $(combine_paths $install_root $relative_path_to_package) $specific_version) + say_verbose "is_dotnet_package_installed: dotnet_package_path=$dotnet_package_path" + + if [ -d "$dotnet_package_path" ]; then + return 0 + else + return 1 + fi +} + +# args: +# azure_feed - $1 +# azure_channel - $2 +# normalized_architecture - $3 +get_latest_version_info() { + eval $invocation + + local azure_feed=$1 + local azure_channel=$2 + local normalized_architecture=$3 + + local osname + osname=$(get_current_os_name) || return 1 + + local version_file_url=null + if [ "$shared_runtime" = true ]; then + version_file_url="$uncached_feed/$azure_channel/dnvm/latest.sharedfx.$osname.$normalized_architecture.version" + else + version_file_url="$uncached_feed/Sdk/$azure_channel/latest.version" + fi + say_verbose "get_latest_version_info: latest url: $version_file_url" + + download $version_file_url + return $? +} + +# args: +# channel - $1 +get_azure_channel_from_channel() { + eval $invocation + + local channel=$(to_lowercase $1) + case $channel in + future|dev) + echo "dev" + return 0 + ;; + production) + say_err "Production channel does not exist yet" + return 1 + esac + + echo $channel + return 0 +} + +# args: +# azure_feed - $1 +# azure_channel - $2 +# normalized_architecture - $3 +# version - $4 +get_specific_version_from_version() { + eval $invocation + + local azure_feed=$1 + local azure_channel=$2 + local normalized_architecture=$3 + local version=$(to_lowercase $4) + + case $version in + latest) + local version_info + version_info="$(get_latest_version_info $azure_feed $azure_channel $normalized_architecture)" || return 1 + say_verbose "get_specific_version_from_version: version_info=$version_info" + echo "$version_info" | get_version_from_version_info + return 0 + ;; + lkg) + say_err "``--version LKG`` not supported yet." + return 1 + ;; + *) + echo $version + return 0 + ;; + esac +} + +# args: +# azure_feed - $1 +# azure_channel - $2 +# normalized_architecture - $3 +# specific_version - $4 +construct_download_link() { + eval $invocation + + local azure_feed=$1 + local azure_channel=$2 + local normalized_architecture=$3 + local specific_version=${4//[$'\t\r\n']} + + local osname + osname=$(get_current_os_name) || return 1 + + local download_link=null + if [ "$shared_runtime" = true ]; then + download_link="$azure_feed/$azure_channel/Binaries/$specific_version/dotnet-$osname-$normalized_architecture.$specific_version.tar.gz" + else + download_link="$azure_feed/Sdk/$specific_version/dotnet-dev-$osname-$normalized_architecture.$specific_version.tar.gz" + fi + + echo "$download_link" + return 0 +} + +get_user_install_path() { + eval $invocation + + if [ ! -z "${DOTNET_INSTALL_DIR:-}" ]; then + echo $DOTNET_INSTALL_DIR + else + echo "$HOME/.dotnet" + fi + return 0 +} + +# args: +# install_dir - $1 +resolve_installation_path() { + eval $invocation + + local install_dir=$1 + if [ "$install_dir" = "" ]; then + local user_install_path=$(get_user_install_path) + say_verbose "resolve_installation_path: user_install_path=$user_install_path" + echo "$user_install_path" + return 0 + fi + + echo "$install_dir" + return 0 +} + +# args: +# install_root - $1 +get_installed_version_info() { + eval $invocation + + local install_root=$1 + local version_file=$(combine_paths "$install_root" "$local_version_file_relative_path") + say_verbose "Local version file: $version_file" + if [ ! -z "$version_file" ] | [ -r "$version_file" ]; then + local version_info="$(cat $version_file)" + echo "$version_info" + return 0 + fi + + say_verbose "Local version file not found." + return 0 +} + +# args: +# relative_or_absolute_path - $1 +get_absolute_path() { + eval $invocation + + local relative_or_absolute_path=$1 + echo $(cd $(dirname "$1") && pwd -P)/$(basename "$1") + return 0 +} + +# args: +# input_files - stdin +# root_path - $1 +# out_path - $2 +# override - $3 +copy_files_or_dirs_from_list() { + eval $invocation + + local root_path=$(remove_trailing_slash $1) + local out_path=$(remove_trailing_slash $2) + local override=$3 + local override_switch=$(if [ "$override" = false ]; then printf -- "-n"; fi) + + cat | uniq | while read -r file_path; do + local path=$(remove_beginning_slash ${file_path#$root_path}) + local target=$out_path/$path + if [ "$override" = true ] || (! ([ -d "$target" ] || [ -e "$target" ])); then + mkdir -p $out_path/$(dirname $path) + cp -R $override_switch $root_path/$path $target + fi + done +} + +# args: +# zip_path - $1 +# out_path - $2 +extract_dotnet_package() { + eval $invocation + + local zip_path=$1 + local out_path=$2 + + local temp_out_path=$(mktemp -d $temporary_file_template) + + local failed=false + tar -xzf "$zip_path" -C "$temp_out_path" > /dev/null || failed=true + + local folders_with_version_regex='^.*/[0-9]+\.[0-9]+[^/]+/' + find $temp_out_path -type f | grep -Eo $folders_with_version_regex | copy_files_or_dirs_from_list $temp_out_path $out_path false + find $temp_out_path -type f | grep -Ev $folders_with_version_regex | copy_files_or_dirs_from_list $temp_out_path $out_path true + + rm -rf $temp_out_path + + if [ "$failed" = true ]; then + say_err "Extraction failed" + return 1 + fi +} + +downloadcurl() { + eval $invocation + local remote_path=$1 + local out_path=${2:-} + + local failed=false + if [ -z "$out_path" ]; then + curl --retry 10 -sSL --create-dirs $remote_path || failed=true + else + curl --retry 10 -sSL --create-dirs -o $out_path $remote_path || failed=true + fi +} + +downloadwget() { + eval $invocation + local remote_path=$1 + local out_path=${2:-} + + local failed=false + if [ -z "$out_path" ]; then + wget -q --tries 10 $remote_path || failed=true + else + wget -v --tries 10 -O $out_path $remote_path || failed=true + fi +} + +# args: +# remote_path - $1 +# [out_path] - $2 - stdout if not provided +download() { + eval $invocation + + local remote_path=$1 + local out_path=${2:-} + + local failed=false + if machine_has "curl"; then + downloadcurl $remote_path $out_path || failed=true + elif machine_has "wget"; then + downloadwget $remote_path $out_path || failed=true + fi + if [ "$failed" = true ]; then + say_err "Download failed" + return 1 + fi +} + + +calculate_vars() { + eval $invocation + + azure_channel=$(get_azure_channel_from_channel "$channel") + say_verbose "azure_channel=$azure_channel" + + normalized_architecture=$(get_normalized_architecture_from_architecture "$architecture") + say_verbose "normalized_architecture=$normalized_architecture" + + specific_version=$(get_specific_version_from_version $azure_feed $azure_channel $normalized_architecture $version) + say_verbose "specific_version=$specific_version" + if [ -z "$specific_version" ]; then + say_err "Could not get version information." + return 1 + fi + + download_link=$(construct_download_link $azure_feed $azure_channel $normalized_architecture $specific_version) + say_verbose "download_link=$download_link" + + install_root=$(resolve_installation_path $install_dir) + say_verbose "install_root=$install_root" +} + +install_dotnet() { + eval $invocation + + if is_dotnet_package_installed $install_root "sdk" $specific_version; then + say ".NET SDK version $specific_version is already installed." + return 0 + fi + + mkdir -p $install_root + zip_path=$(mktemp $temporary_file_template) + say_verbose "Zip path: $zip_path" + + say "Downloading $download_link" + download "$download_link" $zip_path + say_verbose "Downloaded file exists and readable? $(if [ -r $zip_path ]; then echo "yes"; else echo "no"; fi)" + + say "Extracting zip" + extract_dotnet_package $zip_path $install_root + + return 0 +} + +local_version_file_relative_path="/.version" +bin_folder_relative_path="" +temporary_file_template="${TMPDIR:-/tmp}/dotnet.XXXXXXXXX" + +channel="rel-1.0.0" +version="Latest" +install_dir="" +architecture="" +debug_symbols=false +dry_run=false +no_path=false +azure_feed="https://dotnetcli.azureedge.net/dotnet" +uncached_feed="https://dotnetcli.blob.core.windows.net/dotnet" +verbose=false +shared_runtime=false +runtime_id="" + +while [ $# -ne 0 ] +do + name=$1 + case $name in + -c|--channel|-[Cc]hannel) + shift + channel=$1 + ;; + -v|--version|-[Vv]ersion) + shift + version="$1" + ;; + -i|--install-dir|-[Ii]nstall[Dd]ir) + shift + install_dir="$1" + ;; + --arch|--architecture|-[Aa]rch|-[Aa]rchitecture) + shift + architecture="$1" + ;; + --shared-runtime|-[Ss]hared[Rr]untime) + shared_runtime=true + ;; + --debug-symbols|-[Dd]ebug[Ss]ymbols) + debug_symbols=true + ;; + --dry-run|-[Dd]ry[Rr]un) + dry_run=true + ;; + --no-path|-[Nn]o[Pp]ath) + no_path=true + ;; + --verbose|-[Vv]erbose) + verbose=true + ;; + --azure-feed|-[Aa]zure[Ff]eed) + shift + azure_feed="$1" + ;; + --runtime-id|-[Rr]untime[Ii]d) + shift + runtime_id="$1" + ;; + -?|--?|-h|--help|-[Hh]elp) + script_name="$(basename $0)" + echo ".NET Tools Installer" + echo "Usage: $script_name [-c|--channel ] [-v|--version ] [-p|--prefix ]" + echo " $script_name -h|-?|--help" + echo "" + echo "$script_name is a simple command line interface for obtaining dotnet cli." + echo "" + echo "Options:" + echo " -c,--channel Download from the CHANNEL specified (default: $channel)." + echo " -Channel" + echo " -v,--version Use specific version, ``latest`` or ``lkg``. Defaults to ``latest``." + echo " -Version" + echo " -i,--install-dir Install under specified location (see Install Location below)" + echo " -InstallDir" + echo " --architecture Architecture of .NET Tools. Currently only x64 is supported." + echo " --arch,-Architecture,-Arch" + echo " --shared-runtime Installs just the shared runtime bits, not the entire SDK." + echo " -SharedRuntime" + echo " --debug-symbols,-DebugSymbols Specifies if symbols should be included in the installation." + echo " --dry-run,-DryRun Do not perform installation. Display download link." + echo " --no-path, -NoPath Do not set PATH for the current process." + echo " --verbose,-Verbose Display diagnostics information." + echo " --azure-feed,-AzureFeed Azure feed location. Defaults to $azure_feed" + echo " --runtime-id Installs the .NET Tools for the given platform (use linux-x64 for portable linux)." + echo " -RuntimeId" + echo " -?,--?,-h,--help,-Help Shows this help message" + echo "" + echo "Install Location:" + echo " Location is chosen in following order:" + echo " - --install-dir option" + echo " - Environmental variable DOTNET_INSTALL_DIR" + echo " - $HOME/.dotnet" + exit 0 + ;; + *) + say_err "Unknown argument \`$name\`" + exit 1 + ;; + esac + + shift +done + +check_min_reqs +calculate_vars +if [ "$dry_run" = true ]; then + say "Payload URL: $download_link" + say "Repeatable invocation: ./$(basename $0) --version $specific_version --channel $channel --install-dir $install_dir" + exit 0 +fi + +check_pre_reqs +install_dotnet + +bin_path=$(get_absolute_path $(combine_paths $install_root $bin_folder_relative_path)) +if [ "$no_path" = false ]; then + say "Adding to current process PATH: ``$bin_path``. Note: This change will be visible only when sourcing script." + export PATH=$bin_path:$PATH +else + say "Binaries of dotnet can be found in $bin_path" +fi + +say "Installation finished successfully." diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/AnsiColorExtensions.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/AnsiColorExtensions.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/AnsiColorExtensions.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/AnsiColorExtensions.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/AnsiConsole.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/AnsiConsole.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/AnsiConsole.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/AnsiConsole.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildContext.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildContext.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildContext.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildContext.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.BuildTarget.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.BuildTarget.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.BuildTarget.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.BuildTarget.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildHelpers.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildHelpers.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildHelpers.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildHelpers.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildReporter.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildReporter.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildReporter.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildReporter.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildSetup.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildSetup.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildSetup.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildSetup.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildTarget.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTarget.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildTarget.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTarget.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildTargetContext.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTargetContext.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildTargetContext.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTargetContext.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildTargetResult.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTargetResult.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildTargetResult.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTargetResult.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/Command.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Command.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/Command.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/Command.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/CommandResult.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/CommandResult.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/CommandResult.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/CommandResult.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/Constants.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Constants.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/Constants.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/Constants.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/CurrentArchitecture.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/CurrentArchitecture.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/CurrentArchitecture.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/CurrentArchitecture.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/CurrentPlatform.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/CurrentPlatform.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/CurrentPlatform.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/CurrentPlatform.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/DebugHelper.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/DebugHelper.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/DebugHelper.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/DebugHelper.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildArchitecture.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildArchitecture.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildArchitecture.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildArchitecture.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildPlatform.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildPlatform.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildPlatform.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildPlatform.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.xproj b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.xproj similarity index 86% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.xproj rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.xproj index d4c58d0e..1ee98c61 100644 --- a/build_projects/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.xproj +++ b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.xproj @@ -8,8 +8,8 @@ 49beb486-ab5a-4416-91ea-8cd34abb0c9d Microsoft.DotNet.Cli.Build.Framework - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin + ..\..\..\..\Bin\obj\$(MSBuildProjectName) + ..\..\..\..\Bin diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/Reporter.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Reporter.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/Reporter.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/Reporter.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/StandardGoals.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/StandardGoals.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/StandardGoals.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/StandardGoals.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/TargetAttribute.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetAttribute.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/TargetAttribute.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetAttribute.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildArchitecturesAttribute.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildArchitecturesAttribute.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildArchitecturesAttribute.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildArchitecturesAttribute.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildPlatformsAttribute.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildPlatformsAttribute.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildPlatformsAttribute.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildPlatformsAttribute.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/EnvironmentAttribute.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/EnvironmentAttribute.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/EnvironmentAttribute.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/EnvironmentAttribute.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/TargetConditionAttribute.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/TargetConditionAttribute.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/TargetConditionAttribute.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/TargetConditionAttribute.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/UndefinedTargetException.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/UndefinedTargetException.cs similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/UndefinedTargetException.cs rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/UndefinedTargetException.cs diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/project.json b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/project.json similarity index 100% rename from build_projects/Microsoft.DotNet.Cli.Build.Framework/project.json rename to src/test/build/Microsoft.DotNet.Cli.Build.Framework/project.json diff --git a/build_projects/shared-build-targets-utils/DependencyVersions.cs b/src/test/build/shared-build-targets-utils/DependencyVersions.cs similarity index 100% rename from build_projects/shared-build-targets-utils/DependencyVersions.cs rename to src/test/build/shared-build-targets-utils/DependencyVersions.cs diff --git a/build_projects/shared-build-targets-utils/HostArtifactNames.cs b/src/test/build/shared-build-targets-utils/HostArtifactNames.cs similarity index 100% rename from build_projects/shared-build-targets-utils/HostArtifactNames.cs rename to src/test/build/shared-build-targets-utils/HostArtifactNames.cs diff --git a/build_projects/shared-build-targets-utils/PackageDependencies.cs b/src/test/build/shared-build-targets-utils/PackageDependencies.cs similarity index 100% rename from build_projects/shared-build-targets-utils/PackageDependencies.cs rename to src/test/build/shared-build-targets-utils/PackageDependencies.cs diff --git a/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs b/src/test/build/shared-build-targets-utils/Publishing/AzurePublisher.cs similarity index 100% rename from build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs rename to src/test/build/shared-build-targets-utils/Publishing/AzurePublisher.cs diff --git a/build_projects/shared-build-targets-utils/Publishing/DebRepoPublisher.cs b/src/test/build/shared-build-targets-utils/Publishing/DebRepoPublisher.cs similarity index 100% rename from build_projects/shared-build-targets-utils/Publishing/DebRepoPublisher.cs rename to src/test/build/shared-build-targets-utils/Publishing/DebRepoPublisher.cs diff --git a/build_projects/shared-build-targets-utils/Utils/AptDependencyUtility.cs b/src/test/build/shared-build-targets-utils/Utils/AptDependencyUtility.cs similarity index 100% rename from build_projects/shared-build-targets-utils/Utils/AptDependencyUtility.cs rename to src/test/build/shared-build-targets-utils/Utils/AptDependencyUtility.cs diff --git a/build_projects/shared-build-targets-utils/Utils/BranchInfo.cs b/src/test/build/shared-build-targets-utils/Utils/BranchInfo.cs similarity index 100% rename from build_projects/shared-build-targets-utils/Utils/BranchInfo.cs rename to src/test/build/shared-build-targets-utils/Utils/BranchInfo.cs diff --git a/build_projects/shared-build-targets-utils/Utils/Crossgen.cs b/src/test/build/shared-build-targets-utils/Utils/Crossgen.cs similarity index 99% rename from build_projects/shared-build-targets-utils/Utils/Crossgen.cs rename to src/test/build/shared-build-targets-utils/Utils/Crossgen.cs index 8eb0106b..e7406b47 100644 --- a/build_projects/shared-build-targets-utils/Utils/Crossgen.cs +++ b/src/test/build/shared-build-targets-utils/Utils/Crossgen.cs @@ -161,7 +161,7 @@ namespace Microsoft.DotNet.Cli.Build } else if (CurrentPlatform.IsOSX) { - rid = "osx.10.12-x64"; + rid = "osx.10.10-x64"; } else if (CurrentPlatform.IsCentOS || CurrentPlatform.IsRHEL) { diff --git a/build_projects/shared-build-targets-utils/Utils/DebPackageCreator.cs b/src/test/build/shared-build-targets-utils/Utils/DebPackageCreator.cs similarity index 100% rename from build_projects/shared-build-targets-utils/Utils/DebPackageCreator.cs rename to src/test/build/shared-build-targets-utils/Utils/DebPackageCreator.cs diff --git a/build_projects/shared-build-targets-utils/Utils/Dirs.cs b/src/test/build/shared-build-targets-utils/Utils/Dirs.cs similarity index 100% rename from build_projects/shared-build-targets-utils/Utils/Dirs.cs rename to src/test/build/shared-build-targets-utils/Utils/Dirs.cs diff --git a/build_projects/shared-build-targets-utils/Utils/DotNetCli.Stages.cs b/src/test/build/shared-build-targets-utils/Utils/DotNetCli.Stages.cs similarity index 100% rename from build_projects/shared-build-targets-utils/Utils/DotNetCli.Stages.cs rename to src/test/build/shared-build-targets-utils/Utils/DotNetCli.Stages.cs diff --git a/build_projects/shared-build-targets-utils/Utils/DotNetCli.cs b/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs similarity index 91% rename from build_projects/shared-build-targets-utils/Utils/DotNetCli.cs rename to src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs index dad85674..6a061e0c 100644 --- a/build_projects/shared-build-targets-utils/Utils/DotNetCli.cs +++ b/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs @@ -14,7 +14,7 @@ namespace Microsoft.DotNet.Cli.Build public string BinPath { get; } public string GreatestVersionSharedFxPath { get; private set; } - public string GreatestVersionHostFxrPath { get; private set; } + public string GreatestVersionHostFxrPath { get; private set; } public DotNetCli(string binPath) { @@ -83,24 +83,24 @@ namespace Microsoft.DotNet.Cli.Build return; } - var hostFxrBaseDirectory = Path.Combine(BinPath, "host", "fxr"); - if (!Directory.Exists(hostFxrBaseDirectory)) - { + var hostFxrBaseDirectory = Path.Combine(BinPath, "host", "fxr"); - GreatestVersionHostFxrPath = null; - return; - } + if (!Directory.Exists(hostFxrBaseDirectory)) + { + GreatestVersionHostFxrPath = null; + return; + } var sharedFxVersionDirectories = Directory.EnumerateDirectories(sharedFxBaseDirectory); GreatestVersionSharedFxPath = sharedFxVersionDirectories .OrderByDescending(p => p.ToLower()) .First(); - - var hostFxrVersionDirectories = Directory.EnumerateDirectories(hostFxrBaseDirectory); - GreatestVersionHostFxrPath = hostFxrVersionDirectories - .OrderByDescending(p => p.ToLower()) - .First(); + + var hostFxrVersionDirectories = Directory.EnumerateDirectories(hostFxrBaseDirectory); + GreatestVersionHostFxrPath = hostFxrVersionDirectories + .OrderByDescending(p => p.ToLower()) + .First(); } } } diff --git a/build_projects/shared-build-targets-utils/Utils/EnvVars.cs b/src/test/build/shared-build-targets-utils/Utils/EnvVars.cs similarity index 100% rename from build_projects/shared-build-targets-utils/Utils/EnvVars.cs rename to src/test/build/shared-build-targets-utils/Utils/EnvVars.cs diff --git a/build_projects/shared-build-targets-utils/Utils/FS.cs b/src/test/build/shared-build-targets-utils/Utils/FS.cs similarity index 98% rename from build_projects/shared-build-targets-utils/Utils/FS.cs rename to src/test/build/shared-build-targets-utils/Utils/FS.cs index 80cddcff..a34f164b 100644 --- a/build_projects/shared-build-targets-utils/Utils/FS.cs +++ b/src/test/build/shared-build-targets-utils/Utils/FS.cs @@ -109,6 +109,7 @@ namespace Microsoft.DotNet.Cli.Build foreach(var candidate in Directory.EnumerateDirectories(dir)) { if (string.Equals(Path.GetFileName(candidate), "bin") || + string.Equals(Path.GetFileName(candidate), "Bin") || string.Equals(Path.GetFileName(candidate), "obj")) { Utils.DeleteDirectory(candidate); diff --git a/build_projects/shared-build-targets-utils/Utils/JsonUtils.cs b/src/test/build/shared-build-targets-utils/Utils/JsonUtils.cs similarity index 100% rename from build_projects/shared-build-targets-utils/Utils/JsonUtils.cs rename to src/test/build/shared-build-targets-utils/Utils/JsonUtils.cs diff --git a/build_projects/shared-build-targets-utils/Utils/Monikers.cs b/src/test/build/shared-build-targets-utils/Utils/Monikers.cs similarity index 82% rename from build_projects/shared-build-targets-utils/Utils/Monikers.cs rename to src/test/build/shared-build-targets-utils/Utils/Monikers.cs index a5a1d511..5e60164b 100644 --- a/build_projects/shared-build-targets-utils/Utils/Monikers.cs +++ b/src/test/build/shared-build-targets-utils/Utils/Monikers.cs @@ -12,27 +12,6 @@ namespace Microsoft.DotNet.Cli.Build public const string SharedFrameworkName = "Microsoft.NETCore.App"; public const string CLISdkBrandName = "Microsoft .NET Core 1.0.0 - SDK Preview 2"; - private static string GetBrandName(BuildTargetContext c, string suffix) - { - var buildVersion = c.BuildContext.Get("BuildVersion"); - return String.Format("Microsoft .NET Core {0}.{1}.{2} - {3}", buildVersion.Major, - buildVersion.Minor, buildVersion.Patch, suffix); - } - public static string GetSharedFxBrandName(BuildTargetContext c) - { - return GetBrandName(c, "Runtime"); - } - - public static string GetSharedHostBrandName(BuildTargetContext c) - { - return GetBrandName(c, "Host"); - } - - public static string GetHostFxrBrandName(BuildTargetContext c) - { - return GetBrandName(c, "Host FX Resolver"); - } - public static string GetProductMoniker(BuildTargetContext c, string artifactPrefix, string version) { string rid = Environment.GetEnvironmentVariable("TARGETRID") ?? RuntimeEnvironment.GetRuntimeIdentifier(); diff --git a/build_projects/shared-build-targets-utils/Utils/PEUtils.cs b/src/test/build/shared-build-targets-utils/Utils/PEUtils.cs similarity index 100% rename from build_projects/shared-build-targets-utils/Utils/PEUtils.cs rename to src/test/build/shared-build-targets-utils/Utils/PEUtils.cs diff --git a/build_projects/shared-build-targets-utils/Utils/PublishMutationUtilties.cs b/src/test/build/shared-build-targets-utils/Utils/PublishMutationUtilties.cs similarity index 83% rename from build_projects/shared-build-targets-utils/Utils/PublishMutationUtilties.cs rename to src/test/build/shared-build-targets-utils/Utils/PublishMutationUtilties.cs index f2e3fb34..e96bfe29 100644 --- a/build_projects/shared-build-targets-utils/Utils/PublishMutationUtilties.cs +++ b/src/test/build/shared-build-targets-utils/Utils/PublishMutationUtilties.cs @@ -12,19 +12,15 @@ namespace Microsoft.DotNet.Cli.Build public class PublishMutationUtilties { public static void CleanPublishOutput( - string path, + string path, string name, - List binariesToBeDeleted, bool deleteRuntimeConfigJson=false, - bool deleteDepsJson=false) + bool deleteDepsJson=false, + bool deleteAppHost=false) { - binariesToBeDeleted.Add(name); - foreach (var binaryName in binariesToBeDeleted) - { - File.Delete(Path.Combine(path, $"{binaryName}{Constants.ExeSuffix}")); - File.Delete(Path.Combine(path, $"{Constants.DynamicLibPrefix}{binaryName}{Constants.DynamicLibSuffix}")); - File.Delete(Path.Combine(path, $"{binaryName}.pdb")); - } + File.Delete(Path.Combine(path, $"{name}{Constants.ExeSuffix}")); + File.Delete(Path.Combine(path, $"{Constants.DynamicLibPrefix}{name}{Constants.DynamicLibSuffix}")); + File.Delete(Path.Combine(path, $"{name}.pdb")); if (deleteRuntimeConfigJson) { @@ -36,6 +32,10 @@ namespace Microsoft.DotNet.Cli.Build File.Delete(Path.Combine(path, $"{name}.deps.json")); } + if (deleteAppHost) + { + File.Delete(Path.Combine(path, $"apphost{Constants.ExeSuffix}")); + } } public static void ChangeEntryPointLibraryName(string depsFile, string newName) diff --git a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs b/src/test/build/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs similarity index 88% rename from build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs rename to src/test/build/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs index cc8f91ab..8e0ee4e1 100644 --- a/build_projects/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs +++ b/src/test/build/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs @@ -139,9 +139,9 @@ namespace Microsoft.DotNet.Cli.Build PublishMutationUtilties.CleanPublishOutput( sharedFrameworkNameAndVersionRoot, "framework", - new List {"apphost", "hostfxr", "dotnet" }, deleteRuntimeConfigJson: true, - deleteDepsJson: false); + deleteDepsJson: false, + deleteAppHost: true); // Rename the .deps file var destinationDeps = Path.Combine(sharedFrameworkNameAndVersionRoot, $"{s_sharedFrameworkName}.deps.json"); @@ -149,8 +149,9 @@ namespace Microsoft.DotNet.Cli.Build PublishMutationUtilties.ChangeEntryPointLibraryName(destinationDeps, null); // Generate RID fallback graph - CopyHostArtifactsToSharedFramework(sharedFrameworkNameAndVersionRoot); - ProcessGeneratedDeps(dotnetCli, destinationDeps, new List { $"runtime.{_sharedFrameworkRid}.microsoft.netcore.dotnetapphost", $"runtime.{_sharedFrameworkRid}.microsoft.netcore.dotnethostresolver", "microsoft.netcore.dotnetapphost", "microsoft.netcore.dotnethostresolver" }); + GenerateRuntimeGraph(dotnetCli, destinationDeps); + + CopyHostArtifactsToSharedFramework(sharedFrameworkNameAndVersionRoot, hostFxrVersion); _crossgenUtil.CrossgenDirectory(sharedFrameworkNameAndVersionRoot, sharedFrameworkNameAndVersionRoot); @@ -197,7 +198,7 @@ namespace Microsoft.DotNet.Cli.Build return; } - private void ProcessGeneratedDeps(DotNetCli dotnetCli, string destinationDeps, IReadOnlyList packagesToBeRemoved) + private void GenerateRuntimeGraph(DotNetCli dotnetCli, string destinationDeps) { string runtimeGraphGeneratorRuntime = null; switch (RuntimeEnvironment.OperatingSystemPlatform) @@ -214,24 +215,16 @@ namespace Microsoft.DotNet.Cli.Build } if (!string.IsNullOrEmpty(runtimeGraphGeneratorRuntime)) { - var depsProcessorName = "DepsProcessor"; - var depsProcessorProject = Path.Combine(Dirs.RepoRoot, "setuptools", "independent", depsProcessorName); - var depsProcessorOutput = Path.Combine(Dirs.Output, "setuptools", "independent", depsProcessorName); + var runtimeGraphGeneratorName = "RuntimeGraphGenerator"; + var runtimeGraphGeneratorProject = Path.Combine(Dirs.RepoRoot, "setuptools", "independent", runtimeGraphGeneratorName); + var runtimeGraphGeneratorOutput = Path.Combine(Dirs.Output, "setuptools", "independent", runtimeGraphGeneratorName); dotnetCli.Publish( - "--output", depsProcessorOutput, - depsProcessorProject).Execute().EnsureSuccessful(); - var depsProcessorExe = Path.Combine(depsProcessorOutput, $"{depsProcessorName}{Constants.ExeSuffix}"); + "--output", runtimeGraphGeneratorOutput, + runtimeGraphGeneratorProject).Execute().EnsureSuccessful(); + var runtimeGraphGeneratorExe = Path.Combine(runtimeGraphGeneratorOutput, $"{runtimeGraphGeneratorName}{Constants.ExeSuffix}"); - var args = new List() { "--project", _sharedFrameworkSourceRoot, "--deps", destinationDeps, runtimeGraphGeneratorRuntime}; - - foreach (var pkg in packagesToBeRemoved) - { - args.Add("--remove"); - args.Add(pkg); - } - - Cmd(depsProcessorExe, args.ToArray()) + Cmd(runtimeGraphGeneratorExe, "--project", _sharedFrameworkSourceRoot, "--deps", destinationDeps, runtimeGraphGeneratorRuntime) .Execute() .EnsureSuccessful(); } @@ -241,8 +234,15 @@ namespace Microsoft.DotNet.Cli.Build } } - private void CopyHostArtifactsToSharedFramework(string sharedFrameworkNameAndVersionRoot) + private void CopyHostArtifactsToSharedFramework(string sharedFrameworkNameAndVersionRoot, string hostFxrVersion) { + File.Copy( + Path.Combine(_corehostLockedDirectory, HostArtifactNames.DotnetHostBaseName), + Path.Combine(sharedFrameworkNameAndVersionRoot, HostArtifactNames.DotnetHostBaseName), true); + File.Copy( + Path.Combine(_corehostLockedDirectory, HostArtifactNames.DotnetHostFxrBaseName), + Path.Combine(sharedFrameworkNameAndVersionRoot, HostArtifactNames.DotnetHostFxrBaseName), true); + // Hostpolicy should be the latest and not the locked version as it is supposed to evolve for // the framework and has a tight coupling with coreclr's API in the framework. File.Copy( diff --git a/build_projects/shared-build-targets-utils/Utils/Utils.cs b/src/test/build/shared-build-targets-utils/Utils/Utils.cs similarity index 100% rename from build_projects/shared-build-targets-utils/Utils/Utils.cs rename to src/test/build/shared-build-targets-utils/Utils/Utils.cs diff --git a/build_projects/shared-build-targets-utils/Utils/YumDependencyUtility.cs b/src/test/build/shared-build-targets-utils/Utils/YumDependencyUtility.cs similarity index 100% rename from build_projects/shared-build-targets-utils/Utils/YumDependencyUtility.cs rename to src/test/build/shared-build-targets-utils/Utils/YumDependencyUtility.cs diff --git a/build_projects/shared-build-targets-utils/VersionRepoUpdater.cs b/src/test/build/shared-build-targets-utils/VersionRepoUpdater.cs similarity index 100% rename from build_projects/shared-build-targets-utils/VersionRepoUpdater.cs rename to src/test/build/shared-build-targets-utils/VersionRepoUpdater.cs diff --git a/build_projects/shared-build-targets-utils/project.json b/src/test/build/shared-build-targets-utils/project.json similarity index 100% rename from build_projects/shared-build-targets-utils/project.json rename to src/test/build/shared-build-targets-utils/project.json diff --git a/build_projects/shared-build-targets-utils/shared-build-targets-utils.xproj b/src/test/build/shared-build-targets-utils/shared-build-targets-utils.xproj similarity index 86% rename from build_projects/shared-build-targets-utils/shared-build-targets-utils.xproj rename to src/test/build/shared-build-targets-utils/shared-build-targets-utils.xproj index 3711602b..de94e225 100644 --- a/build_projects/shared-build-targets-utils/shared-build-targets-utils.xproj +++ b/src/test/build/shared-build-targets-utils/shared-build-targets-utils.xproj @@ -8,8 +8,8 @@ b768bd29-12bf-4c7c-b093-03193fe244d1 Microsoft.DotNet.Cli.Build - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin + ..\..\..\..\Bin\obj\$(MSBuildProjectName) + ..\..\..\..\Bin diff --git a/src/test/dir.proj b/src/test/dir.proj new file mode 100644 index 00000000..3a535d65 --- /dev/null +++ b/src/test/dir.proj @@ -0,0 +1,145 @@ + + + + + + + + DetermineTestOutputDirectory; + InitBaseDotnetCli; + RestoreTests; + BuildTests; + RunTests; + + + + + + + + + + + $(_HostRid) + $(TestTargetRid).$(ConfigurationGroup) + $(BaseOutputPath)tests/$(TestOSPlatformConfig)/ + + + + + + + $(TestsOutputDir)Tools + powershell -NoProfile -ExecutionPolicy unrestricted -Command "$(MSBuildThisFileDirectory)bootstrap/bootstrap.ps1" -ToolsLocalPath $(TestToolsLocalPath) -Architecture $(TargetArchitecture) + $(MSBuildThisFileDirectory)bootstrap/bootstrap.sh --toolsLocalPath $(TestToolsLocalPath) + $(TestToolsLocalPath)/dotnetcli/dotnet.exe + $(TestToolsLocalPath)/dotnetcli/dotnet + + + + + + + + + + + + $(USERPROFILE)\.dotnet\ + $(HOME)/.dotnet/ + + + + + + + + + + + + @(RestoreTestSource->'--source %(Identity)', ' ') + $(RestoreSourceArg) @(RestoreTestFallbackSource->'--fallbacksource %(Identity)', ' ') + --disable-parallel --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" $(RestoreSourceArg) + + + + + + + + + --build-base-path $(IntermediateOutputForPackaging) --configuration $(ConfigurationGroup) + + + + + + + + + + %(TestProjects.Identity) + %(TestProjects.Filename) + $([System.IO.Path]::DirectorySeparatorChar) + + $([System.String]::Copy('$(TestsOutputDir)').Replace('/', '$(DirectorySeparatorChar)')) + $([System.String]::Copy('$(SystemPathTestsOutputDir)').Replace('\', '$(DirectorySeparatorChar)')) + + + --configuration $(ConfigurationGroup) + true + $(TestsOutputDir)$(TestProjectFilename)-testResults.xml + + + + + + + + + $(TestResultsXml) + $(_ErrorCode) + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/test/dir.props b/src/test/dir.props new file mode 100644 index 00000000..48d90062 --- /dev/null +++ b/src/test/dir.props @@ -0,0 +1,19 @@ + + + + + + $(ProjectDir)/src/test + $(TestDir)/Assets + + + + + + + + + + + + \ No newline at end of file diff --git a/sync.cmd b/sync.cmd new file mode 100644 index 00000000..64fd72fa --- /dev/null +++ b/sync.cmd @@ -0,0 +1,5 @@ + +@setlocal +@if [%1]==[] set __args=-p +@call %~dp0run.cmd sync %__args% %* +@exit /b %ERRORLEVEL% \ No newline at end of file diff --git a/sync.sh b/sync.sh new file mode 100755 index 00000000..21fbedff --- /dev/null +++ b/sync.sh @@ -0,0 +1,15 @@ +#!/usr/bin/env bash +# +# Copyright (c) .NET Foundation and contributors. All rights reserved. +# Licensed under the MIT license. See LICENSE file in the project root for full license information. +# +set -e + +if [ $# == 0 ]; then + __args=-p +fi + +working_tree_root="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +$working_tree_root/run.sh sync $__args $* +exit $? \ No newline at end of file diff --git a/test/TestUtils/project.json b/test/TestUtils/project.json deleted file mode 100644 index 490fb4b2..00000000 --- a/test/TestUtils/project.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "version": "1.0.0-*", - "buildOptions": { - "allowUnsafe": true, - "compile": { - "include": [ - "../../build_projects/shared-build-targets-utils/Utils/DotNetCli.cs", - "../../build_projects/shared-build-targets-utils/Utils/EnvVars.cs", - "../../build_projects/Microsoft.DotNet.Cli.Build.Framework/AnsiConsole.cs", - "../../build_projects/Microsoft.DotNet.Cli.Build.Framework/AnsiColorExtensions.cs", - "../../build_projects/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs", - "../../build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.cs", - "../../build_projects/Microsoft.DotNet.Cli.Build.Framework/BuildReporter.cs", - "../../build_projects/Microsoft.DotNet.Cli.Build.Framework/Command.cs", - "../../build_projects/Microsoft.DotNet.Cli.Build.Framework/CommandResult.cs", - "../../build_projects/Microsoft.DotNet.Cli.Build.Framework/Constants.cs", - "../../build_projects/Microsoft.DotNet.Cli.Build.Framework/Reporter.cs", - "../../build_projects/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildPlatform.cs", - "../../build_projects/Microsoft.DotNet.Cli.Build.Framework/CurrentPlatform.cs" - ] - } - }, - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "1.0.0" - }, - "FluentAssertions": "4.0.0", - "System.Runtime.Serialization.Primitives": "4.1.1", - "xunit": "2.1.0", - "xunit.netcore.extensions": "1.0.0-prerelease-00206", - "dotnet-test-xunit": "1.0.0-rc2-192208-24", - "System.Runtime.InteropServices.RuntimeInformation": "4.0.0", - "Microsoft.DotNet.InternalAbstractions": "1.0.0-rc2-002702" - }, - "frameworks": { - "netcoreapp1.0": { - "imports": [ - "dotnet5.4", - "portable-net451+win8" - ] - } - } -} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureBlobLease.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureBlobLease.cs new file mode 100644 index 00000000..30f37434 --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureBlobLease.cs @@ -0,0 +1,185 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using Microsoft.Build.Framework; +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Net.Http; +using System.Threading; +using System.Threading.Tasks; + +namespace Microsoft.DotNet.Build.Tasks +{ + public partial class AzureBlobLease + { + private string _containerName; + private string _blobName; + private TimeSpan _maxWait; + private TimeSpan _delay; + private const int s_MaxWaitDefault = 60; // seconds + private const int s_DelayDefault = 500; // milliseconds + private CancellationTokenSource _cancellationTokenSource; + private Task _leaseRenewalTask; + private string _connectionString; + private string _accountName; + private string _accountKey; + private Microsoft.Build.Utilities.TaskLoggingHelper _log; + private string _leaseId; + private string _leaseUrl; + + public AzureBlobLease(string accountName, string accountKey, string connectionString, string containerName, string blobName, Microsoft.Build.Utilities.TaskLoggingHelper log, string maxWait = null, string delay=null) + { + _accountName = accountName; + _accountKey = accountKey; + _connectionString = connectionString; + _containerName = containerName; + _blobName = blobName; + _maxWait = !string.IsNullOrWhiteSpace(maxWait) ? TimeSpan.Parse(maxWait) : TimeSpan.FromSeconds(s_MaxWaitDefault); + _delay = !string.IsNullOrWhiteSpace(delay) ? TimeSpan.Parse(delay) : TimeSpan.FromMilliseconds(s_DelayDefault); + _log = log; + _leaseUrl = $"{Utility.AzureHelper.GetBlobRestUrl(_accountName, _containerName, _blobName)}?comp=lease"; + } + + public void Acquire() + { + Stopwatch stopWatch = new Stopwatch(); + stopWatch.Start(); + + while (stopWatch.ElapsedMilliseconds < _maxWait.TotalMilliseconds) + { + try + { + string leaseId = AcquireLeaseOnBlobAsync().GetAwaiter().GetResult(); + _cancellationTokenSource = new CancellationTokenSource(); + _leaseRenewalTask = Task.Run(() => + { AutoRenewLeaseOnBlob(this, _accountName, _accountKey, _containerName, _blobName, leaseId, _leaseUrl, _log); }, + _cancellationTokenSource.Token); + _leaseId = leaseId; + return; + } + catch (Exception e) + { + _log.LogMessage($"Retrying lease acquisition on {_blobName}, {e.Message}"); + Thread.Sleep(_delay); + } + } + ResetLeaseRenewalTaskState(); + throw new Exception($"Unable to acquire lease on {_blobName}"); + + } + + public void Release() + { + // Cancel the lease renewal task since we are about to release the lease. + ResetLeaseRenewalTaskState(); + + using (HttpClient client = new HttpClient()) + { + Tuple leaseAction = new Tuple("x-ms-lease-action", "release"); + Tuple headerLeaseId = new Tuple("x-ms-lease-id", _leaseId); + List> additionalHeaders = new List>() { leaseAction, headerLeaseId }; + var request = Utility.AzureHelper.RequestMessage("PUT", _leaseUrl, _accountName, _accountKey, additionalHeaders); + using (HttpResponseMessage response = Utility.AzureHelper.RequestWithRetry(_log, client, request).GetAwaiter().GetResult()) + { + if (!response.IsSuccessStatusCode) + { + _log.LogMessage($"Unable to release lease on container/blob {_containerName}/{_blobName}."); + } + } + } + } + + private async Task AcquireLeaseOnBlobAsync() + { + _log.LogMessage(MessageImportance.Low, $"Requesting lease for container/blob '{_containerName}/{_blobName}'."); + string leaseId = string.Empty; + using (HttpClient client = new HttpClient()) + { + try + { + Tuple leaseAction = new Tuple("x-ms-lease-action", "acquire"); + Tuple leaseDuration = new Tuple("x-ms-lease-duration", "60" /* seconds */); + List> additionalHeaders = new List>() { leaseAction, leaseDuration }; + var request = Utility.AzureHelper.RequestMessage("PUT", _leaseUrl, _accountName, _accountKey, additionalHeaders); + using (HttpResponseMessage response = await Utility.AzureHelper.RequestWithRetry(_log, client, request)) + { + leaseId = response.Headers.GetValues("x-ms-lease-id").FirstOrDefault(); + } + } + catch (Exception e) + { + _log.LogErrorFromException(e, true); + } + } + + return leaseId; + } + private static void AutoRenewLeaseOnBlob(AzureBlobLease instance, string accountName, string accountKey, string containerName, string blob, string leaseId, string leaseUrl, Microsoft.Build.Utilities.TaskLoggingHelper log) + { + TimeSpan maxWait = TimeSpan.FromSeconds(s_MaxWaitDefault); + TimeSpan delay = TimeSpan.FromMilliseconds(s_DelayDefault); + TimeSpan waitFor = maxWait; + CancellationToken token = instance._cancellationTokenSource.Token; + + while (true) + { + token.ThrowIfCancellationRequested(); + + try + { + log.LogMessage(MessageImportance.Low, $"Requesting lease for container/blob '{containerName}/{blob}'."); + using (HttpClient client = new HttpClient()) + { + Tuple leaseAction = new Tuple("x-ms-lease-action", "renew"); + Tuple headerLeaseId = new Tuple("x-ms-lease-id", leaseId); + List> additionalHeaders = new List>() { leaseAction, headerLeaseId }; + var request = Utility.AzureHelper.RequestMessage("PUT", leaseUrl, accountName, accountKey, additionalHeaders); + using (HttpResponseMessage response = Utility.AzureHelper.RequestWithRetry(log, client, request).GetAwaiter().GetResult()) + { + if (!response.IsSuccessStatusCode) + { + throw new Exception("Unable to acquire lease."); + } + } + } + waitFor = maxWait; + } + catch (Exception e) + { + Console.WriteLine($"Rerying lease renewal on {containerName}, {e.Message}"); + waitFor = delay; + } + token.ThrowIfCancellationRequested(); + + Thread.Sleep(waitFor); + } + } + + private void ResetLeaseRenewalTaskState() + { + // Cancel the lease renewal task if it was created + if (_leaseRenewalTask != null) + { + _cancellationTokenSource.Cancel(); + + // Block until the task ends. It can throw if we cancelled it before it completed. + try + { + _leaseRenewalTask.Wait(); + } + catch (Exception) + { + // Ignore the caught exception as it will be expected. + } + + _leaseRenewalTask = null; + } + } + + } +} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureConnectionStringBuildTask.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureConnectionStringBuildTask.cs new file mode 100644 index 00000000..419eeae8 --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureConnectionStringBuildTask.cs @@ -0,0 +1,57 @@ +using Microsoft.Build.Utilities; +using System.Text.RegularExpressions; + +namespace Microsoft.DotNet.Build.Tasks.Utility +{ + public abstract class AzureConnectionStringBuildTask : Task + { + /// + /// Azure Storage account connection string. Supersedes Account Key / Name. + /// Will cause errors if both are set. + /// + public string ConnectionString { get; set; } + + /// + /// The Azure account key used when creating the connection string. + /// When we fully deprecate these, can just make them get; only. + /// + public string AccountKey { get; set; } + + /// + /// The Azure account name used when creating the connection string. + /// When we fully deprecate these, can just make them get; only. + /// + public string AccountName { get; set; } + + public void ParseConnectionString() + { + if (!string.IsNullOrEmpty(ConnectionString)) + { + if (!(string.IsNullOrEmpty(AccountKey) && string.IsNullOrEmpty(AccountName))) + { + Log.LogError("If the ConnectionString property is set, you must not provide AccountKey / AccountName. These values will be deprecated in the future."); + } + else + { + Regex storageConnectionStringRegex = new Regex("AccountName=(?.+?);AccountKey=(?.+?);"); + + MatchCollection matches = storageConnectionStringRegex.Matches(ConnectionString); + if (matches.Count > 0) + { + // When we deprecate this format, we'll want to demote these to private + AccountName = matches[0].Groups["name"].Value; + AccountKey = matches[0].Groups["key"].Value; + } + else + { + Log.LogError("Error parsing connection string. Please review its value."); + } + } + } + else if (string.IsNullOrEmpty(AccountKey) || string.IsNullOrEmpty(AccountName)) + { + Log.LogError("Error, must provide either ConnectionString or AccountName with AccountKey"); + } + } + } +} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs new file mode 100644 index 00000000..3c11122b --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs @@ -0,0 +1,464 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Net; +using System.Net.Http; +using System.Net.Http.Headers; +using System.Security.Cryptography; +using System.Text; +using System.Text.RegularExpressions; +using System.Threading; +using System.Threading.Tasks; + +namespace Microsoft.DotNet.Build.Tasks.Utility +{ + // This is grabbed directly from buildtools and we should not duplicate this when we move ListAzureBlobs back to buildtools + public static class AzureHelper + { + /// + /// The storage api version. + /// + public static readonly string StorageApiVersion = "2015-04-05"; + public const string DateHeaderString = "x-ms-date"; + public const string VersionHeaderString = "x-ms-version"; + public const string AuthorizationHeaderString = "Authorization"; + + public enum SasAccessType + { + Read, + Write, + }; + + public static string AuthorizationHeader( + string storageAccount, + string storageKey, + string method, + DateTime now, + HttpRequestMessage request, + string ifMatch = "", + string contentMD5 = "", + string size = "", + string contentType = "") + { + string stringToSign = string.Empty; + stringToSign = string.Format( + "{0}\n\n\n{1}\n{5}\n{6}\n\n\n{2}\n\n\n\n{3}{4}", + method, + (size == string.Empty) ? string.Empty : size, + ifMatch, + GetCanonicalizedHeaders(request), + GetCanonicalizedResource(request.RequestUri, storageAccount), + contentMD5, + contentType); + byte[] signatureBytes = Encoding.UTF8.GetBytes(stringToSign); + string authorizationHeader; + using (HMACSHA256 hmacsha256 = new HMACSHA256(Convert.FromBase64String(storageKey))) + { + authorizationHeader = "SharedKey " + storageAccount + ":" + + Convert.ToBase64String(hmacsha256.ComputeHash(signatureBytes)); + } + + return authorizationHeader; + } + + public static string CreateContainerSasToken( + string accountName, + string containerName, + string key, + SasAccessType accessType, + int validityTimeInDays) + { + string signedPermissions = string.Empty; + switch (accessType) + { + case SasAccessType.Read: + signedPermissions = "r"; + break; + case SasAccessType.Write: + signedPermissions = "wdl"; + break; + default: + throw new ArgumentOutOfRangeException(nameof(accessType), accessType, "Unrecognized value"); + } + + string signedStart = DateTime.UtcNow.ToString("O"); + string signedExpiry = DateTime.UtcNow.AddDays(validityTimeInDays).ToString("O"); + string canonicalizedResource = "/blob/" + accountName + "/" + containerName; + string signedIdentifier = string.Empty; + string signedVersion = StorageApiVersion; + + string stringToSign = ConstructServiceStringToSign( + signedPermissions, + signedVersion, + signedExpiry, + canonicalizedResource, + signedIdentifier, + signedStart); + + byte[] signatureBytes = Encoding.UTF8.GetBytes(stringToSign); + string signature; + using (HMACSHA256 hmacSha256 = new HMACSHA256(Convert.FromBase64String(key))) + { + signature = Convert.ToBase64String(hmacSha256.ComputeHash(signatureBytes)); + } + + string sasToken = string.Format( + "?sv={0}&sr={1}&sig={2}&st={3}&se={4}&sp={5}", + WebUtility.UrlEncode(signedVersion), + WebUtility.UrlEncode("c"), + WebUtility.UrlEncode(signature), + WebUtility.UrlEncode(signedStart), + WebUtility.UrlEncode(signedExpiry), + WebUtility.UrlEncode(signedPermissions)); + + return sasToken; + } + + public static string GetCanonicalizedHeaders(HttpRequestMessage request) + { + StringBuilder sb = new StringBuilder(); + List headerNameList = (from headerName in request.Headers + where + headerName.Key.ToLowerInvariant() + .StartsWith("x-ms-", StringComparison.Ordinal) + select headerName.Key.ToLowerInvariant()).ToList(); + headerNameList.Sort(); + foreach (string headerName in headerNameList) + { + StringBuilder builder = new StringBuilder(headerName); + string separator = ":"; + foreach (string headerValue in GetHeaderValues(request.Headers, headerName)) + { + string trimmedValue = headerValue.Replace("\r\n", string.Empty); + builder.Append(separator); + builder.Append(trimmedValue); + separator = ","; + } + + sb.Append(builder); + sb.Append("\n"); + } + + return sb.ToString(); + } + + public static string GetCanonicalizedResource(Uri address, string accountName) + { + StringBuilder str = new StringBuilder(); + StringBuilder builder = new StringBuilder("/"); + builder.Append(accountName); + builder.Append(address.AbsolutePath); + str.Append(builder); + Dictionary> queryKeyValues = ExtractQueryKeyValues(address); + Dictionary> dictionary = GetCommaSeparatedList(queryKeyValues); + + foreach (KeyValuePair> pair in dictionary.OrderBy(p => p.Key)) + { + StringBuilder stringBuilder = new StringBuilder(string.Empty); + stringBuilder.Append(pair.Key + ":"); + string commaList = string.Join(",", pair.Value); + stringBuilder.Append(commaList); + str.Append("\n"); + str.Append(stringBuilder); + } + + return str.ToString(); + } + + public static List GetHeaderValues(HttpRequestHeaders headers, string headerName) + { + List list = new List(); + headers.TryGetValues(headerName, out IEnumerable values); + if (values != null) + { + list.Add((values.FirstOrDefault() ?? string.Empty).TrimStart(null)); + } + + return list; + } + + private static bool IsWithinRetryRange(HttpStatusCode statusCode) + { + // Retry on http client and server error codes (4xx - 5xx) as well as redirect + + var rawStatus = (int)statusCode; + if (rawStatus == 302) + return true; + else if (rawStatus >= 400 && rawStatus <= 599) + return true; + else + return false; + } + + public static async Task RequestWithRetry(TaskLoggingHelper loggingHelper, HttpClient client, + Func createRequest, Func validationCallback = null, int retryCount = 5, + int retryDelaySeconds = 5) + { + if (loggingHelper == null) + throw new ArgumentNullException(nameof(loggingHelper)); + if (client == null) + throw new ArgumentNullException(nameof(client)); + if (createRequest == null) + throw new ArgumentNullException(nameof(createRequest)); + if (retryCount < 1) + throw new ArgumentException(nameof(retryCount)); + if (retryDelaySeconds < 1) + throw new ArgumentException(nameof(retryDelaySeconds)); + + int retries = 0; + HttpResponseMessage response = null; + + // add a bit of randomness to the retry delay + var rng = new Random(); + + while (retries < retryCount) + { + if (retries > 0) + { + if (response != null) + { + response.Dispose(); + response = null; + } + + int delay = retryDelaySeconds * retries * rng.Next(1, 5); + loggingHelper.LogMessage(MessageImportance.Low, "Waiting {0} seconds before retry", delay); + await System.Threading.Tasks.Task.Delay(delay * 1000); + } + + try + { + using (var request = createRequest()) + response = await client.SendAsync(request); + } + catch (Exception e) + { + loggingHelper.LogWarningFromException(e, true); + + // if this is the final iteration let the exception bubble up + if (retries + 1 == retryCount) + throw; + } + + // response can be null if we fail to send the request + if (response != null) + { + if (validationCallback == null) + { + // check if the response code is within the range of failures + if (!IsWithinRetryRange(response.StatusCode)) + { + return response; + } + } + else + { + bool isSuccess = validationCallback(response); + if (!isSuccess) + { + loggingHelper.LogMessage("Validation callback returned retry for status code {0}", response.StatusCode); + } + else + { + loggingHelper.LogMessage("Validation callback returned success for status code {0}", response.StatusCode); + return response; + } + } + } + + ++retries; + } + + // retry count exceeded + loggingHelper.LogWarning("Retry count {0} exceeded", retryCount); + + // set some default values in case response is null + var statusCode = "None"; + var contentStr = "Null"; + if (response != null) + { + statusCode = response.StatusCode.ToString(); + contentStr = await response.Content.ReadAsStringAsync(); + response.Dispose(); + } + + throw new HttpRequestException(string.Format("Request failed with status {0} response {1}", statusCode, contentStr)); + } + + private static string ConstructServiceStringToSign( + string signedPermissions, + string signedVersion, + string signedExpiry, + string canonicalizedResource, + string signedIdentifier, + string signedStart, + string signedIP = "", + string signedProtocol = "", + string rscc = "", + string rscd = "", + string rsce = "", + string rscl = "", + string rsct = "") + { + // constructing string to sign based on spec in https://msdn.microsoft.com/en-us/library/azure/dn140255.aspx + var stringToSign = string.Join( + "\n", + signedPermissions, + signedStart, + signedExpiry, + canonicalizedResource, + signedIdentifier, + signedIP, + signedProtocol, + signedVersion, + rscc, + rscd, + rsce, + rscl, + rsct); + return stringToSign; + } + + private static Dictionary> ExtractQueryKeyValues(Uri address) + { + Dictionary> values = new Dictionary>(); + //Decode this to allow the regex to pull out the correct groups for signing + address = new Uri(WebUtility.UrlDecode(address.ToString())); + Regex newreg = new Regex(@"(?:\?|&)([^=]+)=([^&]+)"); + MatchCollection matches = newreg.Matches(address.Query); + foreach (Match match in matches) + { + string key, value; + if (!string.IsNullOrEmpty(match.Groups[1].Value)) + { + key = match.Groups[1].Value; + value = match.Groups[2].Value; + } + else + { + key = match.Groups[3].Value; + value = match.Groups[4].Value; + } + + if (values.TryGetValue(key, out HashSet setOfValues)) + { + setOfValues.Add(value); + } + else + { + HashSet newSet = new HashSet { value }; + values.Add(key, newSet); + } + } + + return values; + } + + private static Dictionary> GetCommaSeparatedList( + Dictionary> queryKeyValues) + { + Dictionary> dictionary = new Dictionary>(); + + foreach (string queryKeys in queryKeyValues.Keys) + { + queryKeyValues.TryGetValue(queryKeys, out HashSet setOfValues); + List list = new List(); + list.AddRange(setOfValues); + list.Sort(); + string commaSeparatedValues = string.Join(",", list); + string key = queryKeys.ToLowerInvariant(); + if (dictionary.TryGetValue(key, out HashSet setOfValues2)) + { + setOfValues2.Add(commaSeparatedValues); + } + else + { + HashSet newSet = new HashSet { commaSeparatedValues }; + dictionary.Add(key, newSet); + } + } + + return dictionary; + } + // This is duplicated code from https://github.com/dotnet/buildtools/blob/master/src/Microsoft.DotNet.Build.CloudTestTasks/AzureConnectionStringBuildTask.cs + // when we move "ListAzureBlobs.cs" into buildtools, we should eliminate this duplication. + public static Tuple ParseConnectionString(string connectionString) + { + Regex storageConnectionStringRegex = new Regex("AccountName=(?.+?);AccountKey=(?.+?);"); + + MatchCollection matches = storageConnectionStringRegex.Matches(connectionString); + if (matches.Count > 0) + { + return new Tuple(matches[0].Groups["name"].Value, matches[0].Groups["key"].Value); + } + else + { + return null; + } + } + + public static Func RequestMessage(string method, string url, string accountName, string accountKey, List> additionalHeaders = null, string body = null) + { + Func requestFunc = () => + { + HttpMethod httpMethod = HttpMethod.Get; + if(method == "PUT") + { + httpMethod = HttpMethod.Put; + } + else if (method == "DELETE") + { + httpMethod = HttpMethod.Delete; + } + DateTime dateTime = DateTime.UtcNow; + var request = new HttpRequestMessage(httpMethod, url); + request.Headers.Add(AzureHelper.DateHeaderString, dateTime.ToString("R", CultureInfo.InvariantCulture)); + request.Headers.Add(AzureHelper.VersionHeaderString, AzureHelper.StorageApiVersion); + if (additionalHeaders != null) + { + foreach (Tuple additionalHeader in additionalHeaders) + { + request.Headers.Add(additionalHeader.Item1, additionalHeader.Item2); + } + } + if (body != null) + { + request.Content = new StringContent(body); + request.Headers.Add(AzureHelper.AuthorizationHeaderString, AzureHelper.AuthorizationHeader( + accountName, + accountKey, + method, + dateTime, + request, + "", + "", + request.Content.Headers.ContentLength.ToString(), + request.Content.Headers.ContentType.ToString())); + } + else + { + request.Headers.Add(AzureHelper.AuthorizationHeaderString, AzureHelper.AuthorizationHeader( + accountName, + accountKey, + method, + dateTime, + request)); + } + return request; + }; + return requestFunc; + } + + public static string GetBlobRestUrl(string accountName, string containerName, string blob) + { + return $"https://{accountName}.blob.core.windows.net/{containerName}/{blob}"; + } + } +} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/CopyAzureBlobToBlob.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/CopyAzureBlobToBlob.cs new file mode 100644 index 00000000..1e49c777 --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/CopyAzureBlobToBlob.cs @@ -0,0 +1,100 @@ +using Microsoft.Build.Framework; +using System; +using System.Collections.Generic; +using System.Net.Http; +using System.Threading.Tasks; + +namespace Microsoft.DotNet.Build.Tasks +{ + public partial class CopyAzureBlobToBlob : Utility.AzureConnectionStringBuildTask + { + [Required] + public string ContainerName { get; set; } + [Required] + public string SourceBlobName { get; set; } + [Required] + public string DestinationBlobName { get; set; } + + public override bool Execute() + { + return ExecuteAsync().GetAwaiter().GetResult(); + } + + public async Task ExecuteAsync() + { + ParseConnectionString(); + if (Log.HasLoggedErrors) + { + return false; + } + + string sourceUrl = Utility.AzureHelper.GetBlobRestUrl(AccountName, ContainerName, SourceBlobName); + string destinationUrl = Utility.AzureHelper.GetBlobRestUrl(AccountName, ContainerName, DestinationBlobName); + using (HttpClient client = new HttpClient()) + { + try + { + Tuple leaseAction = new Tuple("x-ms-lease-action", "acquire"); + Tuple leaseDuration = new Tuple("x-ms-lease-duration", "60" /* seconds */); + Tuple headerSource = new Tuple("x-ms-copy-source", sourceUrl); + List> additionalHeaders = new List>() { leaseAction, leaseDuration, headerSource }; + var request = Utility.AzureHelper.RequestMessage("PUT", destinationUrl, AccountName, AccountKey, additionalHeaders); + using (HttpResponseMessage response = await Utility.AzureHelper.RequestWithRetry(Log, client, request)) + { + if (response.IsSuccessStatusCode) + { + return true; + } + } + } + catch (Exception e) + { + Log.LogErrorFromException(e, true); + } + } + return false; + } + public static bool Execute(string accountName, + string accountKey, + string connectionString, + string containerName, + string sourceBlobName, + string destinationBlobName, + IBuildEngine buildengine, + ITaskHost taskHost) + { + CopyAzureBlobToBlob copyAzureBlobToBlob = new CopyAzureBlobToBlob() + { + AccountName = accountName, + AccountKey = accountKey, + ContainerName = containerName, + SourceBlobName = sourceBlobName, + DestinationBlobName = destinationBlobName, + BuildEngine = buildengine, + HostObject = taskHost + }; + return copyAzureBlobToBlob.Execute(); + } + public static Task ExecuteAsync(string accountName, + string accountKey, + string connectionString, + string containerName, + string sourceBlobName, + string destinationBlobName, + IBuildEngine buildengine, + ITaskHost taskHost) + { + CopyAzureBlobToBlob copyAzureBlobToBlob = new CopyAzureBlobToBlob() + { + AccountName = accountName, + AccountKey = accountKey, + ContainerName = containerName, + SourceBlobName = sourceBlobName, + DestinationBlobName = destinationBlobName, + BuildEngine = buildengine, + HostObject = taskHost + }; + return copyAzureBlobToBlob.ExecuteAsync(); + } + } +} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/DeleteAzureBlob.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/DeleteAzureBlob.cs new file mode 100644 index 00000000..4db6b885 --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/DeleteAzureBlob.cs @@ -0,0 +1,66 @@ +using Microsoft.Build.Framework; +using System; +using System.Collections.Generic; +using System.Net.Http; + +namespace Microsoft.DotNet.Build.Tasks +{ + public partial class DeleteAzureBlob: Utility.AzureConnectionStringBuildTask + { + [Required] + public string ContainerName { get; set; } + [Required] + public string BlobName { get; set; } + + public override bool Execute() + { + ParseConnectionString(); + if (Log.HasLoggedErrors) + { + return false; + } + + string deleteUrl = $"https://{AccountName}.blob.core.windows.net/{ContainerName}/{BlobName}"; + + using (HttpClient client = new HttpClient()) + { + try + { + Tuple snapshots = new Tuple("x-ms-lease-delete-snapshots", "include"); + List> additionalHeaders = new List>() { snapshots }; + var request = Utility.AzureHelper.RequestMessage("DELETE", deleteUrl, AccountName, AccountKey, additionalHeaders); + using (HttpResponseMessage response = Utility.AzureHelper.RequestWithRetry(Log, client, request).GetAwaiter().GetResult()) + { + return response.IsSuccessStatusCode; + } + } + catch (Exception e) + { + Log.LogErrorFromException(e, true); + } + } + + return !Log.HasLoggedErrors; + } + + public static bool Execute(string accountName, + string accountKey, + string connectionString, + string containerName, + string blobName, + IBuildEngine buildengine, + ITaskHost taskHost) + { + DeleteAzureBlob deleteAzureoBlob = new DeleteAzureBlob() + { + AccountName = accountName, + AccountKey = accountKey, + ContainerName = containerName, + BlobName = blobName, + BuildEngine = buildengine, + HostObject = taskHost + }; + return deleteAzureoBlob.Execute(); + } + } +} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobFromAzure.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobFromAzure.cs new file mode 100644 index 00000000..81af14c4 --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobFromAzure.cs @@ -0,0 +1,153 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using Microsoft.Build.Framework; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Net.Http; +using System.Threading.Tasks; + +namespace Microsoft.DotNet.Build.Tasks +{ + public partial class DownloadBlobFromAzure : Utility.AzureConnectionStringBuildTask + { + /// + /// The name of the container to access. The specified name must be in the correct format, see the + /// following page for more info. https://msdn.microsoft.com/en-us/library/azure/dd135715.aspx + /// + [Required] + public string ContainerName { get; set; } + + [Required] + public string BlobName { get; set; } + + /// + /// Directory to download blob files to. + /// + [Required] + public string DownloadDirectory { get; set; } + + public override bool Execute() + { + return ExecuteAsync().GetAwaiter().GetResult(); + } + + public async Task ExecuteAsync() + { + ParseConnectionString(); + if (Log.HasLoggedErrors) + { + return false; + } + + Log.LogMessage(MessageImportance.Normal, "Downloading blob {0} from container {1} at storage account '{2}' to directory {3}.", + BlobName, ContainerName, AccountName, DownloadDirectory); + + List blobsNames = new List(); + string urlListBlobs = $"https://{AccountName}.blob.core.windows.net/{ContainerName}/{BlobName}"; + + Log.LogMessage(MessageImportance.Low, "Sending request to list blobsNames for container '{0}'.", ContainerName); + + using (HttpClient client = new HttpClient()) + { + try + { + Func createRequest = () => + { + DateTime dateTime = DateTime.UtcNow; + var request = new HttpRequestMessage(HttpMethod.Get, urlListBlobs); + request.Headers.Add(Utility.AzureHelper.DateHeaderString, dateTime.ToString("R", CultureInfo.InvariantCulture)); + request.Headers.Add(Utility.AzureHelper.VersionHeaderString, Utility.AzureHelper.StorageApiVersion); + request.Headers.Add(Utility.AzureHelper.AuthorizationHeaderString, Utility.AzureHelper.AuthorizationHeader( + AccountName, + AccountKey, + "GET", + dateTime, + request)); + return request; + }; + + // track the number of blobs that fail to download + string blob = Path.GetFileName(BlobName); + string filename = Path.Combine(DownloadDirectory, blob); + using (HttpResponseMessage response = await Utility.AzureHelper.RequestWithRetry(Log, client, createRequest)) + { + if (response.IsSuccessStatusCode) + { + // Blobs can be files but have the name of a directory. We'll skip those and log something weird happened. + if (!string.IsNullOrEmpty(Path.GetFileName(filename))) + { + Stream responseStream = await response.Content.ReadAsStreamAsync(); + + using (FileStream sourceStream = File.Open(filename, FileMode.Create)) + { + responseStream.CopyTo(sourceStream); + } + } + else + { + Log.LogWarning($"Unable to download blob '{blob}' as it has a directory-like name. This may cause problems if it was needed."); + } + } + else + { + Log.LogError("Failed to retrieve blob {0}, the status code was {1}", blob, response.StatusCode); + } + } + } + catch (Exception e) + { + Log.LogErrorFromException(e, true); + } + return !Log.HasLoggedErrors; + } + } + + public static bool Execute(string accountName, + string accountKey, + string connectionString, + string containerName, + string blobName, + string downloadDirectory, + IBuildEngine buildengine, + ITaskHost taskHost) + { + DownloadBlobFromAzure downloadBlobFromAzure = new DownloadBlobFromAzure() + { + AccountName = accountName, + AccountKey = accountKey, + ContainerName = containerName, + BlobName = blobName, + DownloadDirectory = downloadDirectory, + BuildEngine = buildengine, + HostObject = taskHost + }; + return downloadBlobFromAzure.Execute(); + } + + public static Task ExecuteAsync(string accountName, + string accountKey, + string connectionString, + string containerName, + string blobName, + string downloadDirectory, + IBuildEngine buildengine, + ITaskHost taskHost) + { + DownloadBlobFromAzure downloadBlobFromAzure = new DownloadBlobFromAzure() + { + AccountName = accountName, + AccountKey = accountKey, + ContainerName = containerName, + BlobName = blobName, + DownloadDirectory = downloadDirectory, + BuildEngine = buildengine, + HostObject = taskHost + }; + return downloadBlobFromAzure.ExecuteAsync(); + } + } +} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobsFromAzure.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobsFromAzure.cs new file mode 100644 index 00000000..9c3e1e8a --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobsFromAzure.cs @@ -0,0 +1,63 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using Microsoft.Build.Framework; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Net.Http; +using System.Threading.Tasks; + +namespace Microsoft.DotNet.Build.Tasks +{ + public partial class DownloadBlobsFromAzure : Utility.AzureConnectionStringBuildTask + { + /// + /// The name of the container to access. The specified name must be in the correct format, see the + /// following page for more info. https://msdn.microsoft.com/en-us/library/azure/dd135715.aspx + /// + [Required] + public string ContainerName { get; set; } + + [Required] + public ITaskItem[] BlobNames { get; set; } + + /// + /// Directory to download blob files to. + /// + [Required] + public string DownloadDirectory { get; set; } + + public override bool Execute() + { + var tasks = ExecuteAsync(); + if(tasks == null) + { + return false; + } + Task.WaitAll(tasks.ToArray()); + return !tasks.Any(t => t.Result == false); + } + + public List> ExecuteAsync() + { + ParseConnectionString(); + if (Log.HasLoggedErrors) + { + return null; + } + List> downloadTasks = new List>(); + foreach (var blobFile in BlobNames) + { + string localBlobFile = Path.Combine(DownloadDirectory, Path.GetFileName(blobFile.ItemSpec)); + Log.LogMessage($"Downloading {blobFile} to {localBlobFile}"); + + downloadTasks.Add(DownloadBlobFromAzure.ExecuteAsync(AccountName, AccountKey, ConnectionString, ContainerName, blobFile.ItemSpec, DownloadDirectory, BuildEngine, HostObject)); + } + return downloadTasks; + } + } +} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs new file mode 100644 index 00000000..be0b0898 --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs @@ -0,0 +1,125 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System; +using Microsoft.Build.Framework; +using System.Collections.Generic; +using System.Net.Http; +using System.Xml; +using System.Threading.Tasks; +using System.Linq; + +namespace Microsoft.DotNet.Build.Tasks +{ + public partial class GetAzureBlobList : Utility.AzureConnectionStringBuildTask + { + + /// + /// The name of the container to access. The specified name must be in the correct format, see the + /// following page for more info. https://msdn.microsoft.com/en-us/library/azure/dd135715.aspx + /// + [Required] + public string ContainerName { get; set; } + + [Output] + public string[] BlobNames { get; set; } + + public string FilterBlobNames { get; set; } + + public override bool Execute() + { + return ExecuteAsync().GetAwaiter().GetResult(); + } + + public static string [] Execute(string accountName, + string accountKey, + string connectionString, + string containerName, + string filterBlobNames, + IBuildEngine buildengine, + ITaskHost taskHost) + { + GetAzureBlobList getAzureBlobList = new GetAzureBlobList() + { + AccountName = accountName, + AccountKey = accountKey, + ContainerName = containerName, + FilterBlobNames = filterBlobNames, + BuildEngine = buildengine, + HostObject = taskHost + }; + getAzureBlobList.Execute(); + return getAzureBlobList.BlobNames; + } + + // This code is duplicated in BuildTools task DownloadFromAzure, and that code should be refactored to permit blob listing. + public async Task ExecuteAsync() + { + ParseConnectionString(); + + if (Log.HasLoggedErrors) + { + return false; + } + + List blobsNames = new List(); + string urlListBlobs = string.Format("https://{0}.blob.core.windows.net/{1}?restype=container&comp=list", AccountName, ContainerName); + + Log.LogMessage(MessageImportance.Low, "Sending request to list blobsNames for container '{0}'.", ContainerName); + + using (HttpClient client = new HttpClient()) + { + try + { + var createRequest = Utility.AzureHelper.RequestMessage("GET", urlListBlobs, AccountName, AccountKey); + + XmlDocument responseFile; + string nextMarker = string.Empty; + using (HttpResponseMessage response = await Utility.AzureHelper.RequestWithRetry(Log, client, createRequest)) + { + responseFile = new XmlDocument(); + responseFile.LoadXml(await response.Content.ReadAsStringAsync()); + XmlNodeList elemList = responseFile.GetElementsByTagName("Name"); + + blobsNames.AddRange(elemList.Cast() + .Select(x => x.InnerText) + .ToList()); + + nextMarker = responseFile.GetElementsByTagName("NextMarker").Cast().FirstOrDefault()?.InnerText; + } + while (!string.IsNullOrEmpty(nextMarker)) + { + urlListBlobs = string.Format($"https://{AccountName}.blob.core.windows.net/{ContainerName}?restype=container&comp=list&marker={nextMarker}"); + using (HttpResponseMessage response = Utility.AzureHelper.RequestWithRetry(Log, client, createRequest).GetAwaiter().GetResult()) + { + responseFile = new XmlDocument(); + responseFile.LoadXml(response.Content.ReadAsStringAsync().GetAwaiter().GetResult()); + XmlNodeList elemList = responseFile.GetElementsByTagName("Name"); + + blobsNames.AddRange(elemList.Cast() + .Select(x => x.InnerText) + .ToList()); + + nextMarker = responseFile.GetElementsByTagName("NextMarker").Cast().FirstOrDefault()?.InnerText; + } + } + if (!string.IsNullOrWhiteSpace(FilterBlobNames)) + { + BlobNames = blobsNames.Where(b => b.StartsWith(FilterBlobNames)).ToArray(); + } + else + { + BlobNames = blobsNames.ToArray(); + } + } + catch (Exception e) + { + Log.LogErrorFromException(e, true); + } + return !Log.HasLoggedErrors; + } + } + } + +} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetHostInformation.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetHostInformation.cs new file mode 100644 index 00000000..20f73c40 --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetHostInformation.cs @@ -0,0 +1,45 @@ +using System; +using System.IO; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Microsoft.DotNet.PlatformAbstractions; + +namespace Microsoft.DotNet.Build.Tasks +{ + /* + * Used vendored code from Microsoft.DotNet.PlatformAbstractions. + * Long term we should use that library once it is clear how to + * get MSBuild on core to be able to load the dependent assembly. + */ + public class GetHostInformation : Task + { + [Output] + public string Rid { get; set; } + + [Output] + public string OSName { get; set; } + + public override bool Execute() + { + Rid = RuntimeEnvironment.GetRuntimeIdentifier(); + + switch (RuntimeEnvironment.OperatingSystemPlatform) + { + case Platform.Windows: + OSName = "Windows_NT"; + break; + case Platform.Linux: + OSName = "Linux"; + break; + case Platform.Darwin: + OSName = "OSX"; + break; + default: + Log.LogError("Could not determine display name for platform."); + return false; + } + + return true; + } + } +} diff --git a/pkg/tasks/core-setup.tasks.builds b/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.builds similarity index 100% rename from pkg/tasks/core-setup.tasks.builds rename to tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.builds diff --git a/pkg/tasks/core-setup.tasks.csproj b/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.csproj similarity index 71% rename from pkg/tasks/core-setup.tasks.csproj rename to tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.csproj index 58fd1b10..ccc8fba4 100644 --- a/pkg/tasks/core-setup.tasks.csproj +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.csproj @@ -6,28 +6,26 @@ .NETStandard,Version=v1.5 .NETFramework,Version=v4.5 false - {360F25FA-3CD9-4338-B961-A4F3122B88B2} - $(ToolRuntimePath) + {B507BED2-0A28-456A-99C6-AD7AA148E35F} + $(LocalToolRuntimePath) $(IntermediateOutputPath)\net45 - $(ToolRuntimePath)\net46 + $(LocalToolRuntimePath)\net46 - - - - - - + - + + + + diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/PublishStringToAzureBlob.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/PublishStringToAzureBlob.cs new file mode 100644 index 00000000..502bccac --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/PublishStringToAzureBlob.cs @@ -0,0 +1,63 @@ +using Microsoft.Build.Framework; +using System; +using System.Collections.Generic; +using System.Net.Http; + +namespace Microsoft.DotNet.Build.Tasks +{ + public partial class PublishStringToAzureBlob : Utility.AzureConnectionStringBuildTask + { + [Required] + public string BlobName { get; set; } + [Required] + public string ContainerName { get; set; } + [Required] + public string Content { get; set; } + + public override bool Execute() + { + ParseConnectionString(); + + string blobUrl = $"https://{AccountName}.blob.core.windows.net/{ContainerName}/{BlobName}"; + using (HttpClient client = new HttpClient()) + { + try + { + Tuple headerBlobType = new Tuple("x-ms-blob-type", "BlockBlob"); + List> additionalHeaders = new List>() { headerBlobType }; + var request = Utility.AzureHelper.RequestMessage("PUT", blobUrl, AccountName, AccountKey, additionalHeaders, Content); + + Utility.AzureHelper.RequestWithRetry(Log, client, request).GetAwaiter().GetResult(); + } + catch (Exception e) + { + Log.LogErrorFromException(e, true); + } + } + + return !Log.HasLoggedErrors; + } + + public static bool Execute(string accountName, + string accountKey, + string connectionString, + string containerName, + string blobName, + string content, + IBuildEngine buildengine, + ITaskHost taskHost) + { + PublishStringToAzureBlob publishStringToBlob = new PublishStringToAzureBlob() + { + AccountName = accountName, + AccountKey = accountKey, + ContainerName = containerName, + BlobName = blobName, + Content = content, + BuildEngine = buildengine, + HostObject = taskHost + }; + return publishStringToBlob.Execute(); + } + } +} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/README.md b/tools-local/Microsoft.DotNet.Build.Tasks.Local/README.md new file mode 100644 index 00000000..f2f16a5f --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/README.md @@ -0,0 +1 @@ +These tasks are candidates to be moved to BuildTools or are branched directly from BuildTools and refactored. \ No newline at end of file diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadClient.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadClient.cs new file mode 100644 index 00000000..1ade2199 --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadClient.cs @@ -0,0 +1,183 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Net; +using System.Net.Http; +using System.Text; +using System.Threading; +using Task = System.Threading.Tasks.Task; + +namespace Microsoft.DotNet.Build.Tasks.Utility +{ + public class UploadClient + { + private TaskLoggingHelper log; + + public UploadClient(TaskLoggingHelper loggingHelper) + { + log = loggingHelper; + } + + public string EncodeBlockIds(int numberOfBlocks, int lengthOfId) + { + string numberOfBlocksString = numberOfBlocks.ToString("D" + lengthOfId); + if (Encoding.UTF8.GetByteCount(numberOfBlocksString) <= 64) + { + byte[] bytes = Encoding.UTF8.GetBytes(numberOfBlocksString); + return Convert.ToBase64String(bytes); + } + else + { + throw new Exception("Task failed - Could not encode block id."); + } + } + + public async Task UploadBlockBlobAsync( + CancellationToken ct, + string AccountName, + string AccountKey, + string ContainerName, + string filePath, + string destinationBlob) + { + + string resourceUrl = string.Format("https://{0}.blob.core.windows.net/{1}", AccountName, ContainerName); + + string fileName = destinationBlob; + fileName = fileName.Replace("\\", "/"); + string blobUploadUrl = resourceUrl + "/" + fileName; + int size = (int)new FileInfo(filePath).Length; + int blockSize = 4 * 1024 * 1024; //4MB max size of a block blob + int bytesLeft = size; + List blockIds = new List(); + int numberOfBlocks = (size / blockSize) + 1; + int countForId = 0; + using (FileStream fileStreamTofilePath = new FileStream(filePath, FileMode.Open)) + { + int offset = 0; + + while (bytesLeft > 0) + { + int nextBytesToRead = (bytesLeft < blockSize) ? bytesLeft : blockSize; + byte[] fileBytes = new byte[blockSize]; + int read = fileStreamTofilePath.Read(fileBytes, 0, nextBytesToRead); + + if (nextBytesToRead != read) + { + throw new Exception(string.Format( + "Number of bytes read ({0}) from file {1} isn't equal to the number of bytes expected ({2}) .", + read, fileName, nextBytesToRead)); + } + + string blockId = EncodeBlockIds(countForId, numberOfBlocks.ToString().Length); + + blockIds.Add(blockId); + string blockUploadUrl = blobUploadUrl + "?comp=block&blockid=" + WebUtility.UrlEncode(blockId); + + using (HttpClient client = new HttpClient()) + { + client.DefaultRequestHeaders.Clear(); + Func createRequest = () => + { + DateTime dt = DateTime.UtcNow; + var req = new HttpRequestMessage(HttpMethod.Put, blockUploadUrl); + req.Headers.Add( + AzureHelper.DateHeaderString, + dt.ToString("R", CultureInfo.InvariantCulture)); + req.Headers.Add(AzureHelper.VersionHeaderString, AzureHelper.StorageApiVersion); + req.Headers.Add( + AzureHelper.AuthorizationHeaderString, + AzureHelper.AuthorizationHeader( + AccountName, + AccountKey, + "PUT", + dt, + req, + string.Empty, + string.Empty, + nextBytesToRead.ToString(), + string.Empty)); + + Stream postStream = new MemoryStream(); + postStream.Write(fileBytes, 0, nextBytesToRead); + postStream.Seek(0, SeekOrigin.Begin); + req.Content = new StreamContent(postStream); + return req; + }; + + log.LogMessage(MessageImportance.Low, "Sending request to upload part {0} of file {1}", countForId, fileName); + + using (HttpResponseMessage response = await AzureHelper.RequestWithRetry(log, client, createRequest)) + { + log.LogMessage( + MessageImportance.Low, + "Received response to upload part {0} of file {1}: Status Code:{2} Status Desc: {3}", + countForId, + fileName, + response.StatusCode, + await response.Content.ReadAsStringAsync()); + } + } + + offset += read; + bytesLeft -= nextBytesToRead; + countForId += 1; + } + } + + string blockListUploadUrl = blobUploadUrl + "?comp=blocklist"; + + using (HttpClient client = new HttpClient()) + { + Func createRequest = () => + { + DateTime dt1 = DateTime.UtcNow; + var req = new HttpRequestMessage(HttpMethod.Put, blockListUploadUrl); + req.Headers.Add(AzureHelper.DateHeaderString, dt1.ToString("R", CultureInfo.InvariantCulture)); + req.Headers.Add(AzureHelper.VersionHeaderString, AzureHelper.StorageApiVersion); + + var body = new StringBuilder(""); + foreach (object item in blockIds) + body.AppendFormat("{0}", item); + + body.Append(""); + byte[] bodyData = Encoding.UTF8.GetBytes(body.ToString()); + req.Headers.Add( + AzureHelper.AuthorizationHeaderString, + AzureHelper.AuthorizationHeader( + AccountName, + AccountKey, + "PUT", + dt1, + req, + string.Empty, + string.Empty, + bodyData.Length.ToString(), + "")); + Stream postStream = new MemoryStream(); + postStream.Write(bodyData, 0, bodyData.Length); + postStream.Seek(0, SeekOrigin.Begin); + req.Content = new StreamContent(postStream); + return req; + }; + + using (HttpResponseMessage response = await AzureHelper.RequestWithRetry(log, client, createRequest)) + { + log.LogMessage( + MessageImportance.Low, + "Received response to combine block list for file {0}: Status Code:{1} Status Desc: {2}", + fileName, + response.StatusCode, + await response.Content.ReadAsStringAsync()); + } + } + } + } +} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadToAzure.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadToAzure.cs new file mode 100644 index 00000000..6e95d96f --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadToAzure.cs @@ -0,0 +1,177 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Threading; +using System.Threading.Tasks; +using System.Xml; +using System.Linq; +using System.Net.Http; + +using Microsoft.Build.Framework; +using ThreadingTask = System.Threading.Tasks.Task; + +namespace Microsoft.DotNet.Build.Tasks +{ + + public partial class UploadToAzure : Utility.AzureConnectionStringBuildTask + { + private static readonly CancellationTokenSource TokenSource = new CancellationTokenSource(); + private static readonly CancellationToken CancellationToken = TokenSource.Token; + + /// + /// The name of the container to access. The specified name must be in the correct format, see the + /// following page for more info. https://msdn.microsoft.com/en-us/library/azure/dd135715.aspx + /// + [Required] + public string ContainerName { get; set; } + + /// + /// An item group of files to upload. Each item must have metadata RelativeBlobPath + /// that specifies the path relative to ContainerName where the item will be uploaded. + /// + [Required] + public ITaskItem[] Items { get; set; } + + /// + /// Indicates if the destination blob should be overwritten if it already exists. The default if false. + /// + public bool Overwrite { get; set; } = false; + + /// + /// Specifies the maximum number of clients to concurrently upload blobs to azure + /// + public int MaxClients { get; set; } = 8; + + public void Cancel() + { + TokenSource.Cancel(); + } + + public override bool Execute() + { + return ExecuteAsync(CancellationToken).GetAwaiter().GetResult(); + } + + public async Task ExecuteAsync(CancellationToken ct) + { + ParseConnectionString(); + if (Log.HasLoggedErrors) + { + return false; + } + + Log.LogMessage( + MessageImportance.Normal, + "Begin uploading blobs to Azure account {0} in container {1}.", + AccountName, + ContainerName); + + if (Items.Length == 0) + { + Log.LogError("No items were provided for upload."); + return false; + } + + // first check what blobs are present + string checkListUrl = string.Format( + "https://{0}.blob.core.windows.net/{1}?restype=container&comp=list", + AccountName, + ContainerName); + + HashSet blobsPresent = new HashSet(StringComparer.OrdinalIgnoreCase); + + try + { + using (HttpClient client = new HttpClient()) + { + Func createRequest = () => + { + DateTime dt = DateTime.UtcNow; + var req = new HttpRequestMessage(HttpMethod.Get, checkListUrl); + req.Headers.Add(Utility.AzureHelper.DateHeaderString, dt.ToString("R", CultureInfo.InvariantCulture)); + req.Headers.Add(Utility.AzureHelper.VersionHeaderString, Utility.AzureHelper.StorageApiVersion); + req.Headers.Add(Utility.AzureHelper.AuthorizationHeaderString, Utility.AzureHelper.AuthorizationHeader( + AccountName, + AccountKey, + "GET", + dt, + req)); + return req; + }; + + Log.LogMessage(MessageImportance.Low, "Sending request to check whether Container blobs exist"); + using (HttpResponseMessage response = await Utility.AzureHelper.RequestWithRetry(Log, client, createRequest)) + { + var doc = new XmlDocument(); + doc.LoadXml(await response.Content.ReadAsStringAsync()); + + XmlNodeList nodes = doc.DocumentElement.GetElementsByTagName("Blob"); + + foreach (XmlNode node in nodes) + { + blobsPresent.Add(node["Name"].InnerText); + } + + Log.LogMessage(MessageImportance.Low, "Received response to check whether Container blobs exist"); + } + } + + using (var clientThrottle = new SemaphoreSlim(this.MaxClients, this.MaxClients)) + { + await ThreadingTask.WhenAll(Items.Select(item => UploadAsync(ct, item, blobsPresent, clientThrottle))); + } + + Log.LogMessage(MessageImportance.Normal, "Upload to Azure is complete, a total of {0} items were uploaded.", Items.Length); + } + catch (Exception e) + { + Log.LogErrorFromException(e, true); + } + return !Log.HasLoggedErrors; + } + + private async ThreadingTask UploadAsync(CancellationToken ct, ITaskItem item, HashSet blobsPresent, SemaphoreSlim clientThrottle) + { + if (ct.IsCancellationRequested) + { + Log.LogError("Task UploadToAzure cancelled"); + ct.ThrowIfCancellationRequested(); + } + + string relativeBlobPath = item.GetMetadata("RelativeBlobPath"); + if (string.IsNullOrEmpty(relativeBlobPath)) + throw new Exception(string.Format("Metadata 'RelativeBlobPath' is missing for item '{0}'.", item.ItemSpec)); + + if (!File.Exists(item.ItemSpec)) + throw new Exception(string.Format("The file '{0}' does not exist.", item.ItemSpec)); + + if (!Overwrite && blobsPresent.Contains(relativeBlobPath)) + throw new Exception(string.Format("The blob '{0}' already exists.", relativeBlobPath)); + + await clientThrottle.WaitAsync(); + + try + { + Log.LogMessage("Uploading {0} to {1}.", item.ItemSpec, ContainerName); + Utility.UploadClient uploadClient = new Utility.UploadClient(Log); + await + uploadClient.UploadBlockBlobAsync( + ct, + AccountName, + AccountKey, + ContainerName, + item.ItemSpec, + relativeBlobPath); + } + finally + { + clientThrottle.Release(); + } + } + } +} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/project.json b/tools-local/Microsoft.DotNet.Build.Tasks.Local/project.json new file mode 100644 index 00000000..e707e4b8 --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/project.json @@ -0,0 +1,32 @@ +{ + "dependencies": { + "Microsoft.DotNet.PlatformAbstractions": "1.2.0-beta-001090", + "System.Reflection.Metadata": "1.3.0", + "Newtonsoft.Json": "9.0.1" + }, + "frameworks": { + "netstandard1.5": { + "dependencies": { + "Microsoft.Build": "0.1.0-preview-00022", + "Microsoft.Build.Framework": "0.1.0-preview-00022", + "Microsoft.Build.Tasks.Core": "0.1.0-preview-00022", + "Microsoft.Build.Utilities.Core": "0.1.0-preview-00022", + "Microsoft.Tpl.Dataflow": { + "version": "4.5.24", + "exclude": "all" + }, + "NETStandard.Library": "1.6.0", + "System.Diagnostics.FileVersionInfo": "4.0.0" + }, + "imports": [ + "dnxcore50", + "portable-net45+win8+wpa81" + ] + }, + "net451": { + "dependencies": { + "Microsoft.TargetingPack.NETFramework.v4.5": "1.0.1" + } + } + } +} diff --git a/tools-local/global.json b/tools-local/global.json new file mode 100644 index 00000000..9e26dfee --- /dev/null +++ b/tools-local/global.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/scripts/arm32_ci_script.sh b/tools-local/scripts/arm32_ci_script.sh old mode 100755 new mode 100644 similarity index 100% rename from scripts/arm32_ci_script.sh rename to tools-local/scripts/arm32_ci_script.sh diff --git a/scripts/common/_common.ps1 b/tools-local/scripts/common/_common.ps1 similarity index 100% rename from scripts/common/_common.ps1 rename to tools-local/scripts/common/_common.ps1 diff --git a/scripts/common/_common.sh b/tools-local/scripts/common/_common.sh old mode 100755 new mode 100644 similarity index 100% rename from scripts/common/_common.sh rename to tools-local/scripts/common/_common.sh diff --git a/scripts/common/_prettyprint.sh b/tools-local/scripts/common/_prettyprint.sh old mode 100755 new mode 100644 similarity index 100% rename from scripts/common/_prettyprint.sh rename to tools-local/scripts/common/_prettyprint.sh diff --git a/scripts/common/_utility.ps1 b/tools-local/scripts/common/_utility.ps1 similarity index 100% rename from scripts/common/_utility.ps1 rename to tools-local/scripts/common/_utility.ps1 diff --git a/scripts/docker-as-current-user.sh b/tools-local/scripts/docker-as-current-user.sh similarity index 70% rename from scripts/docker-as-current-user.sh rename to tools-local/scripts/docker-as-current-user.sh index f34838d1..93d5bfce 100755 --- a/scripts/docker-as-current-user.sh +++ b/tools-local/scripts/docker-as-current-user.sh @@ -8,4 +8,5 @@ set -e command="$1" shift -docker "$command" -u="$(id -u):$(id -g)" "$@" +echo "docker $command -u=$(id -u):$(id -g) $@" +docker "$command" -u="$(id -u):$(id -g)" "$@" \ No newline at end of file diff --git a/scripts/docker/centos.7/Dockerfile b/tools-local/scripts/docker/centos.7/Dockerfile similarity index 100% rename from scripts/docker/centos.7/Dockerfile rename to tools-local/scripts/docker/centos.7/Dockerfile diff --git a/scripts/docker/debian.8/Dockerfile b/tools-local/scripts/docker/debian.8/Dockerfile similarity index 100% rename from scripts/docker/debian.8/Dockerfile rename to tools-local/scripts/docker/debian.8/Dockerfile diff --git a/scripts/docker/fedora.24/Dockerfile b/tools-local/scripts/docker/fedora.24/Dockerfile similarity index 100% rename from scripts/docker/fedora.24/Dockerfile rename to tools-local/scripts/docker/fedora.24/Dockerfile diff --git a/scripts/docker/opensuse.42.1/Dockerfile b/tools-local/scripts/docker/opensuse.42.1/Dockerfile similarity index 100% rename from scripts/docker/opensuse.42.1/Dockerfile rename to tools-local/scripts/docker/opensuse.42.1/Dockerfile diff --git a/scripts/docker/ubuntu.14.04/Dockerfile b/tools-local/scripts/docker/ubuntu.14.04/Dockerfile similarity index 100% rename from scripts/docker/ubuntu.14.04/Dockerfile rename to tools-local/scripts/docker/ubuntu.14.04/Dockerfile diff --git a/scripts/docker/ubuntu.16.04/Dockerfile b/tools-local/scripts/docker/ubuntu.16.04/Dockerfile similarity index 100% rename from scripts/docker/ubuntu.16.04/Dockerfile rename to tools-local/scripts/docker/ubuntu.16.04/Dockerfile diff --git a/scripts/docker/ubuntu.16.10/Dockerfile b/tools-local/scripts/docker/ubuntu.16.10/Dockerfile similarity index 100% rename from scripts/docker/ubuntu.16.10/Dockerfile rename to tools-local/scripts/docker/ubuntu.16.10/Dockerfile diff --git a/scripts/dockerrun-as-current-user.sh b/tools-local/scripts/dockerrun-as-current-user.sh similarity index 99% rename from scripts/dockerrun-as-current-user.sh rename to tools-local/scripts/dockerrun-as-current-user.sh index 0fc021ea..3bae9b50 100755 --- a/scripts/dockerrun-as-current-user.sh +++ b/tools-local/scripts/dockerrun-as-current-user.sh @@ -13,5 +13,4 @@ while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symli [[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located done DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" - "$DIR/docker-as-current-user.sh" run "$@" diff --git a/scripts/dockerrun.sh b/tools-local/scripts/dockerrun.sh old mode 100755 new mode 100644 similarity index 100% rename from scripts/dockerrun.sh rename to tools-local/scripts/dockerrun.sh diff --git a/scripts/publish/repoapi_client.sh b/tools-local/scripts/publish/repoapi_client.sh old mode 100755 new mode 100644 similarity index 95% rename from scripts/publish/repoapi_client.sh rename to tools-local/scripts/publish/repoapi_client.sh index 5d0138d5..2afd1f90 --- a/scripts/publish/repoapi_client.sh +++ b/tools-local/scripts/publish/repoapi_client.sh @@ -11,14 +11,14 @@ # $REPO_USER # $REPO_PASS -cmd=$1 +cmd=$5 urls=urls.txt defaultPackageFile=new_package.json defaultRepoFile=new_repo.json -repositoryId=$REPO_ID -server=$REPO_SERVER -user=$REPO_USER -pass=$REPO_PASS +repositoryId=$3 +server=$4 +user=$1 +pass=$2 protocol=https port=443 baseurl="$protocol://$user:$pass@$server:$port" @@ -171,19 +171,19 @@ if [[ "$1" == "-listrepos" ]]; then echo "" elif [[ "$1" == "-listpkgs" ]]; then echo "Fetching package list from $server" - ListPackages $2 + ListPackages $6 elif [[ "$1" == "-addrepo" ]]; then - AddRepo $2 + AddRepo $6 elif [[ "$1" == "-addpkg" ]]; then - AddPackage $2 + AddPackage $6 elif [[ "$1" == "-addpkgs" ]]; then - AddPackages $2 + AddPackages $6 elif [[ "$1" == "-delrepo" ]]; then - DeleteRepo $2 + DeleteRepo $6 elif [[ "$1" == "-delpkg" ]]; then - DeletePackage $2 + DeletePackage $6 else - echo "USAGE: ./repotool.sh -OPTION" + echo "USAGE: ./repotool.sh [username] [password] [repository id] [server] -OPTION" echo "-listrepos: Gather a list of repos" echo "-listpkgs: Gather a list of packages" echo "-addrepo [FILENAME] : Create a new repo using the specified JSON file" @@ -191,4 +191,4 @@ else echo "-addpkgs [FILENAME] : Add packages to repo using urls contained in FILENAME" echo "-delrepo REPOID : Delete the specified repo by ID" echo "-delpkg PKGID : Delete the specified package by ID" -fi +fi \ No newline at end of file diff --git a/setuptools/Key.snk b/tools-local/setuptools/Key.snk similarity index 100% rename from setuptools/Key.snk rename to tools-local/setuptools/Key.snk diff --git a/setuptools/dotnet-deb-tool/Program.cs b/tools-local/setuptools/dotnet-deb-tool/Program.cs similarity index 100% rename from setuptools/dotnet-deb-tool/Program.cs rename to tools-local/setuptools/dotnet-deb-tool/Program.cs diff --git a/setuptools/dotnet-deb-tool/README.md b/tools-local/setuptools/dotnet-deb-tool/README.md similarity index 100% rename from setuptools/dotnet-deb-tool/README.md rename to tools-local/setuptools/dotnet-deb-tool/README.md diff --git a/setuptools/dotnet-deb-tool/dotnet-deb-tool.xproj b/tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.xproj similarity index 84% rename from setuptools/dotnet-deb-tool/dotnet-deb-tool.xproj rename to tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.xproj index f9228874..c0ee9081 100644 --- a/setuptools/dotnet-deb-tool/dotnet-deb-tool.xproj +++ b/tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.xproj @@ -8,8 +8,8 @@ f39f3d8b-b26f-4c77-b08c-d6ca753ee84e Microsoft.DotNet.Deb.Tool - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin + ..\..\..\Bin\obj\$(MSBuildProjectName) + ..\..\..\Bin 2.0 diff --git a/setuptools/dotnet-deb-tool/example_config.json b/tools-local/setuptools/dotnet-deb-tool/example_config.json similarity index 100% rename from setuptools/dotnet-deb-tool/example_config.json rename to tools-local/setuptools/dotnet-deb-tool/example_config.json diff --git a/setuptools/dotnet-deb-tool/prefercliruntime b/tools-local/setuptools/dotnet-deb-tool/prefercliruntime similarity index 100% rename from setuptools/dotnet-deb-tool/prefercliruntime rename to tools-local/setuptools/dotnet-deb-tool/prefercliruntime diff --git a/setuptools/dotnet-deb-tool/project.json b/tools-local/setuptools/dotnet-deb-tool/project.json similarity index 84% rename from setuptools/dotnet-deb-tool/project.json rename to tools-local/setuptools/dotnet-deb-tool/project.json index 869ef942..a34b2e66 100644 --- a/setuptools/dotnet-deb-tool/project.json +++ b/tools-local/setuptools/dotnet-deb-tool/project.json @@ -4,7 +4,7 @@ "emitEntryPoint": true, "compile": { "exclude": [ "tool/**/*" ], - "include": [ "../../build_projects/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs"] + "include": [ "../../src/build/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs"] } }, "dependencies": { diff --git a/setuptools/dotnet-deb-tool/tool/package_files/debian/compat b/tools-local/setuptools/dotnet-deb-tool/tool/package_files/debian/compat similarity index 100% rename from setuptools/dotnet-deb-tool/tool/package_files/debian/compat rename to tools-local/setuptools/dotnet-deb-tool/tool/package_files/debian/compat diff --git a/setuptools/dotnet-deb-tool/tool/package_files/debian/source/format b/tools-local/setuptools/dotnet-deb-tool/tool/package_files/debian/source/format similarity index 100% rename from setuptools/dotnet-deb-tool/tool/package_files/debian/source/format rename to tools-local/setuptools/dotnet-deb-tool/tool/package_files/debian/source/format diff --git a/setuptools/dotnet-deb-tool/tool/package_tool b/tools-local/setuptools/dotnet-deb-tool/tool/package_tool old mode 100755 new mode 100644 similarity index 98% rename from setuptools/dotnet-deb-tool/tool/package_tool rename to tools-local/setuptools/dotnet-deb-tool/tool/package_tool index 6bd678c8..58e8a17b --- a/setuptools/dotnet-deb-tool/tool/package_tool +++ b/tools-local/setuptools/dotnet-deb-tool/tool/package_tool @@ -172,7 +172,7 @@ copy_files_to_output(){ # .deb, .dsc, etc.. Already in output dir # Copy Test files - cp $SCRIPT_DIR/test/integration_tests/test_package.bats $OUTPUT_DIR + cp $SCRIPT_DIR/src/test/integration_tests/test_package.bats $OUTPUT_DIR } ## Packaging Functions ## diff --git a/setuptools/dotnet-deb-tool/tool/scripts/config_template_generator.py b/tools-local/setuptools/dotnet-deb-tool/tool/scripts/config_template_generator.py similarity index 100% rename from setuptools/dotnet-deb-tool/tool/scripts/config_template_generator.py rename to tools-local/setuptools/dotnet-deb-tool/tool/scripts/config_template_generator.py diff --git a/setuptools/dotnet-deb-tool/tool/scripts/debian_build_lib.sh b/tools-local/setuptools/dotnet-deb-tool/tool/scripts/debian_build_lib.sh old mode 100755 new mode 100644 similarity index 100% rename from setuptools/dotnet-deb-tool/tool/scripts/debian_build_lib.sh rename to tools-local/setuptools/dotnet-deb-tool/tool/scripts/debian_build_lib.sh diff --git a/setuptools/dotnet-deb-tool/tool/scripts/extract_json_value.py b/tools-local/setuptools/dotnet-deb-tool/tool/scripts/extract_json_value.py similarity index 100% rename from setuptools/dotnet-deb-tool/tool/scripts/extract_json_value.py rename to tools-local/setuptools/dotnet-deb-tool/tool/scripts/extract_json_value.py diff --git a/setuptools/dotnet-deb-tool/tool/scripts/manpage_generator.py b/tools-local/setuptools/dotnet-deb-tool/tool/scripts/manpage_generator.py similarity index 100% rename from setuptools/dotnet-deb-tool/tool/scripts/manpage_generator.py rename to tools-local/setuptools/dotnet-deb-tool/tool/scripts/manpage_generator.py diff --git a/setuptools/dotnet-deb-tool/tool/setup/build_setup.sh b/tools-local/setuptools/dotnet-deb-tool/tool/setup/build_setup.sh old mode 100755 new mode 100644 similarity index 100% rename from setuptools/dotnet-deb-tool/tool/setup/build_setup.sh rename to tools-local/setuptools/dotnet-deb-tool/tool/setup/build_setup.sh diff --git a/setuptools/dotnet-deb-tool/tool/setup/test_setup.sh b/tools-local/setuptools/dotnet-deb-tool/tool/setup/test_setup.sh old mode 100755 new mode 100644 similarity index 100% rename from setuptools/dotnet-deb-tool/tool/setup/test_setup.sh rename to tools-local/setuptools/dotnet-deb-tool/tool/setup/test_setup.sh diff --git a/setuptools/dotnet-deb-tool/tool/templates/debian/changelog b/tools-local/setuptools/dotnet-deb-tool/tool/templates/debian/changelog similarity index 100% rename from setuptools/dotnet-deb-tool/tool/templates/debian/changelog rename to tools-local/setuptools/dotnet-deb-tool/tool/templates/debian/changelog diff --git a/setuptools/dotnet-deb-tool/tool/templates/debian/control b/tools-local/setuptools/dotnet-deb-tool/tool/templates/debian/control similarity index 100% rename from setuptools/dotnet-deb-tool/tool/templates/debian/control rename to tools-local/setuptools/dotnet-deb-tool/tool/templates/debian/control diff --git a/setuptools/dotnet-deb-tool/tool/templates/debian/copyright b/tools-local/setuptools/dotnet-deb-tool/tool/templates/debian/copyright similarity index 100% rename from setuptools/dotnet-deb-tool/tool/templates/debian/copyright rename to tools-local/setuptools/dotnet-deb-tool/tool/templates/debian/copyright diff --git a/setuptools/dotnet-deb-tool/tool/templates/debian/rules b/tools-local/setuptools/dotnet-deb-tool/tool/templates/debian/rules similarity index 100% rename from setuptools/dotnet-deb-tool/tool/templates/debian/rules rename to tools-local/setuptools/dotnet-deb-tool/tool/templates/debian/rules diff --git a/setuptools/dotnet-deb-tool/tool/test.sh b/tools-local/setuptools/dotnet-deb-tool/tool/test.sh old mode 100755 new mode 100644 similarity index 100% rename from setuptools/dotnet-deb-tool/tool/test.sh rename to tools-local/setuptools/dotnet-deb-tool/tool/test.sh diff --git a/setuptools/dotnet-deb-tool/tool/test/integration_tests/test_package.bats b/tools-local/setuptools/dotnet-deb-tool/tool/test/integration_tests/test_package.bats similarity index 100% rename from setuptools/dotnet-deb-tool/tool/test/integration_tests/test_package.bats rename to tools-local/setuptools/dotnet-deb-tool/tool/test/integration_tests/test_package.bats diff --git a/setuptools/dotnet-deb-tool/tool/test/test_assets/lkgtestman.1 b/tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/lkgtestman.1 similarity index 100% rename from setuptools/dotnet-deb-tool/tool/test/test_assets/lkgtestman.1 rename to tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/lkgtestman.1 diff --git a/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/debian_config.json b/tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/debian_config.json similarity index 100% rename from setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/debian_config.json rename to tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/debian_config.json diff --git a/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/docs.json b/tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/docs.json similarity index 100% rename from setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/docs.json rename to tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/docs.json diff --git a/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/docs/testdocs.1 b/tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/docs/testdocs.1 similarity index 100% rename from setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/docs/testdocs.1 rename to tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/docs/testdocs.1 diff --git a/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/package_root/path_relative_to_package_root/test_exe.sh b/tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/package_root/path_relative_to_package_root/test_exe.sh old mode 100755 new mode 100644 similarity index 100% rename from setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/package_root/path_relative_to_package_root/test_exe.sh rename to tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/package_root/path_relative_to_package_root/test_exe.sh diff --git a/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/package_root/test_called.sh b/tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/package_root/test_called.sh old mode 100755 new mode 100644 similarity index 100% rename from setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/package_root/test_called.sh rename to tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/package_root/test_called.sh diff --git a/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/samples/testsample.cs b/tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/samples/testsample.cs similarity index 100% rename from setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/samples/testsample.cs rename to tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/test_package_layout/samples/testsample.cs diff --git a/setuptools/dotnet-deb-tool/tool/test/test_assets/testdocs.json b/tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/testdocs.json similarity index 100% rename from setuptools/dotnet-deb-tool/tool/test/test_assets/testdocs.json rename to tools-local/setuptools/dotnet-deb-tool/tool/test/test_assets/testdocs.json diff --git a/setuptools/dotnet-deb-tool/tool/test/unit_tests/test_debian_build_lib.bats b/tools-local/setuptools/dotnet-deb-tool/tool/test/unit_tests/test_debian_build_lib.bats similarity index 100% rename from setuptools/dotnet-deb-tool/tool/test/unit_tests/test_debian_build_lib.bats rename to tools-local/setuptools/dotnet-deb-tool/tool/test/unit_tests/test_debian_build_lib.bats diff --git a/setuptools/dotnet-deb-tool/tool/test/unit_tests/test_scripts.bats b/tools-local/setuptools/dotnet-deb-tool/tool/test/unit_tests/test_scripts.bats similarity index 100% rename from setuptools/dotnet-deb-tool/tool/test/unit_tests/test_scripts.bats rename to tools-local/setuptools/dotnet-deb-tool/tool/test/unit_tests/test_scripts.bats diff --git a/setuptools/independent/DepsProcessor/Program.cs b/tools-local/setuptools/independent/DepsProcessor/Program.cs similarity index 96% rename from setuptools/independent/DepsProcessor/Program.cs rename to tools-local/setuptools/independent/DepsProcessor/Program.cs index dfc04fcc..00a532e9 100644 --- a/setuptools/independent/DepsProcessor/Program.cs +++ b/tools-local/setuptools/independent/DepsProcessor/Program.cs @@ -23,7 +23,7 @@ namespace DepsProcessor string projectDirectory = null; string depsFile = null; IReadOnlyList runtimes = null; - IReadOnlyList runtimepackagesToBeRemoved = null; + IReadOnlyList runtimepackagesToBeRemoved = null; try { ArgumentSyntax.Parse(args, syntax => @@ -35,7 +35,7 @@ namespace DepsProcessor syntax.DefineOption("p|project", ref projectDirectory, "Project location"); syntax.DefineOption("d|deps", ref depsFile, "Deps file path"); - syntax.DefineOptionList("r|remove", ref runtimepackagesToBeRemoved, "Runtime packages to be removed"); + syntax.DefineOptionList("r|remove", ref runtimepackagesToBeRemoved, "Runtime packages to be removed"); syntax.DefineParameterList("runtimes", ref runtimes, "Runtimes"); }); @@ -78,12 +78,12 @@ namespace DepsProcessor var graph = manager.Collect(exporter.GetDependencies(LibraryType.Package)); var expandedGraph = manager.Expand(graph, runtimes); - var trimmedRuntimeLibraries = context.RuntimeLibraries; + var trimmedRuntimeLibraries = context.RuntimeLibraries; - if (runtimepackagesToBeRemoved != null && runtimepackagesToBeRemoved.Count > 0) - { - trimmedRuntimeLibraries = RuntimeReference.RemoveReferences(context.RuntimeLibraries, runtimepackagesToBeRemoved); - } + if (runtimepackagesToBeRemoved != null && runtimepackagesToBeRemoved.Count > 0) + { + trimmedRuntimeLibraries = RuntimeReference.RemoveReferences(context.RuntimeLibraries, runtimepackagesToBeRemoved); + } context = new DependencyContext( context.Target, diff --git a/setuptools/independent/DepsProcessor/RuntimeGraphGenerator.xproj b/tools-local/setuptools/independent/DepsProcessor/RuntimeGraphGenerator.xproj similarity index 86% rename from setuptools/independent/DepsProcessor/RuntimeGraphGenerator.xproj rename to tools-local/setuptools/independent/DepsProcessor/RuntimeGraphGenerator.xproj index e88aee95..a7d4058d 100644 --- a/setuptools/independent/DepsProcessor/RuntimeGraphGenerator.xproj +++ b/tools-local/setuptools/independent/DepsProcessor/RuntimeGraphGenerator.xproj @@ -8,8 +8,8 @@ efc4fe68-83eb-40e4-bfa8-61d0b4626f25 RuntimeGraphGenerator - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin + ..\..\..\..\Bin\obj\$(MSBuildProjectName) + ..\..\..\..\Bin diff --git a/setuptools/independent/DepsProcessor/RuntimeGraphManager.cs b/tools-local/setuptools/independent/DepsProcessor/RuntimeGraphManager.cs similarity index 83% rename from setuptools/independent/DepsProcessor/RuntimeGraphManager.cs rename to tools-local/setuptools/independent/DepsProcessor/RuntimeGraphManager.cs index 3db4f26b..df46857d 100644 --- a/setuptools/independent/DepsProcessor/RuntimeGraphManager.cs +++ b/tools-local/setuptools/independent/DepsProcessor/RuntimeGraphManager.cs @@ -23,11 +23,7 @@ namespace Microsoft.DotNet.ProjectModel var runtimeJson = description.PackageLibrary.Files.FirstOrDefault(f => f == RuntimeJsonFileName); if (runtimeJson != null) { - // Convert the package-name to lower-case in the path to lookup runtime.json - string lowercasedPackageName = description.Identity.Name.ToLower(); - string pathToPackage = export.Library.Path.Replace(description.Identity.Name, lowercasedPackageName); - - var runtimeJsonFullName = Path.Combine(pathToPackage, runtimeJson); + var runtimeJsonFullName = Path.Combine(export.Library.Path, runtimeJson); graph = RuntimeGraph.Merge(graph, JsonRuntimeFormat.ReadRuntimeGraph(runtimeJsonFullName)); } } diff --git a/setuptools/independent/DepsProcessor/RuntimeReference.cs b/tools-local/setuptools/independent/DepsProcessor/RuntimeReference.cs similarity index 97% rename from setuptools/independent/DepsProcessor/RuntimeReference.cs rename to tools-local/setuptools/independent/DepsProcessor/RuntimeReference.cs index 96fa9ffd..87107056 100644 --- a/setuptools/independent/DepsProcessor/RuntimeReference.cs +++ b/tools-local/setuptools/independent/DepsProcessor/RuntimeReference.cs @@ -1,4 +1,4 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Copyright (c) .NET Foundation and contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. using System; @@ -63,4 +63,4 @@ namespace DepsProcessor } } -} +} \ No newline at end of file diff --git a/tools-local/setuptools/independent/DepsProcessor/project.json b/tools-local/setuptools/independent/DepsProcessor/project.json new file mode 100644 index 00000000..1deb6182 --- /dev/null +++ b/tools-local/setuptools/independent/DepsProcessor/project.json @@ -0,0 +1,24 @@ +{ + "version": "1.0.0-*", + "buildOptions": { + "emitEntryPoint": true + }, + "dependencies": { + "NuGet.RuntimeModel": "3.5.0-rc-1285", + "NuGet.Versioning": "3.5.0-rc-1285", + "System.CommandLine": "0.1.0-e170322-6", + "System.Runtime.Serialization.Json": "4.0.2", + "Microsoft.DotNet.ProjectModel": "1.0.0-rc2-002794", + "Microsoft.DotNet.Cli.Utils": "1.0.0-preview2-002794", + "NETStandard.Library": "1.6.1-preview1-24508-08", + "Microsoft.NETCore.Runtime.CoreCLR": "1.1.0-beta-24509-04" + }, + "frameworks": { + "netcoreapp1.0": { + "imports": [ + "dnxcore50", + "portable-net45+wp80+win8+wpa81+dnxcore50" + ] + } + } +} diff --git a/setuptools/independent/DepsProcessor/project.json.template b/tools-local/setuptools/independent/DepsProcessor/project.json.template similarity index 100% rename from setuptools/independent/DepsProcessor/project.json.template rename to tools-local/setuptools/independent/DepsProcessor/project.json.template diff --git a/setuptools/independent/global.json b/tools-local/setuptools/independent/global.json similarity index 100% rename from setuptools/independent/global.json rename to tools-local/setuptools/independent/global.json diff --git a/pkg/tasks/BuildTask.cs b/tools-local/tasks/BuildTask.cs similarity index 100% rename from pkg/tasks/BuildTask.cs rename to tools-local/tasks/BuildTask.cs diff --git a/tools-local/tasks/ChangeEntryPointLibraryName.cs b/tools-local/tasks/ChangeEntryPointLibraryName.cs new file mode 100644 index 00000000..956633da --- /dev/null +++ b/tools-local/tasks/ChangeEntryPointLibraryName.cs @@ -0,0 +1,71 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System; +using System.Linq; +using Microsoft.Build.Framework; +using System.IO; +using Newtonsoft.Json; +using Newtonsoft.Json.Linq; + +namespace Microsoft.DotNet.Build.Tasks +{ + public class ChangeEntryPointLibraryName : BuildTask + { + [Required] + public string DepsFile { get; set; } + + public string NewName { get; set; } + + public override bool Execute() + { + JToken deps; + using (var file = File.OpenText(DepsFile)) + using (JsonTextReader reader = new JsonTextReader(file)) + { + deps = JObject.ReadFrom(reader); + } + + if (deps == null) return false; + + string version = string.Empty; + foreach (JProperty target in deps["targets"]) + { + var targetLibrary = target.Value.Children().FirstOrDefault(); + if (targetLibrary == null) + { + continue; + } + version = targetLibrary.Name.Substring(targetLibrary.Name.IndexOf('/') + 1); + if (string.IsNullOrEmpty(NewName)) + { + targetLibrary.Remove(); + } + else + { + targetLibrary.Replace(new JProperty(NewName + '/' + version, targetLibrary.Value)); + } + } + if (!string.IsNullOrEmpty(version)) + { + var library = deps["libraries"].Children().First(); + if (string.IsNullOrEmpty(NewName)) + { + library.Remove(); + } + else + { + library.Replace(new JProperty(NewName + '/' + version, library.Value)); + } + using (var file = File.CreateText(DepsFile)) + using (var writer = new JsonTextWriter(file) { Formatting = Formatting.Indented }) + { + deps.WriteTo(writer); + } + } + + return true; + } + } +} diff --git a/pkg/tasks/FileUtilities.cs b/tools-local/tasks/FileUtilities.cs similarity index 100% rename from pkg/tasks/FileUtilities.cs rename to tools-local/tasks/FileUtilities.cs diff --git a/tools-local/tasks/FinalizeBuild.cs b/tools-local/tasks/FinalizeBuild.cs new file mode 100644 index 00000000..edad2e87 --- /dev/null +++ b/tools-local/tasks/FinalizeBuild.cs @@ -0,0 +1,206 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System; +using Microsoft.Build.Framework; +using System.IO; +using System.Collections.Generic; +using System.Text.RegularExpressions; +using Microsoft.Build.Construction; +using System.Net.Http; +using System.Xml; +using System.Globalization; +using System.Threading.Tasks; +using System.Linq; +using System.Diagnostics; +using System.Threading; + +namespace Microsoft.DotNet.Build.Tasks +{ + public partial class FinalizeBuild : Utility.AzureConnectionStringBuildTask + { + [Required] + public string SemaphoreBlob { get; set; } + [Required] + public string FinalizeContainer { get; set; } + public string MaxWait { get; set; } + public string Delay { get; set; } + [Required] + public string ContainerName { get; set; } + [Required] + public string Channel { get; set; } + [Required] + public string Version { get; set; } + [Required] + public ITaskItem [] PublishRids { get; set; } + public string CommitHash { get; set; } + public bool ForcePublish { get; set; } + + private Regex _versionRegex = new Regex(@"(?\d+\.\d+\.\d+)(-(?[^-]+-)?(?\d+)-(?\d+))?"); + + public override bool Execute() + { + ParseConnectionString(); + + if (Log.HasLoggedErrors) + { + return false; + } + + if (!FinalizeContainer.EndsWith("/")) + { + FinalizeContainer = $"{FinalizeContainer}/"; + } + string targetVersionFile = $"{FinalizeContainer}{Version}"; + + CreateBlobIfNotExists(SemaphoreBlob); + + AzureBlobLease blobLease = new AzureBlobLease(AccountName, AccountKey, ConnectionString, ContainerName, SemaphoreBlob, Log); + Log.LogMessage($"Acquiring lease on semaphore blob '{SemaphoreBlob}'"); + blobLease.Acquire(); + + // Prevent race conditions by dropping a version hint of what version this is. If we see this file + // and it is the same as our version then we know that a race happened where two+ builds finished + // at the same time and someone already took care of publishing and we have no work to do. + if (IsLatestSpecifiedVersion(targetVersionFile) && !ForcePublish) + { + Log.LogMessage(MessageImportance.Low, $"version hint file for publishing finalization is {targetVersionFile}"); + Log.LogMessage(MessageImportance.High, $"Version '{Version}' is already published, skipping finalization."); + Log.LogMessage($"Releasing lease on semaphore blob '{SemaphoreBlob}'"); + blobLease.Release(); + return true; + } + else + { + + // Delete old version files + GetBlobList(FinalizeContainer) + .Select(s => s.Replace("/dotnet/", "")) + .Where(w => _versionRegex.Replace(Path.GetFileName(w), "") == "") + .ToList() + .ForEach(f => TryDeleteBlob(f)); + + + // Drop the version file signaling such for any race-condition builds (see above comment). + CreateBlobIfNotExists(targetVersionFile); + + try + { + CopyBlobs($"{Channel}/Binaries/{Version}", $"{Channel}/Binaries/Latest/"); + + CopyBlobs($"{Channel}/Installers/{Version}", $"{Channel}/Installers/Latest/"); + + // Generate the Sharedfx Version text files + List versionFiles = PublishRids.Select(p => $"{p.ItemSpec}.version").ToList(); + + string sfxVersion = GetSharedFrameworkVersionFileContent(); + foreach(string version in versionFiles) + { + PublishStringToBlob(ContainerName, $"{Channel}/dnvm/latest.sharedfx.{version}", sfxVersion); + } + } + finally + { + blobLease.Release(); + } + } + return !Log.HasLoggedErrors; + } + + private string GetSharedFrameworkVersionFileContent() + { + string returnString = string.Empty; + if(!string.IsNullOrWhiteSpace(CommitHash)) + { + returnString += $"{CommitHash}{Environment.NewLine}"; + } + returnString += $"{Version}{Environment.NewLine}"; + return returnString; + } + + public bool CopyBlobs(string sourceFolder, string destinationFolder) + { + bool returnStatus = true; + List> copyTasks = new List>(); + string[] blobs = GetBlobList(sourceFolder); + foreach (string blob in blobs) + { + string targetName = _versionRegex.Replace(Path.GetFileName(blob), "Latest"); + string sourceBlob = blob.Replace($"/{ContainerName}/", ""); + string destinationBlob = $"{destinationFolder}{targetName}"; + Log.LogMessage($"Copying blob '{sourceBlob}' to '{destinationBlob}'"); + copyTasks.Add(CopyBlobAsync(sourceBlob, destinationBlob)); + } + Task.WaitAll(copyTasks.ToArray()); + copyTasks.ForEach(c => returnStatus &= c.Result); + return returnStatus; + } + + public bool TryDeleteBlob(string path) + { + return DeleteBlob(ContainerName, path); + } + + public void CreateBlobIfNotExists(string path) + { + var blobList = GetBlobList(path); + if(blobList.Count() == 0) + { + PublishStringToBlob(ContainerName, path, DateTime.Now.ToString()); + } + } + + public bool IsLatestSpecifiedVersion(string versionFile) + { + var blobList = GetBlobList(versionFile); + return blobList.Count() != 0; + } + + public bool DeleteBlob(string container, string blob) + { + return DeleteAzureBlob.Execute(AccountName, + AccountKey, + ConnectionString, + container, + blob, + BuildEngine, + HostObject); + } + + public Task CopyBlobAsync(string sourceBlobName, string destinationBlobName) + { + return CopyAzureBlobToBlob.ExecuteAsync(AccountName, + AccountKey, + ConnectionString, + ContainerName, + sourceBlobName, + destinationBlobName, + BuildEngine, + HostObject); + } + + public string[] GetBlobList(string path) + { + return GetAzureBlobList.Execute(AccountName, + AccountKey, + ConnectionString, + ContainerName, + path, + BuildEngine, + HostObject); + } + + public bool PublishStringToBlob(string container, string blob, string contents) + { + return PublishStringToAzureBlob.Execute(AccountName, + AccountKey, + ConnectionString, + container, + blob, + contents, + BuildEngine, + HostObject); + } + } +} diff --git a/tools-local/tasks/GenerateDebRepoUploadJsonFile.cs b/tools-local/tasks/GenerateDebRepoUploadJsonFile.cs new file mode 100644 index 00000000..b173baf3 --- /dev/null +++ b/tools-local/tasks/GenerateDebRepoUploadJsonFile.cs @@ -0,0 +1,47 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System; +using Microsoft.Build.Framework; +using System.IO; +using System.Collections.Generic; +using Microsoft.Build.Construction; + + +namespace Microsoft.DotNet.Build.Tasks +{ + public partial class GenerateDebRepoUploadJsonFile : BuildTask + { + private const string _debianRevisionNumber = "1"; + [Required] + public string RepoId { get; set; } + [Required] + public string UploadJsonFilename { get; set; } + [Required] + public string PackageName { get; set; } + [Required] + public string PackageVersion { get; set; } + [Required] + public string UploadUrl { get; set; } + + public override bool Execute() + { + File.Delete(UploadJsonFilename); + + using (var fileStream = File.Create(UploadJsonFilename)) + { + using (StreamWriter sw = new StreamWriter(fileStream)) + { + sw.WriteLine("{"); + sw.WriteLine($" \"name\":\"{PackageName}\","); + sw.WriteLine($" \"version\":\"{PackageVersion}-{_debianRevisionNumber}\","); + sw.WriteLine($" \"repositoryId\":\"{RepoId}\","); + sw.WriteLine($" \"sourceUrl\":\"{UploadUrl}\""); + sw.WriteLine("}"); + } + } + return !Log.HasLoggedErrors; + } + } +} \ No newline at end of file diff --git a/pkg/tasks/GenerateFileVersionProps.cs b/tools-local/tasks/GenerateFileVersionProps.cs similarity index 100% rename from pkg/tasks/GenerateFileVersionProps.cs rename to tools-local/tasks/GenerateFileVersionProps.cs diff --git a/tools-local/tasks/GenerateGuidFromName.cs b/tools-local/tasks/GenerateGuidFromName.cs new file mode 100644 index 00000000..66e42465 --- /dev/null +++ b/tools-local/tasks/GenerateGuidFromName.cs @@ -0,0 +1,70 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System; +using System.Security.Cryptography; +using Microsoft.Build.Framework; + +namespace Microsoft.DotNet.Build.Tasks +{ + public class GenerateGuidFromName : BuildTask + { + [Required] + public string Name { get; set; } + [Output] + public string GeneratedGui { get; set; } + + // Generate a Version 5 (SHA1 Name Based) Guid from a name. + public override bool Execute() + { + // Any fixed GUID will do for a namespace. + Guid namespaceId = new Guid("28F1468D-672B-489A-8E0C-7C5B3030630C"); + + using (SHA1 hasher = SHA1.Create()) + { + var nameBytes = System.Text.Encoding.UTF8.GetBytes(Name ?? string.Empty); + var namespaceBytes = namespaceId.ToByteArray(); + + SwapGuidByteOrder(namespaceBytes); + + var streamToHash = new byte[namespaceBytes.Length + nameBytes.Length]; + + Array.Copy(namespaceBytes, streamToHash, namespaceBytes.Length); + Array.Copy(nameBytes, 0, streamToHash, namespaceBytes.Length, nameBytes.Length); + + var hashResult = hasher.ComputeHash(streamToHash); + + var res = new byte[16]; + + Array.Copy(hashResult, res, res.Length); + + unchecked { res[6] = (byte)(0x50 | (res[6] & 0x0F)); } + unchecked { res[8] = (byte)(0x40 | (res[8] & 0x3F)); } + + SwapGuidByteOrder(res); + + GeneratedGui = (new Guid(res)).ToString(); + } + + return true; + } + + // Do a byte order swap, .NET GUIDs store multi byte components in little + // endian. + private static void SwapGuidByteOrder(byte[] b) + { + Swap(b, 0, 3); + Swap(b, 1, 2); + Swap(b, 5, 6); + Swap(b, 7, 8); + } + + private static void Swap(byte[] b, int x, int y) + { + byte t = b[x]; + b[x] = b[y]; + b[y] = t; + } + } +} diff --git a/tools-local/tasks/GenerateMsiVersion.cs b/tools-local/tasks/GenerateMsiVersion.cs new file mode 100644 index 00000000..f24c087d --- /dev/null +++ b/tools-local/tasks/GenerateMsiVersion.cs @@ -0,0 +1,103 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System; +using Microsoft.Build.Framework; + +namespace Microsoft.DotNet.Build.Tasks +{ + // MSI versioning + // Encode the CLI version to fit into the MSI versioning scheme - https://msdn.microsoft.com/en-us/library/windows/desktop/aa370859(v=vs.85).aspx + // MSI versions are 3 part + // major.minor.build + // Size(bits) of each part 8 8 16 + // So we have 32 bits to encode the CLI version + + // For a CLI version based on commit count: + // Starting with most significant bit this how the CLI version is going to be encoded as MSI Version + // CLI major -> 6 bits + // CLI minor -> 6 bits + // CLI patch -> 6 bits + // CLI commitcount -> 14 bits + // + // For a CLI version based on BuildTools versioning + // CLI major -> 5 bits + // CLI minor -> 5 bits + // CLI patch -> 4 bits + // BuildNumber major -> 14 bits + // BuildNumber minor -> 4 bits + public class GenerateMsiVersion : BuildTask + { + [Required] + public string Major { get; set; } + [Required] + public string Minor { get; set; } + [Required] + public string Patch { get; set; } + public string BuildNumber { get; set; } + public string BuildNumberMajor { get; set; } + public string BuildNumberMinor { get; set; } + [Output] + public string MsiVersion { get; set; } + + public override bool Execute() + { + if(BuildNumber == null && BuildNumberMajor == null) + { + Log.LogError("Either BuildNumber or BuildNumberMajor and BuildNumberMinor are required parameters."); + return false; + } + if(BuildNumber != null && BuildNumberMajor != null) + { + Log.LogError("You must specify either BuildNumber or BuildNumberMajor and BuildNumberMinor, you cannot specify both parameters."); + return false; + } + if (BuildNumberMajor != null && BuildNumberMinor == null) + { + Log.LogError("If you specify a BuildNumberMajor, you must also specify the BuildNumberMinor."); + return false; + } + if(BuildNumber != null) + { + ParseBuildNumber(); + } + else + { + ParseBuildNumberMajorMinor(); + } + return true; + } + private void ParseBuildNumber() + { + var major = int.Parse(Major) << 26; + var minor = int.Parse(Minor) << 20; + var patch = int.Parse(Patch) << 14; + var msiVersionNumber = major | minor | patch | int.Parse(BuildNumber); + + var msiMajor = (msiVersionNumber >> 24) & 0xFF; + var msiMinor = (msiVersionNumber >> 16) & 0xFF; + var msiBuild = msiVersionNumber & 0xFFFF; + + MsiVersion = $"{msiMajor}.{msiMinor}.{msiBuild}"; + } + private void ParseBuildNumberMajorMinor() + { + var major = int.Parse(Major) << 27; + var minor = int.Parse(Minor) << 22; + var patch = int.Parse(Patch) << 18; + + var buildNumberMajor = int.Parse(BuildNumberMajor) & 0x3FFF << 4; + var buildNumberMinor = int.Parse(BuildNumberMinor) & 0xF; + + var msiVersionNumber = major | minor | patch | buildNumberMajor | buildNumberMinor; + + var msiMajor = (msiVersionNumber >> 24) & 0xFF; + var msiMinor = (msiVersionNumber >> 16) & 0xFF; + var msiBuild = msiVersionNumber & 0xFFFF; + + MsiVersion = $"{msiMajor}.{msiMinor}.{msiBuild}"; + } + + } +} diff --git a/tools-local/tasks/GetBuildableFrameworks.cs b/tools-local/tasks/GetBuildableFrameworks.cs new file mode 100644 index 00000000..098cb34e --- /dev/null +++ b/tools-local/tasks/GetBuildableFrameworks.cs @@ -0,0 +1,63 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System; +using Microsoft.Build.Framework; +using System.IO; +using Newtonsoft.Json; +using Newtonsoft.Json.Linq; +using System.Collections.Generic; +using Microsoft.Build.Utilities; + +namespace Microsoft.DotNet.Build.Tasks +{ + /// + /// This target opens the json files and extracts the frameworks that are buildable + /// according to the current OSGroup. + /// In short it removes net45 and similar from *nix systems. + /// The output is an ItemGroup that can be batch called when executing 'dotnet build' + /// + public class GetBuildArgsByFrameworks : BuildTask + { + [Required] + public ITaskItem[] ProjectJsonPaths { get; set; } + [Required] + public string OSGroup { get; set; } + [Output] + public ITaskItem[] BuildArgs { get; set; } + public override bool Execute() + { + List args = new List(); + foreach (var projectJsonPath in ProjectJsonPaths) + { + using (TextReader projectFileReader = File.OpenText(projectJsonPath.ItemSpec)) + { + + var projectJsonReader = new JsonTextReader(projectFileReader); + var serializer = new JsonSerializer(); + var project = serializer.Deserialize(projectJsonReader); + var dir = Path.GetDirectoryName(projectJsonPath.ItemSpec); + var frameworksSection = project.Value("frameworks"); + foreach (var framework in frameworksSection.Properties()) + { + if (OSGroup == "Windows_NT" + || framework.Name.StartsWith("netstandard") + || framework.Name.StartsWith("netcoreapp")) + { + args.Add($"--framework {framework.Name} {dir}"); + } + } + } + } + + BuildArgs = new ITaskItem[args.Count]; + for (int i = 0; i < BuildArgs.Length; i++) + { + BuildArgs[i] = new TaskItem(args[i]); + } + + return true; + } + } +} diff --git a/tools-local/tasks/ReplaceFileContents.cs b/tools-local/tasks/ReplaceFileContents.cs new file mode 100644 index 00000000..1090baf8 --- /dev/null +++ b/tools-local/tasks/ReplaceFileContents.cs @@ -0,0 +1,106 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System; +using System.IO; +using Microsoft.Build.Utilities; +using Microsoft.Build.Framework; + +namespace Microsoft.DotNet.Build.Tasks +{ + /// + /// Reads contents of an input file, and searches for each replacement passed in. + /// + /// When ReplacementItems is matched, it will replace the Include/ItemSpec with the corresponding + /// ReplacementString metadata value. This can be useful if the ReplacementString is a value that + /// cannot be represented by ITaskItem.ItemSpec (like string.Empty). + /// + /// When a ReplacementPattern is matched it will replace it with the string of the corresponding (by index) + /// item in ReplacementStrings. + /// + /// For example, if 2 ReplacementPatterns are passed in, 2 ReplacementStrings must also passed in and the first + /// pattern will be replaced with the first string, and the second pattern replaced with the second string. + /// + /// ReplacementPattern could easily be a regex, but it isn't needed for current use cases, so leaving this + /// as just a string that will be replaced. + /// + public class ReplaceFileContents : Task + { + [Required] + public string InputFile { get; set; } + + [Required] + public string DestinationFile { get; set; } + + public ITaskItem[] ReplacementItems { get; set; } + + public ITaskItem[] ReplacementPatterns { get; set; } + + public ITaskItem[] ReplacementStrings { get; set; } + + private ITaskItem[] Empty = new ITaskItem[0]; + + public override bool Execute() + { + if (ReplacementItems == null && ReplacementPatterns == null && ReplacementStrings == null) + { + throw new Exception($"ReplaceFileContents was called with no replacement values. Either pass ReplacementItems or ReplacementPatterns/ReplacementStrings properties."); + } + + ReplacementItems = ReplacementItems ?? Empty; + ReplacementPatterns = ReplacementPatterns ?? Empty; + ReplacementStrings = ReplacementStrings ?? Empty; + + if (ReplacementPatterns.Length != ReplacementStrings.Length) + { + throw new Exception($"Expected {nameof(ReplacementPatterns)} (length {ReplacementPatterns.Length}) and {nameof(ReplacementStrings)} (length {ReplacementStrings.Length}) to have the same length."); + } + + if (!File.Exists(InputFile)) + { + throw new FileNotFoundException($"Expected file {InputFile} was not found."); + } + + string inputFileText = File.ReadAllText(InputFile); + string outputFileText = ReplacePatterns(inputFileText); + + WriteOutputFile(outputFileText); + + return true; + } + + public string ReplacePatterns(string inputFileText) + { + var outText = inputFileText; + + foreach (var replacementItem in ReplacementItems) + { + var replacementPattern = replacementItem.ItemSpec; + var replacementString = replacementItem.GetMetadata("ReplacementString"); + + outText = outText.Replace(replacementPattern, replacementString); + } + + for (int i=0; i + + + + + + TargetGroup=net45 + + + + \ No newline at end of file diff --git a/tools-local/tasks/core-setup.tasks.csproj b/tools-local/tasks/core-setup.tasks.csproj new file mode 100644 index 00000000..3c790f9c --- /dev/null +++ b/tools-local/tasks/core-setup.tasks.csproj @@ -0,0 +1,47 @@ + + + + + Library + .NETStandard,Version=v1.5 + .NETFramework,Version=v4.5 + false + {360F25FA-3CD9-4338-B961-A4F3122B88B2} + $(LocalToolRuntimePath) + $(IntermediateOutputPath)\net45 + $(LocalToolRuntimePath)\net46 + + <_TargetFrameworkDirectories>$(MSBuildThisFileDirectory)/Documentation + <_FullFrameworkReferenceAssemblyPaths>$(MSBuildThisFileDirectory)/Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + {b507bed2-0a28-456a-99c6-ad7aa148e35f} + Microsoft.DotNet.Build.Tasks.Local + + + + \ No newline at end of file diff --git a/tools-local/tasks/core-setup.tasks.sln b/tools-local/tasks/core-setup.tasks.sln new file mode 100644 index 00000000..b3c81fd0 --- /dev/null +++ b/tools-local/tasks/core-setup.tasks.sln @@ -0,0 +1,28 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 14 +VisualStudioVersion = 14.0.25420.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "core-setup.tasks", "core-setup.tasks.csproj", "{360F25FA-3CD9-4338-B961-A4F3122B88B2}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.DotNet.Build.Tasks.Local", "..\Microsoft.DotNet.Build.Tasks.Local\Microsoft.DotNet.Build.Tasks.Local.csproj", "{B507BED2-0A28-456A-99C6-AD7AA148E35F}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + net45_Debug|Any CPU = net45_Debug|Any CPU + netstandard1.5_Debug|Any CPU = netstandard1.5_Debug|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {360F25FA-3CD9-4338-B961-A4F3122B88B2}.net45_Debug|Any CPU.ActiveCfg = net45_Debug|Any CPU + {360F25FA-3CD9-4338-B961-A4F3122B88B2}.net45_Debug|Any CPU.Build.0 = net45_Debug|Any CPU + {360F25FA-3CD9-4338-B961-A4F3122B88B2}.netstandard1.5_Debug|Any CPU.ActiveCfg = netstandard1.5_Debug|Any CPU + {360F25FA-3CD9-4338-B961-A4F3122B88B2}.netstandard1.5_Debug|Any CPU.Build.0 = netstandard1.5_Debug|Any CPU + {B507BED2-0A28-456A-99C6-AD7AA148E35F}.net45_Debug|Any CPU.ActiveCfg = net45_Debug|Any CPU + {B507BED2-0A28-456A-99C6-AD7AA148E35F}.net45_Debug|Any CPU.Build.0 = net45_Debug|Any CPU + {B507BED2-0A28-456A-99C6-AD7AA148E35F}.netstandard1.5_Debug|Any CPU.ActiveCfg = netstandard1.5_Debug|Any CPU + {B507BED2-0A28-456A-99C6-AD7AA148E35F}.netstandard1.5_Debug|Any CPU.Build.0 = netstandard1.5_Debug|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/pkg/tasks/FileUtilities.net45.cs b/tools-local/tasks/net45/FileUtilities.net45.cs similarity index 100% rename from pkg/tasks/FileUtilities.net45.cs rename to tools-local/tasks/net45/FileUtilities.net45.cs diff --git a/pkg/tasks/FileUtilities.netstandard.cs b/tools-local/tasks/netstandard/FileUtilities.netstandard.cs similarity index 100% rename from pkg/tasks/FileUtilities.netstandard.cs rename to tools-local/tasks/netstandard/FileUtilities.netstandard.cs diff --git a/pkg/tasks/project.json b/tools-local/tasks/project.json similarity index 90% rename from pkg/tasks/project.json rename to tools-local/tasks/project.json index ab8f89aa..a6f81255 100644 --- a/pkg/tasks/project.json +++ b/tools-local/tasks/project.json @@ -1,6 +1,7 @@ { "dependencies": { - "System.Reflection.Metadata": "1.3.0" + "System.Reflection.Metadata": "1.3.0", + "Newtonsoft.Json": "9.0.1" }, "frameworks": { "netstandard1.5": { diff --git a/tools-override/Roslyn.Common.props b/tools-override/Roslyn.Common.props new file mode 100644 index 00000000..392ff343 --- /dev/null +++ b/tools-override/Roslyn.Common.props @@ -0,0 +1,25 @@ + + + + 2.0.0-rc + Microsoft.Net.Compilers + $(ToolRuntimePath) + + + + $(BuildToolsTaskDir)/roslyn/build/Microsoft.Net.Compilers.props + + + + + $(PackagesDir)/$(RoslynPackageName).$(RoslynVersion)/ + $(RoslynPackageDir)build/$(RoslynPackageName).props + + + Portable + + \ No newline at end of file diff --git a/tools-override/crossgen.sh b/tools-override/crossgen.sh new file mode 100755 index 00000000..880c43a6 --- /dev/null +++ b/tools-override/crossgen.sh @@ -0,0 +1,90 @@ +#!/usr/bin/env bash + +# Restores crossgen and runs it on all tools components. + +__CoreClrVersion=1.1.0 + +usage() +{ + echo "crossgen.sh " + echo " Restores crossgen and runs it on all assemblies in ." + exit 0 +} + +restore_crossgen() +{ + __crossgen=$__sharedFxDir/crossgen + if [ -e $__crossgen ]; then + return + fi + + __pjDir=$__toolsDir/crossgen + mkdir -p $__pjDir + echo "{\"frameworks\":{\"netcoreapp1.1\":{\"dependencies\":{\"Microsoft.NETCore.Runtime.CoreCLR\":\"$__CoreClrVersion\", \"Microsoft.NETCore.Platforms\": \"$__CoreClrVersion\"}}},\"runtimes\":{\"$__rid\":{}}}" > "$__pjDir/project.json" + $__dotnet restore $__pjDir/project.json --packages $__packagesDir + __crossgenInPackage=$__packagesDir/runtime.$__packageRid.Microsoft.NETCore.Runtime.CoreCLR/$__CoreClrVersion/tools/crossgen + if [ ! -e $__crossgenInPackage ]; then + echo "The crossgen executable could not be found at "$__crossgenInPackage". Aborting crossgen.sh." + exit 1 + fi + cp $__crossgenInPackage $__sharedFxDir + __crossgen=$__sharedFxDir/crossgen +} + +crossgen_everything() +{ + echo "Running crossgen on all assemblies in $__targetDir." + for file in $__targetDir/*.{dll,exe} + do + if [ $(basename $file) != "Microsoft.Build.Framework.dll" ]; then + crossgen_single $file & pid=$! + __pids+=" $pid" + fi + done + + trap "kill $__pids 2&> /dev/null" SIGINT + wait $__pids + echo "Crossgen finished." +} + +crossgen_single() +{ + __file=$1 + $__crossgen /Platform_Assemblies_Paths $__toolsDir:$__sharedFxDir /nologo /MissingDependenciesOK $__file > /dev/null + if [ $? -eq 0 ]; then + __outname="${__file/.dll/.ni.dll}" + __outname="${__outname/.exe/.ni.exe}" + echo "$__file -> $__outname" + else + echo "Unable to successfully compile $__file" + fi +} + +if [ ! -z $BUILDTOOLS_SKIP_CROSSGEN ]; then + echo "BUILDTOOLS_SKIP_CROSSGEN is set. Skipping crossgen step." + exit 0 +fi + +if [[ -z "$1" || "$1" == "-?" || "$1" == "--help" || "$1" == "-h" ]]; then + usage +fi + +__targetDir=$1 +__scriptpath=$(cd "$(dirname "$0")"; pwd -P) +__toolsDir=$__scriptpath/../Tools +__dotnet=$__toolsDir/dotnetcli/dotnet +__packagesDir=$__scriptpath/../packages +__sharedFxDir=$__toolsDir/dotnetcli/shared/Microsoft.NETCore.App/$__CoreClrVersion/ +__rid=$($__dotnet --info | sed -n -e 's/^.*RID:[[:space:]]*//p') + +if [[ $__rid == *"osx"* ]]; then + __packageRid="osx.10.10-x64" +elif [[ $__rid == *"rhel.7"* || $__rid == *"centos.7"* ]]; then + __packageRid="rhel.7-x64" +else + __packageRid=$__rid +fi + +restore_crossgen +crossgen_everything +exit 0 From a2ad2fa31fbbb08c857666b674164cad9c1f5ab0 Mon Sep 17 00:00:00 2001 From: chcosta Date: Wed, 26 Apr 2017 18:11:23 -0700 Subject: [PATCH 229/625] Ci validate (#2203) * Validate CI * Undo temporary netci.groovy changes used for validation --- Documentation/dummy.txt | 2 +- netci.groovy | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/Documentation/dummy.txt b/Documentation/dummy.txt index d5bfe986..9fcd8a12 100644 --- a/Documentation/dummy.txt +++ b/Documentation/dummy.txt @@ -1 +1 @@ -4/21/2017 08:12:00 PM +4/26/2017 06:04:00 PM diff --git a/netci.groovy b/netci.groovy index d7c3a14a..621c7136 100644 --- a/netci.groovy +++ b/netci.groovy @@ -93,7 +93,7 @@ platformList.each { platform -> Utilities.addGithubPRTriggerForBranch(newJob, branch, "${contextString} Build", "(?i).*test\\W+${contextString}.*", true /* trigger on comment phrase only */) } else { - Utilities.addGithubPRTriggerForBranch(newJob, branch, "${osForGHTrigger} ${architecture} ${configuration} Build", "(?i).*test buildtools please.*") + Utilities.addGithubPRTriggerForBranch(newJob, branch, "${osForGHTrigger} ${architecture} ${configuration} Build") } ArchivalSettings settings = new ArchivalSettings(); @@ -103,8 +103,6 @@ platformList.each { platform -> settings.setFailIfNothingArchived() Utilities.addArchival(newJob, settings) - - newJob.with { disabled(false) } } // ************************** From bb86f19f12cf6f8e9b6734a375ae82f828b1aebf Mon Sep 17 00:00:00 2001 From: chcosta Date: Thu, 27 Apr 2017 10:33:07 -0700 Subject: [PATCH 230/625] Fix bad merge (#2211) --- publish/dir.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/publish/dir.props b/publish/dir.props index 9d74b389..dcd6b081 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -40,4 +40,4 @@ - \ No newline at end of file + \ No newline at end of file From 69be3886f976d624d3c968535f5e37b0f98e7560 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Thu, 27 Apr 2017 12:21:26 -0700 Subject: [PATCH 231/625] try to delete long filenames during cleanup --- buildpipeline/Core-Setup-Windows-BT.json | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index d1c5f6d1..3bd975e9 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -15,8 +15,8 @@ "scriptType": "inlineScript", "scriptName": "", "arguments": "-path $(PB_SourcesDirectory)", - "inlineScript": "param($path)\n\nif (Test-Path $path){\n # this will print out an error each time a file can't be deleted.\n Remove-Item -Recurse -Force $path\n }", "workingFolder": "", + "inlineScript": "param($path)\n\nif (Test-Path $path){\n $files = cmd /c dir $path /s /b /-c /a:h /a:-d\n ForEach($file in $files) {\n # work around 260 character file name length limit\n $deleteName = \"$(PB_SourcesDirectory)/delete.me\"\n Rename-Item -Path $file -NewName $deleteName\n Remove-Item -Force $deleteName\n }\n # this will print out an error each time a file can't be deleted.\n\n Remove-Item -Recurse -Force $path\n }", "failOnStandardError": "true" } }, @@ -326,7 +326,9 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "0" + "cleanOptions": "0", + "labelSourcesFormat": "$(build.buildNumber)", + "checkoutNestedSubmodules": "false" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -336,6 +338,7 @@ "clean": "false", "checkoutSubmodules": false }, + "processParameters": {}, "quality": "definition", "queue": { "id": 36, @@ -347,6 +350,7 @@ }, "id": 4371, "name": "Core-Setup-Windows-BT", + "url": "https://devdiv.visualstudio.com/DefaultCollection/0bdbc590-a062-4c3f-b0f6-9383f67865ee/_apis/build/Definitions/6257", "path": "\\", "type": "build", "project": { From 027c5a73a046e38fabdf6db53fa56e8262e0ef57 Mon Sep 17 00:00:00 2001 From: chcosta Date: Thu, 27 Apr 2017 12:22:51 -0700 Subject: [PATCH 232/625] try to delete long filenames during cleanup (#2212) --- buildpipeline/Core-Setup-Windows-BT.json | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index d1c5f6d1..3bd975e9 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -15,8 +15,8 @@ "scriptType": "inlineScript", "scriptName": "", "arguments": "-path $(PB_SourcesDirectory)", - "inlineScript": "param($path)\n\nif (Test-Path $path){\n # this will print out an error each time a file can't be deleted.\n Remove-Item -Recurse -Force $path\n }", "workingFolder": "", + "inlineScript": "param($path)\n\nif (Test-Path $path){\n $files = cmd /c dir $path /s /b /-c /a:h /a:-d\n ForEach($file in $files) {\n # work around 260 character file name length limit\n $deleteName = \"$(PB_SourcesDirectory)/delete.me\"\n Rename-Item -Path $file -NewName $deleteName\n Remove-Item -Force $deleteName\n }\n # this will print out an error each time a file can't be deleted.\n\n Remove-Item -Recurse -Force $path\n }", "failOnStandardError": "true" } }, @@ -326,7 +326,9 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "0" + "cleanOptions": "0", + "labelSourcesFormat": "$(build.buildNumber)", + "checkoutNestedSubmodules": "false" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -336,6 +338,7 @@ "clean": "false", "checkoutSubmodules": false }, + "processParameters": {}, "quality": "definition", "queue": { "id": 36, @@ -347,6 +350,7 @@ }, "id": 4371, "name": "Core-Setup-Windows-BT", + "url": "https://devdiv.visualstudio.com/DefaultCollection/0bdbc590-a062-4c3f-b0f6-9383f67865ee/_apis/build/Definitions/6257", "path": "\\", "type": "build", "project": { From 984bca060ed8506de9d8b61acb7727f62c9c9062 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Thu, 27 Apr 2017 13:23:33 -0700 Subject: [PATCH 233/625] Use robocopy to purge long path names --- buildpipeline/Core-Setup-Windows-BT.json | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 3bd975e9..ec915143 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -15,8 +15,8 @@ "scriptType": "inlineScript", "scriptName": "", "arguments": "-path $(PB_SourcesDirectory)", + "inlineScript": "param($path)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$(PB_SourcesDirectory)\\deleteme\"\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "workingFolder": "", - "inlineScript": "param($path)\n\nif (Test-Path $path){\n $files = cmd /c dir $path /s /b /-c /a:h /a:-d\n ForEach($file in $files) {\n # work around 260 character file name length limit\n $deleteName = \"$(PB_SourcesDirectory)/delete.me\"\n Rename-Item -Path $file -NewName $deleteName\n Remove-Item -Force $deleteName\n }\n # this will print out an error each time a file can't be deleted.\n\n Remove-Item -Recurse -Force $path\n }", "failOnStandardError": "true" } }, @@ -326,9 +326,7 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "0", - "labelSourcesFormat": "$(build.buildNumber)", - "checkoutNestedSubmodules": "false" + "cleanOptions": "0" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -350,7 +348,6 @@ }, "id": 4371, "name": "Core-Setup-Windows-BT", - "url": "https://devdiv.visualstudio.com/DefaultCollection/0bdbc590-a062-4c3f-b0f6-9383f67865ee/_apis/build/Definitions/6257", "path": "\\", "type": "build", "project": { From 7d3a1069d93827e7aa33cdbed68bc2e7f59a820e Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Thu, 27 Apr 2017 13:32:26 -0700 Subject: [PATCH 234/625] Use robocopy to purge long names in both windows build definitions --- buildpipeline/Core-Setup-Signing-Windows-BT.json | 7 +++---- buildpipeline/Core-Setup-Windows-BT.json | 4 ++-- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index ecd6b238..9d102f34 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -14,8 +14,8 @@ "inputs": { "scriptType": "inlineScript", "scriptName": "", - "arguments": "-path $(PB_SourcesDirectory)", - "inlineScript": "param($path)\n\nif (Test-Path $path){\n # this will print out an error each time a file can't be deleted.\n Remove-Item -Recurse -Force $path\n }", + "arguments": "-path $(PB_SourcesDirectory) -rootPath $(Build.SourcesDirectory)", + "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "workingFolder": "", "failOnStandardError": "true" } @@ -556,7 +556,7 @@ { "enabled": true, "continueOnError": true, - "alwaysRun": true, + "alwaysRun": false, "displayName": "Copy Publish Artifact: Build Logs", "timeoutInMinutes": 0, "task": { @@ -770,7 +770,6 @@ }, "id": 6102, "name": "Core-Setup-Signing-Windows-BT", - "url": "https://devdiv.visualstudio.com/DefaultCollection/0bdbc590-a062-4c3f-b0f6-9383f67865ee/_apis/build/Definitions/6102", "path": "\\", "type": "build", "project": { diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index ec915143..11125b16 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -14,8 +14,8 @@ "inputs": { "scriptType": "inlineScript", "scriptName": "", - "arguments": "-path $(PB_SourcesDirectory)", - "inlineScript": "param($path)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$(PB_SourcesDirectory)\\deleteme\"\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", + "arguments": "-path $(PB_SourcesDirectory) -rootPath $(Build.SourcesDirectory)", + "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "workingFolder": "", "failOnStandardError": "true" } From 2f85b908f1a83a619ef679836b765c8143dc601a Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Thu, 27 Apr 2017 13:46:58 -0700 Subject: [PATCH 235/625] Change default container name to dotnet --- publish/dir.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/publish/dir.props b/publish/dir.props index dcd6b081..1c0fcaf2 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -3,7 +3,7 @@ - dotnetcli + dotnet 3600 From 3bc2694a81d2ba931f473e84854c8ca216fac542 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Thu, 27 Apr 2017 14:16:28 -0700 Subject: [PATCH 236/625] Remove arm builds from official builds --- buildpipeline/pipeline.json | 29 +---------------------------- 1 file changed, 1 insertion(+), 28 deletions(-) diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 0c8d31e0..0e47cc37 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -116,34 +116,7 @@ "Type": "build/product/", "Platform": "x86" } - }, - { - "Name": "Core-Setup-Windows-BT", - "Parameters": { - "PB_AdditionalBuildArguments": "-portable", - "PB_TargetArchitecture": "arm" - }, - "ReportingParameters": { - "OperatingSystem": "Windows", - "SubType": "PortableBuild", - "Type": "build/product/", - "Platform": "arm" - } - }, - { - "Name": "Core-Setup-Windows-BT", - "Parameters": { - "PB_AdditionalBuildArguments": "-portable", - "PB_TargetArchitecture": "arm64", - "PB_PortableBuild": "-portable" - }, - "ReportingParameters": { - "OperatingSystem": "Windows", - "SubType": "PortableBuild", - "Type": "build/product/", - "Platform": "arm64" - } - } + } ] } ] From 3a752354a2a4d25d5678ce62634374b78afef9cc Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Thu, 27 Apr 2017 15:30:11 -0700 Subject: [PATCH 237/625] Move filtering into the rest api call --- .../GetAzureBlobList.cs | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs index be0b0898..93b99f1a 100644 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs @@ -56,6 +56,9 @@ namespace Microsoft.DotNet.Build.Tasks // This code is duplicated in BuildTools task DownloadFromAzure, and that code should be refactored to permit blob listing. public async Task ExecuteAsync() { + Console.WriteLine("Attach"); + Console.ReadLine(); + ParseConnectionString(); if (Log.HasLoggedErrors) @@ -65,7 +68,10 @@ namespace Microsoft.DotNet.Build.Tasks List blobsNames = new List(); string urlListBlobs = string.Format("https://{0}.blob.core.windows.net/{1}?restype=container&comp=list", AccountName, ContainerName); - + if (!string.IsNullOrWhiteSpace(FilterBlobNames)) + { + urlListBlobs += $"&prefix={FilterBlobNames}"; + } Log.LogMessage(MessageImportance.Low, "Sending request to list blobsNames for container '{0}'.", ContainerName); using (HttpClient client = new HttpClient()) @@ -104,14 +110,7 @@ namespace Microsoft.DotNet.Build.Tasks nextMarker = responseFile.GetElementsByTagName("NextMarker").Cast().FirstOrDefault()?.InnerText; } } - if (!string.IsNullOrWhiteSpace(FilterBlobNames)) - { - BlobNames = blobsNames.Where(b => b.StartsWith(FilterBlobNames)).ToArray(); - } - else - { - BlobNames = blobsNames.ToArray(); - } + BlobNames = blobsNames.ToArray(); } catch (Exception e) { From b65008ed8af8a2bc3c680311926959940a84ad3b Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Thu, 27 Apr 2017 16:08:47 -0700 Subject: [PATCH 238/625] Fix msbuild versions, fix cleanup script --- buildpipeline/Core-Setup-OSX-BT.json | 11 +++++-- .../Core-Setup-Signing-Windows-BT.json | 30 +++++++++---------- buildpipeline/Core-Setup-Windows-BT.json | 14 ++++----- 3 files changed, 30 insertions(+), 25 deletions(-) diff --git a/buildpipeline/Core-Setup-OSX-BT.json b/buildpipeline/Core-Setup-OSX-BT.json index def93e1f..bfc3c73d 100644 --- a/buildpipeline/Core-Setup-OSX-BT.json +++ b/buildpipeline/Core-Setup-OSX-BT.json @@ -103,7 +103,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)/build.sh", - "arguments": "-OfficialBuildId=$(OfficialBuildId) $(PB_BuildArguments)", + "arguments": "-OfficialBuildId=$(OfficialBuildId) $(PB_BuildArguments) /p:TargetRid=$(PB_TargetRid)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -121,7 +121,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)/Tools/msbuild.sh", - "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration)", + "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetRid=$(PB_TargetRid)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -247,6 +247,12 @@ }, "OfficialBuildId": { "value": "$(Build.BuildNumber)" + }, + "PB_TargetArchitecture": { + "value": "x64" + }, + "PB_TargetRid": { + "value": "osx.10.12-$(PB_TargetArchitecture)" } }, "demands": [ @@ -301,7 +307,6 @@ }, "id": 6192, "name": "Core-Setup-OSX-BT", - "url": "https://devdiv.visualstudio.com/DefaultCollection/0bdbc590-a062-4c3f-b0f6-9383f67865ee/_apis/build/Definitions/6192", "path": "\\", "type": "build", "project": { diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index 9d102f34..deba6819 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -15,7 +15,7 @@ "scriptType": "inlineScript", "scriptName": "", "arguments": "-path $(PB_SourcesDirectory) -rootPath $(Build.SourcesDirectory)", - "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", + "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $path $DeleteFolder /purge\n Remove-Item -Recurse -Force $path\n }\n }", "workingFolder": "", "failOnStandardError": "true" } @@ -151,8 +151,8 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "x86", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", "msbuildLocation": "" } }, @@ -178,7 +178,7 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", + "msbuildVersion": "latest", "msbuildArchitecture": "x64", "msbuildLocation": "" } @@ -205,7 +205,7 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", + "msbuildVersion": "latest", "msbuildArchitecture": "x86", "msbuildLocation": "" } @@ -232,7 +232,7 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", + "msbuildVersion": "latest", "msbuildArchitecture": "x86", "msbuildLocation": "" } @@ -278,7 +278,7 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", + "msbuildVersion": "latest", "msbuildArchitecture": "x64", "msbuildLocation": "" } @@ -305,7 +305,7 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", + "msbuildVersion": "latest", "msbuildArchitecture": "x64", "msbuildLocation": "" } @@ -332,8 +332,8 @@ "logProjectEvents": "false", "createLogFile": "true", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "x86", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", "msbuildLocation": "" } }, @@ -359,8 +359,8 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "x86", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", "msbuildLocation": "" } }, @@ -405,7 +405,7 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", + "msbuildVersion": "latest", "msbuildArchitecture": "x64", "msbuildLocation": "" } @@ -516,8 +516,8 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "x86", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", "msbuildLocation": "" } }, diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 11125b16..68835e8e 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -15,7 +15,7 @@ "scriptType": "inlineScript", "scriptName": "", "arguments": "-path $(PB_SourcesDirectory) -rootPath $(Build.SourcesDirectory)", - "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", + "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $path $DeleteFolder /purge\n Remove-Item -Recurse -Force $path\n }\n }", "workingFolder": "", "failOnStandardError": "true" } @@ -96,8 +96,8 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "x86", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", "msbuildLocation": "" } }, @@ -141,8 +141,8 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "x86", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", "msbuildLocation": "" } }, @@ -168,8 +168,8 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "x86", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", "msbuildLocation": "" } } From fc6866648211d5344005acd61218076764e4b998 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Thu, 27 Apr 2017 16:32:50 -0700 Subject: [PATCH 239/625] Remove attach break --- .../Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs | 3 --- 1 file changed, 3 deletions(-) diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs index 93b99f1a..2b3dd14e 100644 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs @@ -56,9 +56,6 @@ namespace Microsoft.DotNet.Build.Tasks // This code is duplicated in BuildTools task DownloadFromAzure, and that code should be refactored to permit blob listing. public async Task ExecuteAsync() { - Console.WriteLine("Attach"); - Console.ReadLine(); - ParseConnectionString(); if (Log.HasLoggedErrors) From 7ba75503df93fcecb31365ca3a2f9a48864b4304 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Thu, 27 Apr 2017 16:38:32 -0700 Subject: [PATCH 240/625] Fix robocopy purge --- buildpipeline/Core-Setup-Signing-Windows-BT.json | 2 +- buildpipeline/Core-Setup-Windows-BT.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index deba6819..c6b550e9 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -15,7 +15,7 @@ "scriptType": "inlineScript", "scriptName": "", "arguments": "-path $(PB_SourcesDirectory) -rootPath $(Build.SourcesDirectory)", - "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $path $DeleteFolder /purge\n Remove-Item -Recurse -Force $path\n }\n }", + "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "workingFolder": "", "failOnStandardError": "true" } diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 68835e8e..b263ea21 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -15,7 +15,7 @@ "scriptType": "inlineScript", "scriptName": "", "arguments": "-path $(PB_SourcesDirectory) -rootPath $(Build.SourcesDirectory)", - "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $path $DeleteFolder /purge\n Remove-Item -Recurse -Force $path\n }\n }", + "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "workingFolder": "", "failOnStandardError": "true" } From be032d1945efed035daec8b88fa279f07e94cfd5 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 28 Apr 2017 09:41:18 -0700 Subject: [PATCH 241/625] portable build changes --- buildpipeline/Core-Setup-Linux-BT.json | 12 +++++++--- buildpipeline/Core-Setup-OSX-BT.json | 10 +++++++-- .../Core-Setup-Signing-Windows-BT.json | 4 ++-- buildpipeline/pipeline.json | 22 ++++++++++++++++--- 4 files changed, 38 insertions(+), 10 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 0cea0044..92aa366f 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -177,7 +177,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration)", + "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -287,7 +287,7 @@ "allowOverride": true }, "PB_BuildArguments": { - "value": "--skip-prereqs --configuration $(BuildConfiguration)", + "value": "--skip-prereqs --configuration $(BuildConfiguration) $(PB_PortableBuildArg)", "allowOverride": true }, "CONNECTION_STRING": { @@ -378,6 +378,12 @@ }, "PB_TargetArchitecture": { "value": "x64" + }, + "PB_PortableBuildArg": { + "value": "" + }, + "PB_PortableBuild": { + "value": "false" } }, "demands": [ @@ -441,6 +447,6 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097642 + "revision": 418097676 } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-OSX-BT.json b/buildpipeline/Core-Setup-OSX-BT.json index bfc3c73d..6afe41d0 100644 --- a/buildpipeline/Core-Setup-OSX-BT.json +++ b/buildpipeline/Core-Setup-OSX-BT.json @@ -121,7 +121,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)/Tools/msbuild.sh", - "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetRid=$(PB_TargetRid)", + "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetRid=$(PB_TargetRid) /p:PortableBuild=$(PB_PortableBuild)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -194,7 +194,7 @@ "allowOverride": true }, "PB_BuildArguments": { - "value": "--skip-prereqs --configuration $(BuildConfiguration) --targets Default", + "value": "--skip-prereqs --configuration $(BuildConfiguration) $(PB_PortableBuildArg)", "allowOverride": true }, "CONNECTION_STRING": { @@ -253,6 +253,12 @@ }, "PB_TargetRid": { "value": "osx.10.12-$(PB_TargetArchitecture)" + }, + "PB_PortableBuildArg": { + "value": "-portable" + }, + "PB_PortableBuild": { + "value": "true" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index c6b550e9..6b8823df 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -672,7 +672,7 @@ "value": "false" }, "PB_PortableBuild": { - "value": "", + "value": "false", "allowOverride": true }, "NUGET_SYMBOLS_FEED_URL": { @@ -708,7 +708,7 @@ "value": "real" }, "PB_CommonMSBuildArgs": { - "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture)" + "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild)" }, "OfficialBuildId": { "value": "$(Build.BuildNumber)" diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 0e47cc37..62ce6a4c 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -77,10 +77,26 @@ "Platform": "x64" } }, + { + "Name": "Core-Setup-Linux-BT", + "Parameters": { + "PB_DistroRid": "rhel.7.2-x64", + "PB_DockerTag": "rhel7_prereqs_2", + "PB_PortableBuildArg": "-portable", + "PB_PortableBuild": "true" + }, + "ReportingParameters": { + "SubType": "PortableBuild", + "OperatingSystem": "RedHat 7", + "Type": "build/product/", + "Platform": "x64" + } + }, { "Name": "Core-Setup-OSX-BT", "Parameters": { - "PB_PortableBuild": "-portable" + "PB_PortableBuildArg": "-portable", + "PB_PortableBuild": "true" }, "ReportingParameters": { "SubType": "PortableBuild", @@ -94,7 +110,7 @@ "Parameters": { "PB_DistroRid": "win7-x64", "PB_TargetArchitecture": "x64", - "PB_PortableBuild": "-portable" + "PB_PortableBuild": "true" }, "ReportingParameters": { "OperatingSystem": "Windows", @@ -108,7 +124,7 @@ "Parameters": { "PB_DistroRid": "win7-x86", "PB_TargetArchitecture": "x86", - "PB_PortableBuild": "-portable" + "PB_PortableBuild": "true" }, "ReportingParameters": { "OperatingSystem": "Windows", From 411ed032d5e10d59fd6eb7b7d26c4c24b8764954 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 28 Apr 2017 10:15:46 -0700 Subject: [PATCH 242/625] pass osgroup to publish step --- buildpipeline/Core-Setup-Linux-BT.json | 2 +- buildpipeline/Core-Setup-OSX-BT.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 92aa366f..e1997de0 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -177,7 +177,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild)", + "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } diff --git a/buildpipeline/Core-Setup-OSX-BT.json b/buildpipeline/Core-Setup-OSX-BT.json index 6afe41d0..337cd7ca 100644 --- a/buildpipeline/Core-Setup-OSX-BT.json +++ b/buildpipeline/Core-Setup-OSX-BT.json @@ -121,7 +121,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)/Tools/msbuild.sh", - "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetRid=$(PB_TargetRid) /p:PortableBuild=$(PB_PortableBuild)", + "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetRid=$(PB_TargetRid) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=OSX", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } From 571fdf07301ed6367890fac3812cd87c0998c8d3 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 28 Apr 2017 10:55:36 -0700 Subject: [PATCH 243/625] Don't explicitly specify targetrid, prevents portablerid override --- buildpipeline/Core-Setup-OSX-BT.json | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/buildpipeline/Core-Setup-OSX-BT.json b/buildpipeline/Core-Setup-OSX-BT.json index 337cd7ca..5b7a2ec5 100644 --- a/buildpipeline/Core-Setup-OSX-BT.json +++ b/buildpipeline/Core-Setup-OSX-BT.json @@ -103,7 +103,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)/build.sh", - "arguments": "-OfficialBuildId=$(OfficialBuildId) $(PB_BuildArguments) /p:TargetRid=$(PB_TargetRid)", + "arguments": "-OfficialBuildId=$(OfficialBuildId) $(PB_BuildArguments)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -121,7 +121,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)/Tools/msbuild.sh", - "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetRid=$(PB_TargetRid) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=OSX", + "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=OSX", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -251,9 +251,6 @@ "PB_TargetArchitecture": { "value": "x64" }, - "PB_TargetRid": { - "value": "osx.10.12-$(PB_TargetArchitecture)" - }, "PB_PortableBuildArg": { "value": "-portable" }, From 44ae86c34f23ebd8c0cd0a4dc08be9ee173f7e9f Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 28 Apr 2017 13:40:10 -0700 Subject: [PATCH 244/625] produce symbols packages / zips / tarballs, and publish to azure --- dir.props | 1 + publish/dir.props | 1 + src/managed/dir.proj | 9 +++++++++ src/pkg/packaging/dir.proj | 7 +++++++ src/pkg/packaging/dir.props | 1 + 5 files changed, 19 insertions(+) diff --git a/dir.props b/dir.props index 33398c3c..2c55a374 100644 --- a/dir.props +++ b/dir.props @@ -273,6 +273,7 @@ $(PackagesBasePath)symbols/ $(IntermediateOutputRootPath)sharedFrameworkPublish\ + $(IntermediateOutputRootPath)sharedFrameworkPublish.symbols\ $(SharedFrameworkPublishDir)shared\$(SharedFrameworkName)\$(HostVersion) diff --git a/publish/dir.props b/publish/dir.props index 1c0fcaf2..4fd88334 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -13,6 +13,7 @@ + diff --git a/src/managed/dir.proj b/src/managed/dir.proj index 1a166dbd..b7e66721 100644 --- a/src/managed/dir.proj +++ b/src/managed/dir.proj @@ -84,6 +84,15 @@ + + + + + + + + + + @(CombinedCompressedFileSet->'%(Identity)', ' ') @(HostFxrCompressedFileSet->'%(Identity)', ' ') @(SharedFrameworkCompressedFileSet->'%(Identity)', ' ') + @(SharedFrameworkSymbolsCompressedFileSet->'%(Identity)', ' ') + diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index 851c5cbf..0b508b5e 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -20,6 +20,7 @@ dotnet-$(ProductMoniker)$(CompressedFileExtension) dotnet-hostfxr-$(ProductMoniker)$(CompressedFileExtension) dotnet-sharedframework-$(ProductMoniker)$(CompressedFileExtension) + dotnet-sharedframework-symbols-$(ProductMoniker)$(CompressedFileExtension) From b8c3cb9d2a63c87b9cf80587d359e7367a734fa4 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 28 Apr 2017 13:54:33 -0700 Subject: [PATCH 245/625] Fix symbols path for creating symbols tarball --- src/pkg/packaging/dir.proj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 9a04e09d..b79d0a7d 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -121,7 +121,7 @@ - + @(CombinedCompressedFileSet->'%(Identity)', ' ') From 7992a6f344f2c2e4b5a25853e9f8d8c34e1a242c Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Fri, 28 Apr 2017 18:02:55 -0500 Subject: [PATCH 246/625] Convert dotnet-deb-tool to use csproj and netcoreapp2.0. Since this is the first .NET Core SDK .csproj being used, we need to install a new version of the CLI that supports MSBuild. These two CLI versions will live side-by-side until the whole repo is off project.json. I also fixed a few dotnet-deb-tool issues. --- DotnetCLISdkVersion.txt | 1 + dir.props | 3 ++ init-tools.cmd | 25 ++++++++++++-- init-tools.sh | 24 +++++++++++++- .../deb/dotnet-deb-tool-consumer.csproj | 8 +++++ src/pkg/packaging/deb/package.props | 4 +-- src/pkg/packaging/deb/package.targets | 29 ++++++---------- .../dotnet-deb-tool/dotnet-deb-tool.csproj | 25 ++++++++++++++ .../dotnet-deb-tool/dotnet-deb-tool.xproj | 18 ---------- .../setuptools/dotnet-deb-tool/project.json | 33 ------------------- 10 files changed, 94 insertions(+), 76 deletions(-) create mode 100644 DotnetCLISdkVersion.txt create mode 100644 src/pkg/packaging/deb/dotnet-deb-tool-consumer.csproj create mode 100644 tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.csproj delete mode 100644 tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.xproj delete mode 100644 tools-local/setuptools/dotnet-deb-tool/project.json diff --git a/DotnetCLISdkVersion.txt b/DotnetCLISdkVersion.txt new file mode 100644 index 00000000..ddee3053 --- /dev/null +++ b/DotnetCLISdkVersion.txt @@ -0,0 +1 @@ +2.0.0-preview1-005899 \ No newline at end of file diff --git a/dir.props b/dir.props index 33398c3c..24444aae 100644 --- a/dir.props +++ b/dir.props @@ -53,6 +53,7 @@ $(LocalToolRuntimePath)net46/ $(BuildToolsTaskDir) $(ToolsDir)dotnetcli/ + $(ToolsDir)dotnetclisdk/ @@ -137,6 +138,8 @@ $(DotnetCliPath)dotnet.exe $(DotnetCliPath)dotnet + $(DotnetSdkPath)dotnet.exe + $(DotnetSdkPath)dotnet $(DotnetToolCommand) @(DnuSourceList -> '--source %(Identity)', ' ') diff --git a/init-tools.cmd b/init-tools.cmd index eac835f3..003a1605 100644 --- a/init-tools.cmd +++ b/init-tools.cmd @@ -6,6 +6,8 @@ if [%PACKAGES_DIR%]==[] set PACKAGES_DIR=%~dp0packages\ if [%TOOLRUNTIME_DIR%]==[] set TOOLRUNTIME_DIR=%~dp0Tools set DOTNET_PATH=%TOOLRUNTIME_DIR%\dotnetcli\ if [%DOTNET_CMD%]==[] set DOTNET_CMD=%DOTNET_PATH%dotnet.exe +set DOTNET_SDK_PATH=%TOOLRUNTIME_DIR%\dotnetclisdk\ +if [%DOTNET_SDK_CMD%]==[] set DOTNET_SDK_CMD=%DOTNET_SDK_PATH%dotnet.exe if [%BUILDTOOLS_SOURCE%]==[] set BUILDTOOLS_SOURCE=https://dotnet.myget.org/F/dotnet-buildtools/api/v3/index.json set /P BUILDTOOLS_VERSION=< "%~dp0BuildToolsVersion.txt" set BUILD_TOOLS_PATH=%PACKAGES_DIR%Microsoft.DotNet.BuildTools\%BUILDTOOLS_VERSION%\lib\ @@ -33,7 +35,7 @@ echo %PROJECT_JSON_CONTENTS% > "%PROJECT_JSON_FILE%" echo Running %0 > "%INIT_TOOLS_LOG%" set /p DOTNET_VERSION=< "%~dp0DotnetCLIVersion.txt" -if exist "%DOTNET_CMD%" goto :afterdotnetrestore +if exist "%DOTNET_CMD%" goto :afterdotnetinstall :: core-setup repo has a global.json which causes a conflict with the init-tools publish step if NOT exist "%PACKAGES_DIR%" mkdir %PACKAGES_DIR% > nul 2>&1 @@ -42,7 +44,7 @@ echo { "projects": [] } > %DUMMY_GLOBAL_JSON_PATH% echo Installing dotnet cli... if NOT exist "%DOTNET_PATH%" mkdir "%DOTNET_PATH%" set DOTNET_ZIP_NAME=dotnet-dev-win-x64.%DOTNET_VERSION%.zip -set DOTNET_REMOTE_PATH=https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/%DOTNET_VERSION%/%DOTNET_ZIP_NAME% +set DOTNET_REMOTE_PATH=https://dotnetcli.azureedge.net/dotnet/preview/Binaries/%DOTNET_VERSION%/%DOTNET_ZIP_NAME% set DOTNET_LOCAL_PATH=%DOTNET_PATH%%DOTNET_ZIP_NAME% echo Installing '%DOTNET_REMOTE_PATH%' to '%DOTNET_LOCAL_PATH%' >> "%INIT_TOOLS_LOG%" powershell -NoProfile -ExecutionPolicy unrestricted -Command "$retryCount = 0; $success = $false; do { try { (New-Object Net.WebClient).DownloadFile('%DOTNET_REMOTE_PATH%', '%DOTNET_LOCAL_PATH%'); $success = $true; } catch { if ($retryCount -ge 6) { throw; } else { $retryCount++; Start-Sleep -Seconds (5 * $retryCount); } } } while ($success -eq $false); Add-Type -Assembly 'System.IO.Compression.FileSystem' -ErrorVariable AddTypeErrors; if ($AddTypeErrors.Count -eq 0) { [System.IO.Compression.ZipFile]::ExtractToDirectory('%DOTNET_LOCAL_PATH%', '%DOTNET_PATH%') } else { (New-Object -com shell.application).namespace('%DOTNET_PATH%').CopyHere((new-object -com shell.application).namespace('%DOTNET_LOCAL_PATH%').Items(),16) }" >> "%INIT_TOOLS_LOG%" @@ -51,7 +53,24 @@ if NOT exist "%DOTNET_LOCAL_PATH%" ( exit /b 1 ) -:afterdotnetrestore +:afterdotnetinstall + +if exist "%DOTNET_SDK_CMD%" goto :afterdotnetsdkinstall + +echo Installing dotnet sdk... +set /p DOTNET_SDK_VERSION=< "%~dp0DotnetCLISdkVersion.txt" +if NOT exist "%DOTNET_SDK_PATH%" mkdir "%DOTNET_SDK_PATH%" +set DOTNET_ZIP_NAME=dotnet-dev-win-x64.%DOTNET_SDK_VERSION%.zip +set DOTNET_REMOTE_PATH=https://dotnetcli.azureedge.net/dotnet/Sdk/%DOTNET_SDK_VERSION%/%DOTNET_ZIP_NAME% +set DOTNET_LOCAL_PATH=%DOTNET_SDK_PATH%%DOTNET_ZIP_NAME% +echo Installing '%DOTNET_REMOTE_PATH%' to '%DOTNET_LOCAL_PATH%' >> "%INIT_TOOLS_LOG%" +powershell -NoProfile -ExecutionPolicy unrestricted -Command "$retryCount = 0; $success = $false; do { try { (New-Object Net.WebClient).DownloadFile('%DOTNET_REMOTE_PATH%', '%DOTNET_LOCAL_PATH%'); $success = $true; } catch { if ($retryCount -ge 6) { throw; } else { $retryCount++; Start-Sleep -Seconds (5 * $retryCount); } } } while ($success -eq $false); Add-Type -Assembly 'System.IO.Compression.FileSystem' -ErrorVariable AddTypeErrors; if ($AddTypeErrors.Count -eq 0) { [System.IO.Compression.ZipFile]::ExtractToDirectory('%DOTNET_LOCAL_PATH%', '%DOTNET_SDK_PATH%') } else { (New-Object -com shell.application).namespace('%DOTNET_SDK_PATH%').CopyHere((new-object -com shell.application).namespace('%DOTNET_LOCAL_PATH%').Items(),16) }" >> "%INIT_TOOLS_LOG%" +if NOT exist "%DOTNET_LOCAL_PATH%" ( + echo ERROR: Could not install dotnet cli correctly. See '%INIT_TOOLS_LOG%' for more details. 1>&2 + exit /b 1 +) + +:afterdotnetsdkinstall if exist "%BUILD_TOOLS_PATH%" goto :afterbuildtoolsrestore echo Restoring BuildTools version %BUILDTOOLS_VERSION%... diff --git a/init-tools.sh b/init-tools.sh index b6aa4681..b49247e4 100755 --- a/init-tools.sh +++ b/init-tools.sh @@ -6,9 +6,12 @@ __PACKAGES_DIR=$__scriptpath/packages __TOOLRUNTIME_DIR=$__scriptpath/Tools __DOTNET_PATH=$__TOOLRUNTIME_DIR/dotnetcli __DOTNET_CMD=$__DOTNET_PATH/dotnet +__DOTNET_SDK_PATH=$__TOOLRUNTIME_DIR/dotnetclisdk +__DOTNET_SDK_CMD=$__DOTNET_SDK_PATH/dotnet if [ -z "$__BUILDTOOLS_SOURCE" ]; then __BUILDTOOLS_SOURCE=https://dotnet.myget.org/F/dotnet-buildtools/api/v3/index.json; fi __BUILD_TOOLS_PACKAGE_VERSION=$(cat $__scriptpath/BuildToolsVersion.txt) __DOTNET_TOOLS_VERSION=$(cat $__scriptpath/DotnetCLIVersion.txt) +__DOTNET_SDK_TOOLS_VERSION=$(cat $__scriptpath/DotnetCLISdkVersion.txt) __BUILD_TOOLS_PATH=$__PACKAGES_DIR/Microsoft.DotNet.BuildTools/$__BUILD_TOOLS_PACKAGE_VERSION/lib __PROJECT_JSON_PATH=$__TOOLRUNTIME_DIR/$__BUILD_TOOLS_PACKAGE_VERSION __PROJECT_JSON_FILE=$__PROJECT_JSON_PATH/project.json @@ -116,7 +119,7 @@ if [ ! -e $__INIT_TOOLS_DONE_MARKER ]; then cp -r $DOTNET_TOOL_DIR/* $__DOTNET_PATH else echo "Installing dotnet cli..." - __DOTNET_LOCATION="https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/${__DOTNET_TOOLS_VERSION}/${__DOTNET_PKG}.${__DOTNET_TOOLS_VERSION}.tar.gz" + __DOTNET_LOCATION="https://dotnetcli.azureedge.net/dotnet/preview/Binaries/${__DOTNET_TOOLS_VERSION}/${__DOTNET_PKG}.${__DOTNET_TOOLS_VERSION}.tar.gz" # curl has HTTPS CA trust-issues less often than wget, so lets try that first. echo "Installing '${__DOTNET_LOCATION}' to '$__DOTNET_PATH/dotnet.tar'" >> $__init_tools_log which curl > /dev/null 2> /dev/null @@ -134,6 +137,25 @@ if [ ! -e $__INIT_TOOLS_DONE_MARKER ]; then fi fi + if [ ! -e $__DOTNET_SDK_PATH ]; then + + mkdir -p "$__DOTNET_SDK_PATH" + + echo "Installing dotnet cli..." + __DOTNET_LOCATION="https://dotnetcli.azureedge.net/dotnet/Sdk/${__DOTNET_SDK_TOOLS_VERSION}/${__DOTNET_PKG}.${__DOTNET_SDK_TOOLS_VERSION}.tar.gz" + # curl has HTTPS CA trust-issues less often than wget, so lets try that first. + echo "Installing '${__DOTNET_LOCATION}' to '$__DOTNET_SDK_PATH/dotnet.tar'" >> $__init_tools_log + which curl > /dev/null 2> /dev/null + if [ $? -ne 0 ]; then + wget -q -O $__DOTNET_SDK_PATH/dotnet.tar ${__DOTNET_LOCATION} + else + curl --retry 10 -sSL --create-dirs -o $__DOTNET_SDK_PATH/dotnet.tar ${__DOTNET_LOCATION} + fi + cd $__DOTNET_SDK_PATH + tar -xf $__DOTNET_SDK_PATH/dotnet.tar + + cd $__scriptpath + fi if [ -n "$BUILD_TOOLS_TOOLSET_DIR" ] && [ -d "$BUILD_TOOLS_TOOLSET_DIR/$__BUILD_TOOLS_PACKAGE_VERSION" ]; then echo "Copying $BUILD_TOOLS_TOOLSET_DIR/$__BUILD_TOOLS_PACKAGE_VERSION to $__TOOLRUNTIME_DIR" >> $__init_tools_log diff --git a/src/pkg/packaging/deb/dotnet-deb-tool-consumer.csproj b/src/pkg/packaging/deb/dotnet-deb-tool-consumer.csproj new file mode 100644 index 00000000..82b9f935 --- /dev/null +++ b/src/pkg/packaging/deb/dotnet-deb-tool-consumer.csproj @@ -0,0 +1,8 @@ + + + netcoreapp2.0 + + + + + diff --git a/src/pkg/packaging/deb/package.props b/src/pkg/packaging/deb/package.props index 564683e9..d3471dc6 100644 --- a/src/pkg/packaging/deb/package.props +++ b/src/pkg/packaging/deb/package.props @@ -3,9 +3,9 @@ dotnet-deb-tool 1.0.1-* - $(ProjectDir)setuptools/dotnet-deb-tool/ + $(ProjectDir)tools-local/setuptools/dotnet-deb-tool/ $(PackagesOutDir) - dotnet-deb-tool-consumer + dotnet-deb-tool-consumer.csproj debian_config.json $(IntermediateOutputRootPath)$(toolConsumerProjectName) $(CompressionRoot)deb/ diff --git a/src/pkg/packaging/deb/package.targets b/src/pkg/packaging/deb/package.targets index 4b3704ad..985b8e99 100644 --- a/src/pkg/packaging/deb/package.targets +++ b/src/pkg/packaging/deb/package.targets @@ -1,11 +1,12 @@ - + - + + - + - - - - - - - - - + - @@ -91,7 +82,7 @@ Lines="$([System.IO.File]::ReadAllText('$(ConfigJsonFile)').Replace('%25SHARED_HOST_BRAND_NAME%25', '$(SharedHostBrandName)'))" Overwrite="true" /> - @@ -140,7 +131,7 @@ )" Overwrite="true" /> - @@ -201,7 +192,7 @@ ReplacementPatterns="@(ConfigPattern)" ReplacementStrings="@(ConfigReplace)" /> - diff --git a/tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.csproj b/tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.csproj new file mode 100644 index 00000000..ef8fea2e --- /dev/null +++ b/tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.csproj @@ -0,0 +1,25 @@ + + + + 2.0.0 + netcoreapp2.0 + dotnet-deb-tool + Exe + dotnet-deb-tool + + + + + + + + lib/$(TargetFramework)/tool/%(RecursiveDir)%(FileName)%(Extension) + true + + + true + \prefercliruntime + + + + diff --git a/tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.xproj b/tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.xproj deleted file mode 100644 index c0ee9081..00000000 --- a/tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.xproj +++ /dev/null @@ -1,18 +0,0 @@ - - - - 14.0.25029 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - f39f3d8b-b26f-4c77-b08c-d6ca753ee84e - Microsoft.DotNet.Deb.Tool - ..\..\..\Bin\obj\$(MSBuildProjectName) - ..\..\..\Bin - - - 2.0 - - - \ No newline at end of file diff --git a/tools-local/setuptools/dotnet-deb-tool/project.json b/tools-local/setuptools/dotnet-deb-tool/project.json deleted file mode 100644 index a34b2e66..00000000 --- a/tools-local/setuptools/dotnet-deb-tool/project.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "version": "2.0.0-*", - "buildOptions": { - "emitEntryPoint": true, - "compile": { - "exclude": [ "tool/**/*" ], - "include": [ "../../src/build/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs"] - } - }, - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "1.0.0" - } - }, - - "packOptions": { - "files": { - "include": "prefercliruntime", - "mappings":{ - "lib/netcoreapp1.0/tool/": { - "include": "tool/**/*" - } - } - } - }, - - "frameworks": { - "netcoreapp1.0": { - "imports": "dnxcore50" - } - } -} From 6c99e7e0281ee34e555d1423bab570376456ba34 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Fri, 28 Apr 2017 17:13:58 -0700 Subject: [PATCH 247/625] Enabel CFG for hostfxr and hostpolicy (#2226) --- src/corehost/cli/setup.cmake | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/corehost/cli/setup.cmake b/src/corehost/cli/setup.cmake index 2b6d3672..2deb3ce3 100644 --- a/src/corehost/cli/setup.cmake +++ b/src/corehost/cli/setup.cmake @@ -31,6 +31,9 @@ if(WIN32) set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /DEBUG /PDBCOMPRESS") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /STACK:1572864") + set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /guard:cf") + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /guard:cf") + # Debug build specific flags set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "/NOVCFEATURE") From 8988856fd75c4c3b8e03aa0b207705b287391899 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Sat, 29 Apr 2017 19:06:58 -0700 Subject: [PATCH 248/625] Extract engine bundle, sign, reattach; also do vsts agent cleanup --- .../Core-Setup-Signing-Windows-BT.json | 205 +++++++++--------- src/pkg/packaging/dir.props | 1 + src/pkg/packaging/windows/package.props | 1 + src/pkg/packaging/windows/package.targets | 9 + 4 files changed, 112 insertions(+), 104 deletions(-) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index 6b8823df..7b6f49c2 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -237,25 +237,6 @@ "msbuildLocation": "" } }, - { - "enabled": false, - "continueOnError": false, - "alwaysRun": false, - "displayName": "PublishSharedFramework", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,PublishSharedFrameworkAndSharedHost $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": false, @@ -364,25 +345,6 @@ "msbuildLocation": "" } }, - { - "enabled": false, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Test and Package", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,Test,InitPackage,GenerateVersionBadge,GenerateZip,GenerateMsis,GenerateNugetPackages $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": false, @@ -411,64 +373,34 @@ } }, { - "enabled": false, + "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Generate Bundle", + "displayName": "Extract engine from bundle", "timeoutInMinutes": 0, "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", "versionSpec": "1.*", "definitionType": "task" }, "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,GenerateBundles $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:ExtractEngineBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\extractengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" } }, { - "enabled": false, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Extract Engine from bundle", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,ExtractEngineFromBundle $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": false, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Reattach Engine to Bundle", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,ReattachEngineToBundle $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": false, + "enabled": true, "continueOnError": false, "alwaysRun": false, "displayName": "Sign Bundle", @@ -489,7 +421,61 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Reattach engine to bundle", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:ReattachEngineToBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\reattachengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", "msbuildVersion": "15.0", + "msbuildArchitecture": "x86", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign engine", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", "msbuildArchitecture": "x64", "msbuildLocation": "" } @@ -534,25 +520,6 @@ }, "inputs": {} }, - { - "enabled": false, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Publish Build Artifacts", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,Publish $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": true, @@ -571,6 +538,33 @@ "ArtifactType": "Container", "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup VSTS Agent", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\Tools\\scripts\\vstsagent\\cleanupagent.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } } ], "options": [ @@ -716,6 +710,9 @@ "PB_TargetArchitecture": { "value": "x64", "allowOverride": true + }, + "PB_CleanAgent": { + "value": "true" } }, "demands": [ diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index 0b508b5e..ab94bbc1 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -25,6 +25,7 @@ dotnet-$(ProductMoniker)$(CombinedInstallerExtension) + dotnet-$(ProductMoniker)-engine.exe dotnet-host-$(ProductMoniker)$(InstallerExtension) dotnet-hostfxr-$(ProductMoniker)$(InstallerExtension) dotnet-sharedframework-$(ProductMoniker)$(InstallerExtension) diff --git a/src/pkg/packaging/windows/package.props b/src/pkg/packaging/windows/package.props index b91b5f3c..8d2579e3 100644 --- a/src/pkg/packaging/windows/package.props +++ b/src/pkg/packaging/windows/package.props @@ -9,5 +9,6 @@ $(TargetArchitecture) x86 x64 + $(WixToolsDir)\insignia.exe \ No newline at end of file diff --git a/src/pkg/packaging/windows/package.targets b/src/pkg/packaging/windows/package.targets index 80313203..e8a90098 100644 --- a/src/pkg/packaging/windows/package.targets +++ b/src/pkg/packaging/windows/package.targets @@ -107,4 +107,13 @@ + + + + + + + + + \ No newline at end of file From f8ba563b65819fbf429d2b56690479a061720255 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Sun, 30 Apr 2017 15:25:48 -0700 Subject: [PATCH 249/625] Update readme links --- README.md | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 209bf7a2..d8c467a1 100644 --- a/README.md +++ b/README.md @@ -34,11 +34,8 @@ Daily Builds |---------|:----------:|:----------:|:----------:| | **Windows (x64)** | [![][win-x64-badge-master]][win-x64-version-master]
[Installer][win-x64-installer-master]
[zip][win-x64-zip-master]
[Symbols (zip)][win-x64-symbols-zip-master] | [![][win-x64-badge-1.1.X]][win-x64-version-1.1.X]
[Installer][win-x64-installer-1.1.X]
[zip][win-x64-zip-1.1.X] | [![][win-x64-badge-preview]][win-x64-version-preview]
[Installer][win-x64-installer-preview]
[zip][win-x64-zip-preview] | | **Windows (x86)** | [![][win-x86-badge-master]][win-x86-version-master]
[Installer][win-x86-installer-master]
[zip][win-x86-zip-master]
[Symbols (zip)][win-x86-symbols-zip-master] | [![][win-x86-badge-1.1.X]][win-x86-version-1.1.X]
[Installer][win-x86-installer-1.1.X]
[zip][win-x86-zip-1.1.X] | [![][win-x86-badge-preview]][win-x86-version-preview]
[Installer][win-x86-installer-preview]
[zip][win-x86-zip-preview] | -| **Windows (arm32)** | [![][win-arm-badge-master]][win-arm-version-master]
[zip][win-arm-zip-master]
[Symbols (zip)][win-arm-symbols-zip-master] | N/A | N/A | -| **Windows (arm64)** | [![][win-arm64-badge-master]][win-arm64-version-master]
[zip][win-arm64-zip-master]
[Symbols (zip)][win-arm64-symbols-zip-master] | N/A | N/A | | **Mac OS X (x64)** | [![][osx-badge-master]][osx-version-master]
[Installer][osx-installer-master]
[tar.gz][osx-targz-master]
[Symbols (tar.gz)][osx-symbols-targz-master] | [![][osx-badge-1.1.X]][osx-version-1.1.X]
[Installer][osx-installer-1.1.X]
[tar.gz][osx-targz-1.1.X] | [![][osx-badge-preview]][osx-version-preview]
[Installer][osx-installer-preview]
[tar.gz][osx-targz-preview] | | **Linux (x64)** (for glibc based OS) | [![][linux-x64-badge-master-portable]][linux-x64-version-master-portable]
[tar.gz][linux-x64-targz-master-portable]
[Symbols (tar.gz)][linux-x64-symbols-targz-master-portable] | N/A | N/A | -| **Linux (arm)** (for glibc based OS) | [![][linux-arm-badge-master-portable]][linux-arm-version-master-portable]
[tar.gz][linux-arm-targz-master-portable]
[Symbols (tar.gz)][linux-arm-symbols-targz-master-portable] | N/A | N/A | | **Ubuntu 14.04 (x64)** | [![][ubuntu-14.04-badge-master]][ubuntu-14.04-version-master]
[Host][ubuntu-14.04-host-master]
[Host FX Resolver][ubuntu-14.04-hostfxr-master]
[Shared Framework][ubuntu-14.04-sharedfx-master]
[tar.gz][ubuntu-14.04-targz-master]
[Symbols (tar.gz)][ubuntu-14.04-symbols-targz-master] | [![][ubuntu-14.04-badge-1.1.X]][ubuntu-14.04-version-1.1.X]
[Host][ubuntu-14.04-host-1.1.X]
[Host FX Resolver][ubuntu-14.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-14.04-sharedfx-1.1.X]
[tar.gz][ubuntu-14.04-targz-1.1.X] | [![][ubuntu-14.04-badge-preview]][ubuntu-14.04-version-preview]
[Host][ubuntu-14.04-host-preview]
[Host FX Resolver][ubuntu-14.04-hostfxr-preview]
[Shared Framework][ubuntu-14.04-sharedfx-preview]
[tar.gz][ubuntu-14.04-targz-preview] | | **Ubuntu 16.04 (x64)** | [![][ubuntu-16.04-badge-master]][ubuntu-16.04-version-master]
[Host][ubuntu-16.04-host-master]
[Host FX Resolver][ubuntu-16.04-hostfxr-master]
[Shared Framework][ubuntu-16.04-sharedfx-master]
[tar.gz][ubuntu-16.04-targz-master]
[Symbols (tar.gz)][ubuntu-16.04-symbols-targz-master] | [![][ubuntu-16.04-badge-1.1.X]][ubuntu-16.04-version-1.1.X]
[Host][ubuntu-16.04-host-1.1.X]
[Host FX Resolver][ubuntu-16.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.04-sharedfx-1.1.X]
[tar.gz][ubuntu-16.04-targz-1.1.X] | [![][ubuntu-16.04-badge-preview]][ubuntu-16.04-version-preview]
[Host][ubuntu-16.04-host-preview]
[Host FX Resolver][ubuntu-16.04-hostfxr-preview]
[Shared Framework][ubuntu-16.04-sharedfx-preview]
[tar.gz][ubuntu-16.04-targz-preview] | | **Ubuntu 16.10 (x64)** | [![][ubuntu-16.10-badge-master]][ubuntu-16.10-version-master]
[Host][ubuntu-16.10-host-master]
[Host FX Resolver][ubuntu-16.10-hostfxr-master]
[Shared Framework][ubuntu-16.10-sharedfx-master]
[tar.gz][ubuntu-16.10-targz-master]
[Symbols (tar.gz)][ubuntu-16.10-symbols-targz-master] | [![][ubuntu-16.10-badge-1.1.X]][ubuntu-16.10-version-1.1.X]
[Host][ubuntu-16.10-host-1.1.X]
[Host FX Resolver][ubuntu-16.10-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.10-sharedfx-1.1.X]
[tar.gz][ubuntu-16.10-targz-1.1.X] | N/A | @@ -61,8 +58,8 @@ Daily Builds [build-1.0.X]: https://devdiv.visualstudio.com/DevDiv/_build/index?definitionId=4187&_a=completed -[win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_x64_Release_version_badge.svg -[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x64.portable.version +[win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x64_portable_Release_version_badge.svg +[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x64_portable.version [win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64.latest-portable.exe [win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest-portable.zip [win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest-portable.zip @@ -77,8 +74,8 @@ Daily Builds [win-x64-installer-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-win-x64.latest.exe [win-x64-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x64.latest.zip -[win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_x86_Release_version_badge.svg -[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x86.portable.version +[win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x86_portable_Release_version_badge.svg +[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x86_portable.version [win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86.latest-portable.exe [win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest-portable.zip [win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest-portable.zip @@ -103,8 +100,8 @@ Daily Builds [win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest-portable.zip [win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest-portable.zip -[osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx_portable_x64_Release_version_badge.svg -[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx.x64.portable.version +[osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx-x64_portable_Release_version_badge.svg +[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx-x64_portable.version [osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64.latest-portable.pkg [osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest-portable.tar.gz [osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest-portable.tar.gz @@ -120,8 +117,8 @@ Daily Builds [osx-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-osx-x64.latest.tar.gz -[linux-x64-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_portable_x64_Release_version_badge.svg -[linux-x64-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.x64.portable.version +[linux-x64-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux-x64_portable_Release_version_badge.svg +[linux-x64-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux-x64_portable.version [linux-x64-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64.latest-portable.tar.gz [linux-x64-symbols-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64.latest-portable.tar.gz @@ -130,7 +127,7 @@ Daily Builds [linux-arm-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-arm.latest-portable.tar.gz [linux-arm-symbols-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm.latest-portable.tar.gz -[ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Ubuntu_x64_Release_version_badge.svg +[ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg [ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.14.04-x64.version [ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu-x64.latest.deb [ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu-x64.latest.deb @@ -153,7 +150,7 @@ Daily Builds [ubuntu-14.04-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-ubuntu-x64.latest.tar.gz -[ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Ubuntu_16_04_x64_Release_version_badge.svg +[ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg [ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04-x64.version [ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb @@ -176,8 +173,8 @@ Daily Builds [ubuntu-16.04-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-ubuntu.16.04-x64.latest.tar.gz -[ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Ubuntu_16_10_x64_Release_version_badge.svg -[ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.10.x64.version +[ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg +[ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.10-x64.version [ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.10-x64.latest.deb [ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb [ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb @@ -192,7 +189,7 @@ Daily Builds [ubuntu-16.10-targz-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/dotnet-ubuntu.16.10-x64.latest.tar.gz -[debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Debian_x64_Release_version_badge.svg +[debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_debian.8-x64_Release_version_badge.svg [debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.debian.8-x64.version [debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-debian-x64.latest.deb [debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-debian-x64.latest.deb From 34a266549d26f87b633035ea7239152835ecdeed Mon Sep 17 00:00:00 2001 From: Jim Ma Date: Tue, 2 May 2017 03:11:18 +1200 Subject: [PATCH 250/625] Updated the cli code to reflect the new interface of coreclr. (#2150) * Updated the cli code to reflect the new interface of coreclr. Added a new parameter `latchedExitCode` to `coreclr_shutdown_fn`. Updated references accordingly. Fix #2050 * Fixed syntax error of latchedExitCode Fix #2050 --- src/corehost/cli/coreclr.cpp | 9 +++++---- src/corehost/cli/coreclr.h | 2 +- src/corehost/cli/hostpolicy.cpp | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/corehost/cli/coreclr.cpp b/src/corehost/cli/coreclr.cpp index c8aafc2f..f7f9434d 100644 --- a/src/corehost/cli/coreclr.cpp +++ b/src/corehost/cli/coreclr.cpp @@ -21,7 +21,8 @@ typedef pal::hresult_t(STDMETHODCALLTYPE *coreclr_initialize_fn)( // Prototype of the coreclr_shutdown function from coreclr.dll typedef pal::hresult_t(STDMETHODCALLTYPE *coreclr_shutdown_fn)( coreclr::host_handle_t hostHandle, - unsigned int domainId); + unsigned int domainId, + int* latchedExitCode); // Prototype of the coreclr_execute_assembly function from coreclr.dll typedef pal::hresult_t(STDMETHODCALLTYPE *coreclr_execute_assembly_fn)( @@ -49,7 +50,7 @@ bool coreclr::bind(const pal::string_t& libcoreclr_path) } coreclr_initialize = (coreclr_initialize_fn)pal::get_symbol(g_coreclr, "coreclr_initialize"); - coreclr_shutdown = (coreclr_shutdown_fn)pal::get_symbol(g_coreclr, "coreclr_shutdown"); + coreclr_shutdown = (coreclr_shutdown_fn)pal::get_symbol(g_coreclr, "coreclr_shutdown_2"); coreclr_execute_assembly = (coreclr_execute_assembly_fn)pal::get_symbol(g_coreclr, "coreclr_execute_assembly"); return true; @@ -83,11 +84,11 @@ pal::hresult_t coreclr::initialize( domain_id); } -pal::hresult_t coreclr::shutdown(host_handle_t host_handle, domain_id_t domain_id) +pal::hresult_t coreclr::shutdown(host_handle_t host_handle, domain_id_t domain_id, int* latchedExitCode) { assert(g_coreclr != nullptr && coreclr_shutdown != nullptr); - return coreclr_shutdown(host_handle, domain_id); + return coreclr_shutdown(host_handle, domain_id, latchedExitCode); } pal::hresult_t coreclr::execute_assembly( diff --git a/src/corehost/cli/coreclr.h b/src/corehost/cli/coreclr.h index 7b9ac6d7..5f21260f 100644 --- a/src/corehost/cli/coreclr.h +++ b/src/corehost/cli/coreclr.h @@ -25,7 +25,7 @@ namespace coreclr host_handle_t* host_handle, domain_id_t* domain_id); - pal::hresult_t shutdown(host_handle_t host_handle, domain_id_t domain_id); + pal::hresult_t shutdown(host_handle_t host_handle, domain_id_t domain_id, int* latchedExitCode); pal::hresult_t execute_assembly( host_handle_t host_handle, diff --git a/src/corehost/cli/hostpolicy.cpp b/src/corehost/cli/hostpolicy.cpp index 5d133332..c48ed432 100644 --- a/src/corehost/cli/hostpolicy.cpp +++ b/src/corehost/cli/hostpolicy.cpp @@ -240,7 +240,7 @@ int run(const arguments_t& args) } // Shut down the CoreCLR - hr = coreclr::shutdown(host_handle, domain_id); + hr = coreclr::shutdown(host_handle, domain_id, (int*)&exit_code); if (!SUCCEEDED(hr)) { trace::warning(_X("Failed to shut down CoreCLR, HRESULT: 0x%X"), hr); From 158e0a50f1f03242ae764af49e1a787a0cf45712 Mon Sep 17 00:00:00 2001 From: chcosta Date: Mon, 1 May 2017 10:13:38 -0700 Subject: [PATCH 251/625] Reimplement only publish identity packages from a single build leg (#2234) * Reimplement only publish identity packages from a single build leg * Fix build platform manifest in official build --- buildpipeline/Core-Setup-Signing-Windows-BT.json | 14 ++++++++++---- buildpipeline/pipeline.json | 4 +++- publish/dir.props | 6 ++++-- publish/dir.targets | 5 ++++- publish/publish.proj | 2 +- .../Microsoft.NETCore.App.pkgproj | 2 +- ...rosoft.NETCore.UniversalWindowsPlatform.pkgproj | 2 +- 7 files changed, 24 insertions(+), 11 deletions(-) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index 6b8823df..eb9e5923 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -198,7 +198,7 @@ "solution": "$(PB_SourcesDirectory)\\src\\pkg\\dir.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/p:IncludeAllRuntimePackagesInPlatformManifest=false $(PB_CommonMSBuildArgs) /flp:v=diag;LogFile=$(PB_SourcesDirectory)\\packages.log", + "msbuildArguments": "/p:IncludeAllRuntimePackagesInPlatformManifest=false $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packages.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -225,7 +225,7 @@ "solution": "$(PB_SourcesDirectory)\\src\\managed\\dir.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=diag;LogFile=$(PB_SourcesDirectory)\\sharedframework.log", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\sharedframework.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -325,7 +325,7 @@ "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=diag", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packaging.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -509,7 +509,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -716,6 +716,12 @@ "PB_TargetArchitecture": { "value": "x64", "allowOverride": true + }, + "PB_PublishRidAgnosticPackages": { + "value": "false" + }, + "PB_BuildFullPlatformManifest": { + "value": "false" } }, "demands": [ diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 62ce6a4c..ee06abb7 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -110,7 +110,9 @@ "Parameters": { "PB_DistroRid": "win7-x64", "PB_TargetArchitecture": "x64", - "PB_PortableBuild": "true" + "PB_PortableBuild": "true", + "PB_PublishRidAgnosticPackages": "true", + "PB_BuildFullPlatformManifest": "true" }, "ReportingParameters": { "OperatingSystem": "Windows", diff --git a/publish/dir.props b/publish/dir.props index 4fd88334..9e175e22 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -12,8 +12,10 @@ - - + + + + diff --git a/publish/dir.targets b/publish/dir.targets index d5866b71..9b65c811 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -5,9 +5,12 @@ $(Channel)/Binaries/$(SharedFrameworkNugetVersion)
+ + + UploadToAzure - %(Project.AdditionalProperties);ItemsToPublish=@(CompressedFile);$(OutputVersionBadge);RelativeBlobPath=$(RelativeBlobPath) + %(Project.AdditionalProperties);ItemsToPublish=@(PublishFile);$(OutputVersionBadge);RelativeBlobPath=$(RelativeBlobPath) diff --git a/publish/publish.proj b/publish/publish.proj index 8a2b034c..cf472e23 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -35,7 +35,7 @@ AccountKey="$(AzureAccessToken)" ContainerName="$(ContainerName)" Items="@(ItemsToPublish)" - Overwrite="true" /> + Overwrite="false" /> - true + true
diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj index 18a98301..2c1ac715 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj @@ -14,7 +14,7 @@ restore all of those dependencies and gather the prospective content of the RID-specific Core.App packages. This is needed so that we have a complete platform manifest in the shipping version of the Microsoft.NETCore.UniversalWindowsPlatform (RID-agnostic/identity package). --> - true + true
From 6819864cf4313c925c54e782563f99a01cb2a8b0 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Mon, 1 May 2017 10:33:42 -0700 Subject: [PATCH 252/625] Remove portable moniker --- README.md | 22 +++++++++++----------- dir.props | 3 +-- 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index d8c467a1..fb1e1761 100644 --- a/README.md +++ b/README.md @@ -58,8 +58,8 @@ Daily Builds [build-1.0.X]: https://devdiv.visualstudio.com/DevDiv/_build/index?definitionId=4187&_a=completed -[win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x64_portable_Release_version_badge.svg -[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x64_portable.version +[win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x64_Release_version_badge.svg +[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x64.version [win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64.latest-portable.exe [win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest-portable.zip [win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest-portable.zip @@ -74,8 +74,8 @@ Daily Builds [win-x64-installer-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-win-x64.latest.exe [win-x64-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x64.latest.zip -[win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x86_portable_Release_version_badge.svg -[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x86_portable.version +[win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x86_Release_version_badge.svg +[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x86.version [win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86.latest-portable.exe [win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest-portable.zip [win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest-portable.zip @@ -90,18 +90,18 @@ Daily Builds [win-x86-installer-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-win-x86.latest.exe [win-x86-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x86.latest.zip -[win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_arm_Release_version_badge.svg +[win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_arm_Release_version_badge.svg [win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm.portable.version [win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm.latest-portable.zip [win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm.latest-portable.zip -[win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_arm64_Release_version_badge.svg +[win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_arm64_Release_version_badge.svg [win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm64.portable.version [win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest-portable.zip [win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest-portable.zip -[osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx-x64_portable_Release_version_badge.svg -[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx-x64_portable.version +[osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx-x64_Release_version_badge.svg +[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx-x64.version [osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64.latest-portable.pkg [osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest-portable.tar.gz [osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest-portable.tar.gz @@ -117,12 +117,12 @@ Daily Builds [osx-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-osx-x64.latest.tar.gz -[linux-x64-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux-x64_portable_Release_version_badge.svg -[linux-x64-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux-x64_portable.version +[linux-x64-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux-x64_Release_version_badge.svg +[linux-x64-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux-x64.version [linux-x64-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64.latest-portable.tar.gz [linux-x64-symbols-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64.latest-portable.tar.gz -[linux-arm-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_portable_arm_Release_version_badge.svg +[linux-arm-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_arm_Release_version_badge.svg [linux-arm-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.arm.portable.version [linux-arm-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-arm.latest-portable.tar.gz [linux-arm-symbols-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm.latest-portable.tar.gz diff --git a/dir.props b/dir.props index eff6921f..cc726ea1 100644 --- a/dir.props +++ b/dir.props @@ -282,8 +282,7 @@ false - _portable - $(BaseOutputRootPath)sharedfx_$(TargetRid)$(PortableLabel)_$(ConfigurationGroup)_version_badge.svg + $(BaseOutputRootPath)sharedfx_$(TargetRid)_$(ConfigurationGroup)_version_badge.svg From ed2339edb2fe971da7ecd3d947e1ef5f73a58eae Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 1 May 2017 12:40:07 -0500 Subject: [PATCH 253/625] Remove NugetRestoreCommand, since it is not used in core-setup. --- build.proj | 5 ----- dir.props | 16 ---------------- 2 files changed, 21 deletions(-) diff --git a/build.proj b/build.proj index a197353e..c0cce518 100644 --- a/build.proj +++ b/build.proj @@ -53,11 +53,6 @@ - - - <_allPackagesConfigs Include="$(MSBuildProjectDirectory)\src\**\packages.config"/> - - diff --git a/dir.props b/dir.props index eff6921f..be6fbf45 100644 --- a/dir.props +++ b/dir.props @@ -87,25 +87,9 @@ - - - - - - $(ToolsDir)NuGet.CommandLine/NuGet.exe - @(NuGetSourceList -> '-source %(Identity)', ' ') - $(NuGetPackageSource) - - "$(NuGetToolPath)" - $(NugetRestoreCommand) install - - $(NugetRestoreCommand) -OutputDirectory "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" - $(NugetRestoreCommand) $(NuGetConfigCommandLine) - $(NugetRestoreCommand) -Verbosity detailed - mono $(NuGetRestoreCommand) From ee1efa83a53617ee936b88c4461d2691f6f1da59 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 1 May 2017 14:27:22 -0500 Subject: [PATCH 254/625] Fix OSX installer output directories. Currently, the installers are not getting copied to the correct spot. --- src/pkg/packaging/osx/package.targets | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pkg/packaging/osx/package.targets b/src/pkg/packaging/osx/package.targets index c9d0ded8..9e4ebb11 100644 --- a/src/pkg/packaging/osx/package.targets +++ b/src/pkg/packaging/osx/package.targets @@ -19,21 +19,21 @@ $(SharedFrameworkPublishRoot) $(PackagesIntermediateDir)$(SharedFxComponentId).pkg - $(SharedFrameworkInstallerFile) + $(PackagesOutDir)$(SharedFrameworkInstallerFile) $(SharedHostComponentId) $(SharedHostPublishRoot) $(PackagesIntermediateDir)$(SharedHostComponentId).pkg - $(SharedHostInstallerFile) + $(PackagesOutDir)$(SharedHostInstallerFile) $(HostFxrComponentId) $(HostFxrPublishRoot) $(PackagesIntermediateDir)$(HostFxrComponentId).pkg - $(HostFxrInstallerFile) + $(PackagesOutDir)$(HostFxrInstallerFile) @@ -50,7 +50,7 @@ $(OSXScriptRoot)sharedframework/ $(SharedFxScriptRoot)resources - $(PackagesIntermediateDir)$(CombinedInstallerFile) + $(PackagesOutDir)$(CombinedInstallerFile) shared-framework-distribution-template.xml $(PackagesIntermediateDir)$(TemplateFile) From 3c77c61fbdfd4334e92900170212e4ffe744508a Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 1 May 2017 15:49:58 -0500 Subject: [PATCH 255/625] Rename CompressionRoot to PackagingRoot. --- src/pkg/packaging/deb/package.props | 2 +- src/pkg/packaging/dir.props | 2 +- src/pkg/packaging/osx/package.props | 2 +- src/pkg/packaging/windows/host/generatemsi.ps1 | 6 +++--- src/pkg/packaging/windows/hostfxr/generatemsi.ps1 | 6 +++--- src/pkg/packaging/windows/package.props | 2 +- .../packaging/windows/sharedframework/generatebundle.ps1 | 8 ++++---- src/pkg/packaging/windows/sharedframework/generatemsi.ps1 | 6 +++--- 8 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/pkg/packaging/deb/package.props b/src/pkg/packaging/deb/package.props index d3471dc6..ba39a94d 100644 --- a/src/pkg/packaging/deb/package.props +++ b/src/pkg/packaging/deb/package.props @@ -8,7 +8,7 @@ dotnet-deb-tool-consumer.csproj debian_config.json $(IntermediateOutputRootPath)$(toolConsumerProjectName) - $(CompressionRoot)deb/ + $(PackagingRoot)deb/ dotnet-host dotnet-hostfxr-$(HostVersion) dotnet-sharedframework-$(SharedFrameworkName)-$(SharedFrameworkNugetVersion) diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index 0b508b5e..92159792 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -3,7 +3,7 @@ - $(ProjectDir)src/pkg/packaging/ + $(ProjectDir)src/pkg/packaging/ $(IntermediateOutputRootPath)packages/ $(IntermediateOutputRootPath)sharedHost/ diff --git a/src/pkg/packaging/osx/package.props b/src/pkg/packaging/osx/package.props index e554116b..a3369be8 100644 --- a/src/pkg/packaging/osx/package.props +++ b/src/pkg/packaging/osx/package.props @@ -1,7 +1,7 @@ - $(CompressionRoot)osx/ + $(PackagingRoot)osx/ com.microsoft.dotnet.sharedhost.component.osx.x64 com.microsoft.dotnet.hostfxr.$(HostVersion).component.osx.x64 com.microsoft.dotnet.sharedframework.$(SharedFrameworkName).$(HostVersion).component.osx.x64 diff --git a/src/pkg/packaging/windows/host/generatemsi.ps1 b/src/pkg/packaging/windows/host/generatemsi.ps1 index d7450d2f..29287318 100644 --- a/src/pkg/packaging/windows/host/generatemsi.ps1 +++ b/src/pkg/packaging/windows/host/generatemsi.ps1 @@ -22,20 +22,20 @@ if(-Not (Test-Path "$CommonScript")) } . "$CommonScript" -$CompressionRoot = Join-Path $RepoRoot "src\pkg\packaging" +$PackagingRoot = Join-Path $RepoRoot "src\pkg\packaging" function RunCandle { $result = $true pushd "$WixRoot" Write-Host Running candle.. - $AuthWsxRoot = Join-Path $CompressionRoot "windows\host" + $AuthWsxRoot = Join-Path $PackagingRoot "windows\host" .\candle.exe -nologo ` -out "$WixObjRoot\" ` -ext WixDependencyExtension.dll ` -dHostSrc="$SharedHostPublishRoot" ` - -dMicrosoftEula="$CompressionRoot\osx\sharedhost\resources\en.lproj\eula.rtf" ` + -dMicrosoftEula="$PackagingRoot\osx\sharedhost\resources\en.lproj\eula.rtf" ` -dProductMoniker="$ProductMoniker" ` -dBuildVersion="$SharedHostMSIVersion" ` -dNugetVersion="$SharedHostNugetVersion" ` diff --git a/src/pkg/packaging/windows/hostfxr/generatemsi.ps1 b/src/pkg/packaging/windows/hostfxr/generatemsi.ps1 index f75827c7..ea16b968 100644 --- a/src/pkg/packaging/windows/hostfxr/generatemsi.ps1 +++ b/src/pkg/packaging/windows/hostfxr/generatemsi.ps1 @@ -23,7 +23,7 @@ if(-Not (Test-Path "$CommonScript")) } . "$CommonScript" -$CompressionRoot = Join-Path $RepoRoot "src\pkg\packaging" +$PackagingRoot = Join-Path $RepoRoot "src\pkg\packaging" $InstallFileswsx = "$WixObjRoot\install-files.wxs" $InstallFilesWixobj = "$WixObjRoot\install-files.wixobj" @@ -61,14 +61,14 @@ function RunCandle pushd "$WixRoot" Write-Host Running candle.. - $AuthWsxRoot = Join-Path $CompressionRoot "windows\hostfxr" + $AuthWsxRoot = Join-Path $PackagingRoot "windows\hostfxr" $ComponentVersion = $HostFxrNugetVersion.Replace('-', '_'); .\candle.exe -nologo ` -out "$WixObjRoot\" ` -dHostFxrSrc="$HostFxrPublishRoot" ` - -dMicrosoftEula="$CompressionRoot\osx\hostfxr\resources\en.lproj\eula.rtf" ` + -dMicrosoftEula="$PackagingRoot\osx\hostfxr\resources\en.lproj\eula.rtf" ` -dProductMoniker="$ProductMoniker" ` -dBuildVersion="$HostFxrMSIVersion" ` -dNugetVersion="$HostFxrNugetVersion" ` diff --git a/src/pkg/packaging/windows/package.props b/src/pkg/packaging/windows/package.props index b91b5f3c..5997ab4e 100644 --- a/src/pkg/packaging/windows/package.props +++ b/src/pkg/packaging/windows/package.props @@ -1,7 +1,7 @@ - $(CompressionRoot)windows\ + $(PackagingRoot)windows\ 3.10.2 $(WindowsScriptRoot)GetWix.ps1 $(IntermediateOutputRootPath)WixTools.$(WixVersion) diff --git a/src/pkg/packaging/windows/sharedframework/generatebundle.ps1 b/src/pkg/packaging/windows/sharedframework/generatebundle.ps1 index 2feac699..58971380 100644 --- a/src/pkg/packaging/windows/sharedframework/generatebundle.ps1 +++ b/src/pkg/packaging/windows/sharedframework/generatebundle.ps1 @@ -25,7 +25,7 @@ if(-Not (Test-Path "$CommonScript")) } . "$CommonScript" -$CompressionRoot = Join-Path $RepoRoot "src\pkg\packaging" +$PackagingRoot = Join-Path $RepoRoot "src\pkg\packaging" function RunCandleForBundle { @@ -33,11 +33,11 @@ function RunCandleForBundle pushd "$WixRoot" Write-Host Running candle for bundle.. - $AuthWsxRoot = Join-Path $CompressionRoot "windows\sharedframework" + $AuthWsxRoot = Join-Path $PackagingRoot "windows\sharedframework" $SharedFrameworkComponentVersion = $SharedFrameworkNugetVersion.Replace('-', '_'); .\candle.exe -nologo ` - -dMicrosoftEula="$CompressionRoot\osx\sharedframework\resources\en.lproj\eula.rtf" ` + -dMicrosoftEula="$PackagingRoot\osx\sharedframework\resources\en.lproj\eula.rtf" ` -dProductMoniker="$ProductMoniker" ` -dBuildVersion="$DotnetMSIVersion" ` -dDisplayVersion="$DotnetCLIVersion" ` @@ -71,7 +71,7 @@ function RunLightForBundle pushd "$WixRoot" Write-Host Running light for bundle.. - $AuthWsxRoot = Join-Path $CompressionRoot "windows\sharedframework" + $AuthWsxRoot = Join-Path $PackagingRoot "windows\sharedframework" .\light.exe -nologo ` -cultures:en-us ` diff --git a/src/pkg/packaging/windows/sharedframework/generatemsi.ps1 b/src/pkg/packaging/windows/sharedframework/generatemsi.ps1 index ae9eca4d..a958343f 100644 --- a/src/pkg/packaging/windows/sharedframework/generatemsi.ps1 +++ b/src/pkg/packaging/windows/sharedframework/generatemsi.ps1 @@ -23,7 +23,7 @@ if(-Not (Test-Path "$CommonScript")) } . "$CommonScript" -$CompressionRoot = Join-Path $RepoRoot "src\pkg\packaging" +$PackagingRoot = Join-Path $RepoRoot "src\pkg\packaging" $InstallFileswsx = "$WixObjRoot\install-files.wxs" $InstallFilesWixobj = "$WixObjRoot\install-files.wixobj" @@ -62,13 +62,13 @@ function RunCandle pushd "$WixRoot" Write-Host Running candle.. - $AuthWsxRoot = Join-Path $CompressionRoot "windows\sharedframework" + $AuthWsxRoot = Join-Path $PackagingRoot "windows\sharedframework" $SharedFrameworkComponentVersion = $SharedFrameworkNugetVersion.Replace('-', '_'); .\candle.exe -nologo ` -out "$WixObjRoot\" ` -dSharedFrameworkSource="$SharedFrameworkPublishRoot" ` - -dMicrosoftEula="$CompressionRoot\osx\sharedframework\resources\en.lproj\eula.rtf" ` + -dMicrosoftEula="$PackagingRoot\osx\sharedframework\resources\en.lproj\eula.rtf" ` -dProductMoniker="$ProductMoniker" ` -dFrameworkName="$SharedFrameworkNugetName" ` -dFrameworkDisplayVersion="$SharedFrameworkNugetVersion" ` From 8030cdcdd47fb8db834fca10de3f9f5bfd63a6ac Mon Sep 17 00:00:00 2001 From: chcosta Date: Mon, 1 May 2017 14:54:10 -0700 Subject: [PATCH 256/625] Fix symbols tarballs, add portable moniker to tar / zips (#2229) * Fix symbols tarballs, add portable moniker to tar / zips * Remove portable moniker --- src/managed/dir.proj | 1 + src/pkg/packaging/dir.proj | 31 +++++++++++++++++++------------ src/pkg/packaging/dir.props | 2 +- 3 files changed, 21 insertions(+), 13 deletions(-) diff --git a/src/managed/dir.proj b/src/managed/dir.proj index b7e66721..a17861a5 100644 --- a/src/managed/dir.proj +++ b/src/managed/dir.proj @@ -88,6 +88,7 @@ + diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index b79d0a7d..12337288 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -123,18 +123,25 @@ - - @(CombinedCompressedFileSet->'%(Identity)', ' ') - @(HostFxrCompressedFileSet->'%(Identity)', ' ') - @(SharedFrameworkCompressedFileSet->'%(Identity)', ' ') - @(SharedFrameworkSymbolsCompressedFileSet->'%(Identity)', ' ') - - - - - - + + + + + + + + + + diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index 0b508b5e..3e45d8e4 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -9,7 +9,7 @@ $(IntermediateOutputRootPath)sharedHost/ $(IntermediateOutputRootPath)hostFxr/ $(IntermediateOutputRootPath)sharedFx/ - $(IntermediateOutputRootPath)combined-framework-host/ + $(IntermediateOutputRootPath)combined-framework-host/ From d75b6561984a1e328d60170f45d65f6025bf3834 Mon Sep 17 00:00:00 2001 From: chcosta Date: Mon, 1 May 2017 14:56:01 -0700 Subject: [PATCH 257/625] Change publishrid list for current active build legs (#2236) * Change publishrid list for current active build legs * Remove portable moniker --- publish/dir.props | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/publish/dir.props b/publish/dir.props index 9e175e22..0e163e50 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -19,28 +19,23 @@ - - - - - - - - - - - - - + + \ No newline at end of file From 1032303f331c96c92882c3f11615ad3583b0f11d Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Wed, 5 Apr 2017 17:05:07 -0700 Subject: [PATCH 258/625] Run crossgen during build of Core.App depproj --- .../Microsoft.NETCore.App.depproj | 106 +++++++++++++++++- src/pkg/projects/dir.props | 2 + 2 files changed, 104 insertions(+), 4 deletions(-) diff --git a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj index 01722305..0566b2d6 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj @@ -24,17 +24,61 @@ - + + - <_runtimeCLR Include="@(ReferenceCopyLocalPaths)" Condition="'%(ReferenceCopyLocalPaths.FileName)' == 'coreclr' OR '%(ReferenceCopyLocalPaths.FileName)' == 'libcoreclr'" /> + <_runtimeCLR Include="@(ReferenceCopyLocalPaths)" Condition="'%(ReferenceCopyLocalPaths.FileName)%(ReferenceCopyLocalPaths.Extension)' == '$(LibraryFilePrefix)coreclr$(LibraryFileExtension)'" /> + <_runtimeCoreLib Include="@(ReferenceCopyLocalPaths)" Condition="'%(ReferenceCopyLocalPaths.FileName)%(ReferenceCopyLocalPaths.Extension)' == 'System.Private.CoreLib.dll'" /> + <_runtimeJIT Include="@(ReferenceCopyLocalPaths)" Condition="'%(ReferenceCopyLocalPaths.FileName)%(ReferenceCopyLocalPaths.Extension)' == '$(LibraryFilePrefix)clrjit$(LibraryFileExtension)'" /> + <_fxSystemRuntime Include="@(ReferenceCopyLocalPaths)" Condition="'%(ReferenceCopyLocalPaths.FileName)%(ReferenceCopyLocalPaths.Extension)' == 'System.Runtime.dll'" /> - + + + + <_crossDir Condition="'$(NuGetRuntimeIdentifier)' == 'win8-arm'">/x86_AnyCPU + <_crossDir Condition="'$(NuGetRuntimeIdentifier)' == 'win10-arm64'">/x64_AnyCPU + + <_runtimePackageId>%(_runtimeCLR.NuGetPackageId) <_runtimePackageVersion>%(_runtimeCLR.NuGetPackageVersion) <_runtimePackagePath>$(PackagesDir)/$(_runtimePackageId)/$(_runtimePackageVersion) + + <_crossGenPath>$(_runtimePackagePath)/tools$(_crossDir)/crossgen$(ApplicationFileExtension) + <_runtimeDirectory>%(_runtimeCLR.RootDir)%(_runtimeCLR.Directory) + + + + <_coreLibDirectory>%(_runtimeCoreLib.RootDir)%(_runtimeCoreLib.Directory) + + <_jitPackageId>%(_runtimeJIT.NuGetPackageId) + <_jitPackageVersion>%(_runtimeJIT.NuGetPackageVersion) + <_jitPackagePath>$(PackagesDir)/$(_jitPackageId)/$(_jitPackageVersion) + <_jitPath>%(_runtimeJIT.FullPath) + <_jitPath Condition="'$(_crossDir)' != ''">$(_jitPackagePath)/runtimes$(_crossDir)/native/$(LibraryFilePrefix)clrjit$(LibraryFileExtension) + + + + <_fxLibDirectory>%(_fxSystemRuntime.RootDir)%(_fxSystemRuntime.Directory) + + + + <_requiredProperty Include="_runtimePackagePath;_coreLibDirectory;_crossGenPath;_jitPath;_fxLibDirectory" /> + + + + + + + + + <_FilesToPackage Include="@(ReferenceCopyLocalPaths)"> @@ -92,6 +136,60 @@ + + + + <_crossGenIntermediatePath>$(IntermediateOutputPath)/crossgen + + + <_filesToCrossGen Include="@(FilesToPackage)" + Condition="'%(FilesToPackage.IsNative)' != 'true' AND '%(FileName)' != 'System.Private.CoreLib' AND '%(FileName)' != 'mscorlib' AND '%(Extension)' == '.dll'"> + $(_crossGenIntermediatePath)/%(FileName)%(Extension) + + + + + <_crossGenedFilesToPackage Include="@(_filesToCrossGen->'%(CrossGenedPath)')" /> + + + + + + <_crossgenPlatformDirectories Include="$(_runtimeDirectory)" /> + + <_crossgenPlatformDirectories Include="$(_coreLibDirectory)" /> + + <_crossgenPlatformDirectories Include="%(_filesToCrossGen.RootDir)%(_filesToCrossGen.Directory)" /> + + + + <_crossgenPlatformAssemblies>@(_crossgenPlatformDirectories->'%(Identity)', '%3B') + + + + + + <_crossGenResponseFile>$(_crossGenIntermediatePath)/%(_filesToCrossGen.FileName).rsp + + + <_crossGenArgs Include="-readytorun" /> + <_crossGenArgs Include="-in %(_filesToCrossGen.FullPath)" /> + <_crossGenArgs Include="-out %(_filesToCrossGen.CrossGenedPath)" /> + <_crossGenArgs Include="-platform_assemblies_paths $(_crossgenPlatformAssemblies)" /> + <_crossGenArgs Include="-JITPath $(_jitPath)" /> + + + + + + + + + + @@ -119,7 +217,7 @@ - + diff --git a/src/pkg/projects/dir.props b/src/pkg/projects/dir.props index 3b533d7e..1dae1b77 100644 --- a/src/pkg/projects/dir.props +++ b/src/pkg/projects/dir.props @@ -13,6 +13,8 @@ true $(PackageOutputPath) + + $(NuGetRuntimeIdentifier) true From 3d8498ab4d81eb01461cc192983a6d550c0235e4 Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Mon, 1 May 2017 13:40:52 -0700 Subject: [PATCH 259/625] Move crossgen into src build phase This adds a src.builds phase to the repo which builds binaries that will later be signed. In this phase are currently host binaries and cross- gen'ed shared framework binaries. A future commit will move managed binaries into this phase. --- build.proj | 2 +- buildpipeline/Core-Setup-Signing-Windows-BT.json | 2 +- dir.props | 3 ++- src/dir.proj | 7 +------ src/pkg/packages.builds | 10 +++++++++- .../Microsoft.NETCore.App.pkgproj | 2 +- .../src/Microsoft.NETCore.App.builds | 10 ++++++++++ .../{ => src}/Microsoft.NETCore.App.depproj | 8 +++++--- .../{ => src}/project.json.template | 0 ...Microsoft.NETCore.UniversalWindowsPlatform.pkgproj | 2 +- .../Microsoft.NETCore.UniversalWindowsPlatform.builds | 10 ++++++++++ ...Microsoft.NETCore.UniversalWindowsPlatform.depproj | 2 +- .../{ => src}/project.json.template | 0 src/pkg/projects/dir.props | 9 +++++++-- src/src.builds | 11 +++++++++++ src/test/dir.proj | 4 ++-- 16 files changed, 62 insertions(+), 20 deletions(-) create mode 100644 src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.builds rename src/pkg/projects/Microsoft.NETCore.App/{ => src}/Microsoft.NETCore.App.depproj (96%) rename src/pkg/projects/Microsoft.NETCore.App/{ => src}/project.json.template (100%) create mode 100644 src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.builds rename src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/{ => src}/Microsoft.NETCore.UniversalWindowsPlatform.depproj (98%) rename src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/{ => src}/project.json.template (100%) create mode 100644 src/src.builds diff --git a/build.proj b/build.proj index c0cce518..9c218c5d 100644 --- a/build.proj +++ b/build.proj @@ -1,5 +1,5 @@ - + diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index eb9e5923..feffadd6 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -141,7 +141,7 @@ "definitionType": "task" }, "inputs": { - "solution": "$(PB_SourcesDirectory)/src/corehost/build.proj", + "solution": "$(PB_SourcesDirectory)/src/src.builds", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "$(PB_CommonMSBuildArgs)", diff --git a/dir.props b/dir.props index be6fbf45..bfc3e0c5 100644 --- a/dir.props +++ b/dir.props @@ -246,7 +246,8 @@ $(TargetRid).$(ConfigurationGroup) $(BinDir) - $(BaseOutputPath)$(OSPlatformConfig)\ + $(BaseOutputPath)$(OSPlatformConfig)\ + $(BaseOutputRootPath)\crossgen $(BaseOutputPath)$(OSPlatformConfig)\$(MSBuildProjectName)\ $(BaseIntermediateOutputPath)$(OSPlatformConfig)\ diff --git a/src/dir.proj b/src/dir.proj index f96a3a05..cadb81c7 100644 --- a/src/dir.proj +++ b/src/dir.proj @@ -7,13 +7,8 @@ true - - - true - - - + diff --git a/src/pkg/packages.builds b/src/pkg/packages.builds index a4e3942b..c9b666d6 100644 --- a/src/pkg/packages.builds +++ b/src/pkg/packages.builds @@ -1,10 +1,18 @@ + + + + BuildPackageLibraryReferences=false + - + + $(AdditionalProperties) + diff --git a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index c31bc3f4..b38e310a 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -57,7 +57,7 @@ - + NuGetRuntimeIdentifier=$(PackageTargetRuntime) diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.builds b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.builds new file mode 100644 index 00000000..586b0799 --- /dev/null +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.builds @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj similarity index 96% rename from src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj rename to src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index 0566b2d6..f1487071 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -10,6 +10,7 @@ .NETCoreApp,Version=v2.0 netcoreapp2.0 Microsoft.Private.CoreFx.NETCoreApp + $(CrossGenRootPath)/$(MSBuildProjectName)/$(NuGetRuntimeIdentifier) @@ -144,7 +145,7 @@ <_filesToCrossGen Include="@(FilesToPackage)" Condition="'%(FilesToPackage.IsNative)' != 'true' AND '%(FileName)' != 'System.Private.CoreLib' AND '%(FileName)' != 'mscorlib' AND '%(Extension)' == '.dll'"> - $(_crossGenIntermediatePath)/%(FileName)%(Extension) + $(CrossGenOutputPath)/%(TargetPath)/%(FileName)%(Extension) @@ -183,12 +184,13 @@ + - + + diff --git a/src/pkg/projects/Microsoft.NETCore.App/project.json.template b/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template similarity index 100% rename from src/pkg/projects/Microsoft.NETCore.App/project.json.template rename to src/pkg/projects/Microsoft.NETCore.App/src/project.json.template diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj index 2c1ac715..746d80b6 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj @@ -44,7 +44,7 @@ - + NuGetRuntimeIdentifier=$(PackageTargetRuntime) diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.builds b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.builds new file mode 100644 index 00000000..ac67eddb --- /dev/null +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.builds @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj similarity index 98% rename from src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj rename to src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj index 381789aa..35bd9d73 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.depproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj @@ -1,6 +1,6 @@ - + unused diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template similarity index 100% rename from src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/project.json.template rename to src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template diff --git a/src/pkg/projects/dir.props b/src/pkg/projects/dir.props index 1dae1b77..0ff644e3 100644 --- a/src/pkg/projects/dir.props +++ b/src/pkg/projects/dir.props @@ -83,15 +83,20 @@ $(Platform) + + + <_projectExtension Condition="Exists('$(MSBuildProjectName).pkgproj')">.pkgproj + <_projectExtension Condition="'$(_projectExtension)' == '' AND Exists('$(MSBuildProjectName).depproj')">.depproj + <_project Include="@(BuildRID)"> x64 %(Identity) - PackageTargetRuntime=%(Identity);Platform=%(Platform) + PackageTargetRuntime=%(Identity);NuGetRuntimeIdentifier=%(Identity);Platform=%(Platform) - + diff --git a/src/src.builds b/src/src.builds new file mode 100644 index 00000000..8c22e2df --- /dev/null +++ b/src/src.builds @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/test/dir.proj b/src/test/dir.proj index 3a535d65..fed1d5ed 100644 --- a/src/test/dir.proj +++ b/src/test/dir.proj @@ -1,5 +1,5 @@ - + @@ -13,7 +13,7 @@
- + From 72d9319463d6659e4b92d20e27e746cf612e17a2 Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Mon, 1 May 2017 14:12:23 -0700 Subject: [PATCH 260/625] Remove cross-gen phase from sharedFramework build This is now part of source build. --- src/managed/dir.proj | 54 -------------------------------------------- 1 file changed, 54 deletions(-) diff --git a/src/managed/dir.proj b/src/managed/dir.proj index a17861a5..6bdb070c 100644 --- a/src/managed/dir.proj +++ b/src/managed/dir.proj @@ -13,7 +13,6 @@ PublishSharedFrameworkAndSharedHost; GenerateRuntimeGraph; CopyHostArtifactsToSharedFramework; - CrossGenDirectory; GenerateVersionFile; @@ -111,59 +110,6 @@ Overwrite="true" /> - - - - $(PackageTargetRid) - transport.runtime.$(CrossgenRid).Microsoft.NetCore.Runtime.CoreCLR - $(PackagesDir)$(RuntimePackageId)/$(CoreCLRVersion)/tools - $(CrossgenPathRoot)/x86_arm/crossgen.exe - $(CrossgenPathRoot)/x64_arm64/crossgen.exe - $(CrossgenPathRoot)/crossgen$(ExeSuffix) - $(PackagesDir)$(RuntimePackageId)/$(CoreCLRVersion)/runtimes/$(CrossgenRid)/lib/netstandard1.0 - transport.runtime.$(CrossgenRid).Microsoft.NETCore.Jit - $(PackagesDir)$(JitPackageId)/$(JitVersion)/runtimes - $(JitPathRoot)/x86_arm/native/$(LibPrefix)clrjit$(LibSuffix) - $(JitPathRoot)/x64_arm64/native/$(LibPrefix)clrjit$(LibSuffix) - $(JitPathRoot)/$(CrossgenRid)/native/$(LibPrefix)clrjit$(LibSuffix) - $(IntermediateOutputRootPath)$([System.Guid]::NewGuid()) - - - - - - - - - - - - - - - - - - $(CoreLibsDir);$(SharedFrameworkNameAndVersionRoot) - -platform_assemblies_paths $(PlatformAssembliesPaths) -JITPath $(JitPath) - - - - - - - - - - - - - - - From 232c08eb868a80f836e2e3ec17b1b111271df83b Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Mon, 1 May 2017 14:24:55 -0700 Subject: [PATCH 261/625] Sign crossgen output from binary phase We're now producing cross-gened binaries during the binary build phase. Make sure to sign these as part of that phase before packaging. Since the packaged files are now already crossgened and signed we no longer need to resign them during shared framework publishing. --- .../Core-Setup-Signing-Windows-BT.json | 29 +------------------ sign.proj | 27 ++--------------- 2 files changed, 4 insertions(+), 52 deletions(-) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index feffadd6..6233ad2d 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -171,7 +171,7 @@ "solution": "$(PB_SourcesDirectory)\\sign.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignCoreHost $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs)", + "msbuildArguments": "/t:SignBinaries $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -256,33 +256,6 @@ "failOnStandardError": "false" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign Shared Framework Crossgened Assemblies", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\sign.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignSharedFrameworkCrossgenedAssemblies $(PB_CommonMSBuildArgs) $(MsbuildSigningArguments)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, { "enabled": true, "continueOnError": false, diff --git a/sign.proj b/sign.proj index 5a052913..722451d5 100644 --- a/sign.proj +++ b/sign.proj @@ -21,11 +21,11 @@ - + - + $(CertificateId) @@ -37,30 +37,9 @@ $(CertificateId) - - - - - - - - $(CertificateId) - - - $(CertificateId) - - - $(CertificateId) - - - $(CertificateId) - - - $(CertificateId) - - + $(CertificateId) From 5faff9aa8cbd925c68123f5e3210892108c11d36 Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Mon, 1 May 2017 14:36:02 -0700 Subject: [PATCH 262/625] Split managed build and sharedFramework publish Previously the managed build and shared frameworkPublishing were happening as part of the same phase. Split this up so that managed assemblies can be built in parallel with other binaries and signed at the same time. --- .../Core-Setup-Signing-Windows-BT.json | 35 +--- sign.proj | 6 - src/dir.proj | 2 +- src/managed/dir.proj | 187 +---------------- src/managed/sharedFramework.proj | 190 ++++++++++++++++++ src/src.builds | 1 + 6 files changed, 197 insertions(+), 224 deletions(-) create mode 100644 src/managed/sharedFramework.proj diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index 6233ad2d..cf360858 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -133,7 +133,7 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Build corehost", + "displayName": "Build binaries", "timeoutInMinutes": 0, "task": { "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", @@ -160,7 +160,7 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Sign HostFxr HostPolicy", + "displayName": "Sign binaries", "timeoutInMinutes": 0, "task": { "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", @@ -214,7 +214,7 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Build managed / publish sharedframework", + "displayName": "Build sharedframework layout", "timeoutInMinutes": 0, "task": { "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", @@ -222,7 +222,7 @@ "definitionType": "task" }, "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\managed\\dir.proj", + "solution": "$(PB_SourcesDirectory)\\src\\managed\\sharedFramework.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\sharedframework.log", @@ -256,33 +256,6 @@ "failOnStandardError": "false" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign Assemblies: *.dll", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\sign.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignAssemblies $(PB_CommonMSBuildArgs) $(MsbuildSigningArguments)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, { "enabled": true, "continueOnError": false, diff --git a/sign.proj b/sign.proj index 722451d5..f99e762e 100644 --- a/sign.proj +++ b/sign.proj @@ -43,13 +43,7 @@ $(CertificateId) - - - - - - $(CertificateId) diff --git a/src/dir.proj b/src/dir.proj index cadb81c7..82f9595c 100644 --- a/src/dir.proj +++ b/src/dir.proj @@ -10,7 +10,7 @@ - + diff --git a/src/managed/dir.proj b/src/managed/dir.proj index 6bdb070c..b8a3869e 100644 --- a/src/managed/dir.proj +++ b/src/managed/dir.proj @@ -3,23 +3,9 @@ - - - - - BuildProjectsForNuGetPackages; - PublishSharedFrameworkAndSharedHost; - GenerateRuntimeGraph; - CopyHostArtifactsToSharedFramework; - GenerateVersionFile; - - - - - - + @@ -41,175 +27,4 @@ - - - - - --fallbacksource $(PackagesOutDir) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - DepsProcessor - $(ProjectDir)tools-local/setuptools/independent/$(runtimeGraphGeneratorName) - $(IntermediateOutputRootPath)setuptools/independent/$(runtimeGraphGeneratorName) - win - osx - linux - - - - - - $(runtimeGraphGeneratorOutput)/$(runtimeGraphGeneratorName)$(ExeSuffix) - $(SharedFrameworkNameAndVersionRoot)\$(SharedFrameworkName).deps.json - - - - - - - - - - - - - - - - - - - - - - - - $(IntermediateOutputRootPath)lockedHostTemp - - - - - - - - --source https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v3/index.json --fallbacksource $(PackagesOutDir) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" - - - - - - --output $(CoreHostLockedDir) --no-build -r $(PackageTargetRid) - - - - - - - - - - - - - - - - $(MSBuildThisFileDirectory)sharedframework\framework\project.json.template - - - - - - - - \ No newline at end of file diff --git a/src/managed/sharedFramework.proj b/src/managed/sharedFramework.proj new file mode 100644 index 00000000..f96f6234 --- /dev/null +++ b/src/managed/sharedFramework.proj @@ -0,0 +1,190 @@ + + + + + + + + + + + PublishSharedFrameworkAndSharedHost; + GenerateRuntimeGraph; + CopyHostArtifactsToSharedFramework; + GenerateVersionFile; + + + + + + + + + --fallbacksource $(PackagesOutDir) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + DepsProcessor + $(ProjectDir)tools-local/setuptools/independent/$(runtimeGraphGeneratorName) + $(IntermediateOutputRootPath)setuptools/independent/$(runtimeGraphGeneratorName) + win + osx + linux + + + + + + $(runtimeGraphGeneratorOutput)/$(runtimeGraphGeneratorName)$(ExeSuffix) + $(SharedFrameworkNameAndVersionRoot)\$(SharedFrameworkName).deps.json + + + + + + + + + + + + + + + + + + + + + + + + $(IntermediateOutputRootPath)lockedHostTemp + + + + + + + + --source https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v3/index.json --fallbacksource $(PackagesOutDir) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" + + + + + + --output $(CoreHostLockedDir) --no-build -r $(PackageTargetRid) + + + + + + + + + + + + + + + + $(MSBuildThisFileDirectory)sharedframework\framework\project.json.template + + + + + + + + + \ No newline at end of file diff --git a/src/src.builds b/src/src.builds index 8c22e2df..8d9d3039 100644 --- a/src/src.builds +++ b/src/src.builds @@ -4,6 +4,7 @@ + From 1894744193b483b0315f8fa9baf73f6f86c29de9 Mon Sep 17 00:00:00 2001 From: chcosta Date: Mon, 1 May 2017 15:33:56 -0700 Subject: [PATCH 263/625] Update readme links (#2237) * Update readme links * Remove portable moniker --- README.md | 35 ++++++++++++++++------------------- dir.props | 3 +-- 2 files changed, 17 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index 209bf7a2..fb1e1761 100644 --- a/README.md +++ b/README.md @@ -34,11 +34,8 @@ Daily Builds |---------|:----------:|:----------:|:----------:| | **Windows (x64)** | [![][win-x64-badge-master]][win-x64-version-master]
[Installer][win-x64-installer-master]
[zip][win-x64-zip-master]
[Symbols (zip)][win-x64-symbols-zip-master] | [![][win-x64-badge-1.1.X]][win-x64-version-1.1.X]
[Installer][win-x64-installer-1.1.X]
[zip][win-x64-zip-1.1.X] | [![][win-x64-badge-preview]][win-x64-version-preview]
[Installer][win-x64-installer-preview]
[zip][win-x64-zip-preview] | | **Windows (x86)** | [![][win-x86-badge-master]][win-x86-version-master]
[Installer][win-x86-installer-master]
[zip][win-x86-zip-master]
[Symbols (zip)][win-x86-symbols-zip-master] | [![][win-x86-badge-1.1.X]][win-x86-version-1.1.X]
[Installer][win-x86-installer-1.1.X]
[zip][win-x86-zip-1.1.X] | [![][win-x86-badge-preview]][win-x86-version-preview]
[Installer][win-x86-installer-preview]
[zip][win-x86-zip-preview] | -| **Windows (arm32)** | [![][win-arm-badge-master]][win-arm-version-master]
[zip][win-arm-zip-master]
[Symbols (zip)][win-arm-symbols-zip-master] | N/A | N/A | -| **Windows (arm64)** | [![][win-arm64-badge-master]][win-arm64-version-master]
[zip][win-arm64-zip-master]
[Symbols (zip)][win-arm64-symbols-zip-master] | N/A | N/A | | **Mac OS X (x64)** | [![][osx-badge-master]][osx-version-master]
[Installer][osx-installer-master]
[tar.gz][osx-targz-master]
[Symbols (tar.gz)][osx-symbols-targz-master] | [![][osx-badge-1.1.X]][osx-version-1.1.X]
[Installer][osx-installer-1.1.X]
[tar.gz][osx-targz-1.1.X] | [![][osx-badge-preview]][osx-version-preview]
[Installer][osx-installer-preview]
[tar.gz][osx-targz-preview] | | **Linux (x64)** (for glibc based OS) | [![][linux-x64-badge-master-portable]][linux-x64-version-master-portable]
[tar.gz][linux-x64-targz-master-portable]
[Symbols (tar.gz)][linux-x64-symbols-targz-master-portable] | N/A | N/A | -| **Linux (arm)** (for glibc based OS) | [![][linux-arm-badge-master-portable]][linux-arm-version-master-portable]
[tar.gz][linux-arm-targz-master-portable]
[Symbols (tar.gz)][linux-arm-symbols-targz-master-portable] | N/A | N/A | | **Ubuntu 14.04 (x64)** | [![][ubuntu-14.04-badge-master]][ubuntu-14.04-version-master]
[Host][ubuntu-14.04-host-master]
[Host FX Resolver][ubuntu-14.04-hostfxr-master]
[Shared Framework][ubuntu-14.04-sharedfx-master]
[tar.gz][ubuntu-14.04-targz-master]
[Symbols (tar.gz)][ubuntu-14.04-symbols-targz-master] | [![][ubuntu-14.04-badge-1.1.X]][ubuntu-14.04-version-1.1.X]
[Host][ubuntu-14.04-host-1.1.X]
[Host FX Resolver][ubuntu-14.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-14.04-sharedfx-1.1.X]
[tar.gz][ubuntu-14.04-targz-1.1.X] | [![][ubuntu-14.04-badge-preview]][ubuntu-14.04-version-preview]
[Host][ubuntu-14.04-host-preview]
[Host FX Resolver][ubuntu-14.04-hostfxr-preview]
[Shared Framework][ubuntu-14.04-sharedfx-preview]
[tar.gz][ubuntu-14.04-targz-preview] | | **Ubuntu 16.04 (x64)** | [![][ubuntu-16.04-badge-master]][ubuntu-16.04-version-master]
[Host][ubuntu-16.04-host-master]
[Host FX Resolver][ubuntu-16.04-hostfxr-master]
[Shared Framework][ubuntu-16.04-sharedfx-master]
[tar.gz][ubuntu-16.04-targz-master]
[Symbols (tar.gz)][ubuntu-16.04-symbols-targz-master] | [![][ubuntu-16.04-badge-1.1.X]][ubuntu-16.04-version-1.1.X]
[Host][ubuntu-16.04-host-1.1.X]
[Host FX Resolver][ubuntu-16.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.04-sharedfx-1.1.X]
[tar.gz][ubuntu-16.04-targz-1.1.X] | [![][ubuntu-16.04-badge-preview]][ubuntu-16.04-version-preview]
[Host][ubuntu-16.04-host-preview]
[Host FX Resolver][ubuntu-16.04-hostfxr-preview]
[Shared Framework][ubuntu-16.04-sharedfx-preview]
[tar.gz][ubuntu-16.04-targz-preview] | | **Ubuntu 16.10 (x64)** | [![][ubuntu-16.10-badge-master]][ubuntu-16.10-version-master]
[Host][ubuntu-16.10-host-master]
[Host FX Resolver][ubuntu-16.10-hostfxr-master]
[Shared Framework][ubuntu-16.10-sharedfx-master]
[tar.gz][ubuntu-16.10-targz-master]
[Symbols (tar.gz)][ubuntu-16.10-symbols-targz-master] | [![][ubuntu-16.10-badge-1.1.X]][ubuntu-16.10-version-1.1.X]
[Host][ubuntu-16.10-host-1.1.X]
[Host FX Resolver][ubuntu-16.10-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.10-sharedfx-1.1.X]
[tar.gz][ubuntu-16.10-targz-1.1.X] | N/A | @@ -61,8 +58,8 @@ Daily Builds [build-1.0.X]: https://devdiv.visualstudio.com/DevDiv/_build/index?definitionId=4187&_a=completed -[win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_x64_Release_version_badge.svg -[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x64.portable.version +[win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x64_Release_version_badge.svg +[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x64.version [win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64.latest-portable.exe [win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest-portable.zip [win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest-portable.zip @@ -77,8 +74,8 @@ Daily Builds [win-x64-installer-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-win-x64.latest.exe [win-x64-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x64.latest.zip -[win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_x86_Release_version_badge.svg -[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x86.portable.version +[win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x86_Release_version_badge.svg +[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x86.version [win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86.latest-portable.exe [win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest-portable.zip [win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest-portable.zip @@ -93,18 +90,18 @@ Daily Builds [win-x86-installer-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-win-x86.latest.exe [win-x86-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x86.latest.zip -[win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_arm_Release_version_badge.svg +[win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_arm_Release_version_badge.svg [win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm.portable.version [win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm.latest-portable.zip [win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm.latest-portable.zip -[win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_portable_arm64_Release_version_badge.svg +[win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_arm64_Release_version_badge.svg [win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm64.portable.version [win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest-portable.zip [win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest-portable.zip -[osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx_portable_x64_Release_version_badge.svg -[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx.x64.portable.version +[osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx-x64_Release_version_badge.svg +[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx-x64.version [osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64.latest-portable.pkg [osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest-portable.tar.gz [osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest-portable.tar.gz @@ -120,17 +117,17 @@ Daily Builds [osx-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-osx-x64.latest.tar.gz -[linux-x64-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_portable_x64_Release_version_badge.svg -[linux-x64-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.x64.portable.version +[linux-x64-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux-x64_Release_version_badge.svg +[linux-x64-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux-x64.version [linux-x64-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64.latest-portable.tar.gz [linux-x64-symbols-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64.latest-portable.tar.gz -[linux-arm-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_portable_arm_Release_version_badge.svg +[linux-arm-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_arm_Release_version_badge.svg [linux-arm-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.arm.portable.version [linux-arm-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-arm.latest-portable.tar.gz [linux-arm-symbols-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm.latest-portable.tar.gz -[ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Ubuntu_x64_Release_version_badge.svg +[ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg [ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.14.04-x64.version [ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu-x64.latest.deb [ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu-x64.latest.deb @@ -153,7 +150,7 @@ Daily Builds [ubuntu-14.04-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-ubuntu-x64.latest.tar.gz -[ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Ubuntu_16_04_x64_Release_version_badge.svg +[ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg [ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04-x64.version [ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb @@ -176,8 +173,8 @@ Daily Builds [ubuntu-16.04-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-ubuntu.16.04-x64.latest.tar.gz -[ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Ubuntu_16_10_x64_Release_version_badge.svg -[ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.10.x64.version +[ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg +[ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.10-x64.version [ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.10-x64.latest.deb [ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb [ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb @@ -192,7 +189,7 @@ Daily Builds [ubuntu-16.10-targz-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/dotnet-ubuntu.16.10-x64.latest.tar.gz -[debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_Debian_x64_Release_version_badge.svg +[debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_debian.8-x64_Release_version_badge.svg [debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.debian.8-x64.version [debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-debian-x64.latest.deb [debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-debian-x64.latest.deb diff --git a/dir.props b/dir.props index be6fbf45..f3d7137c 100644 --- a/dir.props +++ b/dir.props @@ -266,8 +266,7 @@ false - _portable - $(BaseOutputRootPath)sharedfx_$(TargetRid)$(PortableLabel)_$(ConfigurationGroup)_version_badge.svg + $(BaseOutputRootPath)sharedfx_$(TargetRid)_$(ConfigurationGroup)_version_badge.svg From 282c8d3e278b675410e249eda17a5fade5e9e391 Mon Sep 17 00:00:00 2001 From: chcosta Date: Mon, 1 May 2017 17:58:38 -0700 Subject: [PATCH 264/625] Use dotnet nuget to push to myget feed (#2248) * Use dotnet nuget to push to myget feed * remove nugettoolpath * Set buildnumberminor to 9 instead of 0 * Fix comment * Remove comment --- dir.props | 11 ++++++----- publish/publish.proj | 5 ++--- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/dir.props b/dir.props index f3d7137c..81f8ae7f 100644 --- a/dir.props +++ b/dir.props @@ -61,6 +61,12 @@ + + 9 + false $(PreReleaseLabel)- $(VersionSuffix)$(BuildNumberMajor)-$(BuildNumberMinor) @@ -87,11 +93,6 @@ - - - $(ToolsDir)NuGet.CommandLine/NuGet.exe - - diff --git a/publish/publish.proj b/publish/publish.proj index cf472e23..7d111a0f 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -106,12 +106,11 @@ - $(NuGetToolPath) push -Source $(NuGetFeedUrl) -ApiKey $(NuGetApiKey) -Timeout $(NuGetPushTimeoutSeconds) - $(NuGetToolPath) push -Source $(NuGetSymbolsFeedUrl) -ApiKey $(NuGetApiKey) -Timeout $(NuGetPushTimeoutSeconds) + $(DotnetSdkToolCommand) nuget push --source $(NuGetFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) + $(DotnetSdkToolCommand) nuget push --source $(NuGetSymbolsFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) - From e2876222982f409678ebbf53041557eff092c9a5 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Mon, 1 May 2017 18:47:18 -0700 Subject: [PATCH 265/625] Update readme.md links, and fix casing in build finalization --- README.md | 62 +++++++++++++++--------------- tools-local/tasks/FinalizeBuild.cs | 2 +- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/README.md b/README.md index fb1e1761..bf64a1fc 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ Daily Builds | **Windows (x64)** | [![][win-x64-badge-master]][win-x64-version-master]
[Installer][win-x64-installer-master]
[zip][win-x64-zip-master]
[Symbols (zip)][win-x64-symbols-zip-master] | [![][win-x64-badge-1.1.X]][win-x64-version-1.1.X]
[Installer][win-x64-installer-1.1.X]
[zip][win-x64-zip-1.1.X] | [![][win-x64-badge-preview]][win-x64-version-preview]
[Installer][win-x64-installer-preview]
[zip][win-x64-zip-preview] | | **Windows (x86)** | [![][win-x86-badge-master]][win-x86-version-master]
[Installer][win-x86-installer-master]
[zip][win-x86-zip-master]
[Symbols (zip)][win-x86-symbols-zip-master] | [![][win-x86-badge-1.1.X]][win-x86-version-1.1.X]
[Installer][win-x86-installer-1.1.X]
[zip][win-x86-zip-1.1.X] | [![][win-x86-badge-preview]][win-x86-version-preview]
[Installer][win-x86-installer-preview]
[zip][win-x86-zip-preview] | | **Mac OS X (x64)** | [![][osx-badge-master]][osx-version-master]
[Installer][osx-installer-master]
[tar.gz][osx-targz-master]
[Symbols (tar.gz)][osx-symbols-targz-master] | [![][osx-badge-1.1.X]][osx-version-1.1.X]
[Installer][osx-installer-1.1.X]
[tar.gz][osx-targz-1.1.X] | [![][osx-badge-preview]][osx-version-preview]
[Installer][osx-installer-preview]
[tar.gz][osx-targz-preview] | -| **Linux (x64)** (for glibc based OS) | [![][linux-x64-badge-master-portable]][linux-x64-version-master-portable]
[tar.gz][linux-x64-targz-master-portable]
[Symbols (tar.gz)][linux-x64-symbols-targz-master-portable] | N/A | N/A | +| **Linux (x64)** (for glibc based OS) | [![][linux-x64-badge-master]][linux-x64-version-master]
[tar.gz][linux-x64-targz-master]
[Symbols (tar.gz)][linux-x64-symbols-targz-master] | N/A | N/A | | **Ubuntu 14.04 (x64)** | [![][ubuntu-14.04-badge-master]][ubuntu-14.04-version-master]
[Host][ubuntu-14.04-host-master]
[Host FX Resolver][ubuntu-14.04-hostfxr-master]
[Shared Framework][ubuntu-14.04-sharedfx-master]
[tar.gz][ubuntu-14.04-targz-master]
[Symbols (tar.gz)][ubuntu-14.04-symbols-targz-master] | [![][ubuntu-14.04-badge-1.1.X]][ubuntu-14.04-version-1.1.X]
[Host][ubuntu-14.04-host-1.1.X]
[Host FX Resolver][ubuntu-14.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-14.04-sharedfx-1.1.X]
[tar.gz][ubuntu-14.04-targz-1.1.X] | [![][ubuntu-14.04-badge-preview]][ubuntu-14.04-version-preview]
[Host][ubuntu-14.04-host-preview]
[Host FX Resolver][ubuntu-14.04-hostfxr-preview]
[Shared Framework][ubuntu-14.04-sharedfx-preview]
[tar.gz][ubuntu-14.04-targz-preview] | | **Ubuntu 16.04 (x64)** | [![][ubuntu-16.04-badge-master]][ubuntu-16.04-version-master]
[Host][ubuntu-16.04-host-master]
[Host FX Resolver][ubuntu-16.04-hostfxr-master]
[Shared Framework][ubuntu-16.04-sharedfx-master]
[tar.gz][ubuntu-16.04-targz-master]
[Symbols (tar.gz)][ubuntu-16.04-symbols-targz-master] | [![][ubuntu-16.04-badge-1.1.X]][ubuntu-16.04-version-1.1.X]
[Host][ubuntu-16.04-host-1.1.X]
[Host FX Resolver][ubuntu-16.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.04-sharedfx-1.1.X]
[tar.gz][ubuntu-16.04-targz-1.1.X] | [![][ubuntu-16.04-badge-preview]][ubuntu-16.04-version-preview]
[Host][ubuntu-16.04-host-preview]
[Host FX Resolver][ubuntu-16.04-hostfxr-preview]
[Shared Framework][ubuntu-16.04-sharedfx-preview]
[tar.gz][ubuntu-16.04-targz-preview] | | **Ubuntu 16.10 (x64)** | [![][ubuntu-16.10-badge-master]][ubuntu-16.10-version-master]
[Host][ubuntu-16.10-host-master]
[Host FX Resolver][ubuntu-16.10-hostfxr-master]
[Shared Framework][ubuntu-16.10-sharedfx-master]
[tar.gz][ubuntu-16.10-targz-master]
[Symbols (tar.gz)][ubuntu-16.10-symbols-targz-master] | [![][ubuntu-16.10-badge-1.1.X]][ubuntu-16.10-version-1.1.X]
[Host][ubuntu-16.10-host-1.1.X]
[Host FX Resolver][ubuntu-16.10-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.10-sharedfx-1.1.X]
[tar.gz][ubuntu-16.10-targz-1.1.X] | N/A | @@ -59,10 +59,10 @@ Daily Builds [win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x64_Release_version_badge.svg -[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x64.version -[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64.latest-portable.exe -[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest-portable.zip -[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest-portable.zip +[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win,x64.version +[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64.latest.exe +[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest.zip +[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest.zip [win-x64-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x64_Release_version_badge.svg [win-x64-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x64.version @@ -75,10 +75,10 @@ Daily Builds [win-x64-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x64.latest.zip [win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x86_Release_version_badge.svg -[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x86.version -[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86.latest-portable.exe -[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest-portable.zip -[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest-portable.zip +[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x86.version +[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86.latest.exe +[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest.zip +[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest.zip [win-x86-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x86_Release_version_badge.svg [win-x86-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x86.version @@ -91,20 +91,20 @@ Daily Builds [win-x86-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x86.latest.zip [win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_arm_Release_version_badge.svg -[win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm.portable.version -[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm.latest-portable.zip -[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm.latest-portable.zip +[win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm.version +[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm.latest.zip +[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm.latest.zip [win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_arm64_Release_version_badge.svg -[win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm64.portable.version -[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest-portable.zip -[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest-portable.zip +[win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm64.version +[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest.zip +[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest.zip [osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx-x64_Release_version_badge.svg -[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx-x64.version -[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64.latest-portable.pkg -[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest-portable.tar.gz -[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest-portable.tar.gz +[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx.x64.version +[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64.latest.pkg +[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest.tar.gz +[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz [osx-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_OSX_x64_Release_version_badge.svg [osx-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.osx.x64.version @@ -117,18 +117,18 @@ Daily Builds [osx-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-osx-x64.latest.tar.gz -[linux-x64-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux-x64_Release_version_badge.svg -[linux-x64-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux-x64.version -[linux-x64-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64.latest-portable.tar.gz -[linux-x64-symbols-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64.latest-portable.tar.gz +[linux-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux-x64_Release_version_badge.svg +[linux-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.x64.version +[linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64.latest.tar.gz +[linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz -[linux-arm-badge-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_arm_Release_version_badge.svg -[linux-arm-version-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.arm.portable.version -[linux-arm-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-arm.latest-portable.tar.gz -[linux-arm-symbols-targz-master-portable]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm.latest-portable.tar.gz +[linux-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_arm_Release_version_badge.svg +[linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.arm.version +[linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-arm.latest.tar.gz +[linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm.latest.tar.gz [ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg -[ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.14.04-x64.version +[ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.x64.version [ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu-x64.latest.deb [ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu-x64.latest.deb [ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu-x64.latest.deb @@ -151,7 +151,7 @@ Daily Builds [ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg -[ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04-x64.version +[ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04.x64.version [ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb @@ -174,7 +174,7 @@ Daily Builds [ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg -[ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.10-x64.version +[ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.10.x64.version [ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.10-x64.latest.deb [ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb [ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb @@ -190,7 +190,7 @@ Daily Builds [debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_debian.8-x64_Release_version_badge.svg -[debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.debian.8-x64.version +[debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.debian.8.x64.version [debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-debian-x64.latest.deb [debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-debian-x64.latest.deb [debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-debian-x64.latest.deb diff --git a/tools-local/tasks/FinalizeBuild.cs b/tools-local/tasks/FinalizeBuild.cs index edad2e87..9d7bebd5 100644 --- a/tools-local/tasks/FinalizeBuild.cs +++ b/tools-local/tasks/FinalizeBuild.cs @@ -126,7 +126,7 @@ namespace Microsoft.DotNet.Build.Tasks string[] blobs = GetBlobList(sourceFolder); foreach (string blob in blobs) { - string targetName = _versionRegex.Replace(Path.GetFileName(blob), "Latest"); + string targetName = _versionRegex.Replace(Path.GetFileName(blob), "latest"); string sourceBlob = blob.Replace($"/{ContainerName}/", ""); string destinationBlob = $"{destinationFolder}{targetName}"; Log.LogMessage($"Copying blob '{sourceBlob}' to '{destinationBlob}'"); From 9fdbae2bbb22762ebf4d97c705a5c0e1ca95394a Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Mon, 1 May 2017 17:18:17 -0700 Subject: [PATCH 266/625] remove api_sets related pal api --- src/corehost/cli/deps_resolver.cpp | 6 ------ src/corehost/cli/deps_resolver.h | 4 ---- src/corehost/cli/hostpolicy.cpp | 3 --- src/corehost/common/pal.h | 4 ---- src/corehost/common/pal.windows.cpp | 32 ----------------------------- 5 files changed, 49 deletions(-) diff --git a/src/corehost/cli/deps_resolver.cpp b/src/corehost/cli/deps_resolver.cpp index baafcb93..a1acb4e8 100644 --- a/src/corehost/cli/deps_resolver.cpp +++ b/src/corehost/cli/deps_resolver.cpp @@ -592,12 +592,6 @@ bool deps_resolver_t::resolve_probe_dirs( return report_missing_assembly_in_manifest(entry); } - if (m_api_set_paths.empty() && pal::need_api_sets() && - ends_with(entry.library_name, _X("Microsoft.NETCore.App"), false)) - { - m_api_set_paths.insert(action(candidate)); - } - return true; }; diff --git a/src/corehost/cli/deps_resolver.h b/src/corehost/cli/deps_resolver.h index 5e0c28b4..c0e8b034 100644 --- a/src/corehost/cli/deps_resolver.h +++ b/src/corehost/cli/deps_resolver.h @@ -110,10 +110,6 @@ public: return m_deps_file; } - const std::unordered_set& get_api_sets() const - { - return m_api_set_paths; - } private: static pal::string_t get_fx_deps(const pal::string_t& fx_dir, const pal::string_t& fx_name) diff --git a/src/corehost/cli/hostpolicy.cpp b/src/corehost/cli/hostpolicy.cpp index c48ed432..a8e48e48 100644 --- a/src/corehost/cli/hostpolicy.cpp +++ b/src/corehost/cli/hostpolicy.cpp @@ -146,9 +146,6 @@ int run(const arguments_t& args) size_t property_size = property_keys.size(); assert(property_keys.size() == property_values.size()); - // Add API sets to the process DLL search - pal::setup_api_sets(resolver.get_api_sets()); - // Bind CoreCLR pal::string_t clr_dir = get_directory(clr_path); trace::verbose(_X("CoreCLR path = '%s', CoreCLR dir = '%s'"), clr_path.c_str(), clr_dir.c_str()); diff --git a/src/corehost/common/pal.h b/src/corehost/common/pal.h index 3d830e94..a4981976 100644 --- a/src/corehost/common/pal.h +++ b/src/corehost/common/pal.h @@ -113,8 +113,6 @@ namespace pal typedef FARPROC proc_t; inline string_t exe_suffix() { return _X(".exe"); } - inline bool need_api_sets() { return true; } - void setup_api_sets(const std::unordered_set& api_sets); pal::string_t to_string(int value); @@ -165,8 +163,6 @@ namespace pal typedef void* proc_t; inline string_t exe_suffix() { return _X(""); } - inline bool need_api_sets() { return false; } - inline void setup_api_sets(const std::unordered_set& api_sets) { } pal::string_t to_string(int value); diff --git a/src/corehost/common/pal.windows.cpp b/src/corehost/common/pal.windows.cpp index b4f730b4..984aa7f5 100644 --- a/src/corehost/common/pal.windows.cpp +++ b/src/corehost/common/pal.windows.cpp @@ -34,38 +34,6 @@ bool pal::touch_file(const pal::string_t& path) return true; } -void pal::setup_api_sets(const std::unordered_set& api_sets) -{ - if (api_sets.empty()) - { - return; - } - - pal::string_t path; - - (void) getenv(_X("PATH"), &path); - - // We need this ugly hack, as the PInvoked DLL's static dependencies can come from - // some other NATIVE_DLL_SEARCH_DIRECTORIES and not necessarily side by side. However, - // CoreCLR.dll loads PInvoke DLLs with LOAD_WITH_ALTERED_SEARCH_PATH. Note that this - // option cannot be combined with LOAD_LIBRARY_SEARCH_USER_DIRS, so the AddDllDirectory - // doesn't help much in telling CoreCLR where to load the PInvoke DLLs from. - // So we resort to modifying the PATH variable on our own hoping Windows loader will do the right thing. - for (const auto& as : api_sets) - { - // AddDllDirectory is still needed for Standalone App's CoreCLR load. - ::AddDllDirectory(as.c_str()); - - // Path patch is needed for static dependencies of a PInvoked DLL load out of the nuget cache. - path.push_back(PATH_SEPARATOR); - path.append(as); - } - - trace::verbose(_X("Setting PATH=%s"), path.c_str()); - - ::SetEnvironmentVariableW(_X("PATH"), path.c_str()); -} - bool pal::getcwd(pal::string_t* recv) { recv->clear(); From da5f130a1bf103655ec9794389dcaa142f73d113 Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Mon, 1 May 2017 14:42:34 -0700 Subject: [PATCH 267/625] Move sharedFramework out of managed dir --- buildpipeline/Core-Setup-Signing-Windows-BT.json | 2 +- src/dir.proj | 2 +- .../framework/Program.cs | 0 .../framework/project.json.template | 0 src/{managed => sharedFramework}/sharedFramework.proj | 6 +++--- 5 files changed, 5 insertions(+), 5 deletions(-) rename src/{managed/sharedframework => sharedFramework}/framework/Program.cs (100%) rename src/{managed/sharedframework => sharedFramework}/framework/project.json.template (100%) rename src/{managed => sharedFramework}/sharedFramework.proj (97%) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index cf360858..9a3cff25 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -222,7 +222,7 @@ "definitionType": "task" }, "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\managed\\sharedFramework.proj", + "solution": "$(PB_SourcesDirectory)\\src\\sharedFramework\\sharedFramework.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\sharedframework.log", diff --git a/src/dir.proj b/src/dir.proj index 82f9595c..121aebc8 100644 --- a/src/dir.proj +++ b/src/dir.proj @@ -10,7 +10,7 @@ - + diff --git a/src/managed/sharedframework/framework/Program.cs b/src/sharedFramework/framework/Program.cs similarity index 100% rename from src/managed/sharedframework/framework/Program.cs rename to src/sharedFramework/framework/Program.cs diff --git a/src/managed/sharedframework/framework/project.json.template b/src/sharedFramework/framework/project.json.template similarity index 100% rename from src/managed/sharedframework/framework/project.json.template rename to src/sharedFramework/framework/project.json.template diff --git a/src/managed/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj similarity index 97% rename from src/managed/sharedFramework.proj rename to src/sharedFramework/sharedFramework.proj index f96f6234..5885a456 100644 --- a/src/managed/sharedFramework.proj +++ b/src/sharedFramework/sharedFramework.proj @@ -76,7 +76,7 @@ - + - + - $(MSBuildThisFileDirectory)sharedframework\framework\project.json.template + $(MSBuildThisFileDirectory)framework\project.json.template From a67b5aa3855888ed599797ed23e64f253a90a81a Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Mon, 1 May 2017 17:18:39 -0700 Subject: [PATCH 268/625] Remove workaround for DistroRID --- src/pkg/dir.proj | 9 +-------- src/pkg/projects/netcoreappRIDs.props | 8 ++++---- 2 files changed, 5 insertions(+), 12 deletions(-) diff --git a/src/pkg/dir.proj b/src/pkg/dir.proj index 8f59412e..55f5817f 100644 --- a/src/pkg/dir.proj +++ b/src/pkg/dir.proj @@ -5,14 +5,7 @@ - - - TargetsWindows=true - TargetsOSX=true;DistroRid=$(PackageTargetRid) - TargetsLinux=true;DistroRid=$(PackageTargetRid) - - - + diff --git a/src/pkg/projects/netcoreappRIDs.props b/src/pkg/projects/netcoreappRIDs.props index 9c7ffd58..dcbc85f7 100644 --- a/src/pkg/projects/netcoreappRIDs.props +++ b/src/pkg/projects/netcoreappRIDs.props @@ -3,10 +3,10 @@ $(DistroRid) - osx.10.12-$(Platform) - win7-$(Platform) - win8-$(Platform) - win10-$(Platform) + osx.10.12-$(Platform) + win7-$(Platform) + win8-$(Platform) + win10-$(Platform) From fca98438287bccae727b6bdc19f7363dc7fcc6fc Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Tue, 2 May 2017 09:33:52 -0700 Subject: [PATCH 269/625] Fix ordering --- buildpipeline/Core-Setup-Signing-Windows-BT.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index 34471a64..11f0afa9 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -403,7 +403,7 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Sign Bundle", + "displayName": "Sign engine", "timeoutInMinutes": 0, "task": { "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", @@ -411,10 +411,10 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\signing\\sign.proj", - "platform": "", + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments)", + "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signengine.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -457,7 +457,7 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Sign engine", + "displayName": "Sign Bundle", "timeoutInMinutes": 0, "task": { "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", @@ -465,10 +465,10 @@ "definitionType": "task" }, "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", - "platform": "$(PB_TargetArchitecture)", + "solution": "build_projects\\signing\\sign.proj", + "platform": "", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signengine.log", + "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", From 6f421a16f704d91c4e909fafacd21ad17a8c48ff Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Mon, 1 May 2017 17:19:03 -0700 Subject: [PATCH 270/625] Fix crossgen path separator and add opt-out --- .../src/Microsoft.NETCore.App.depproj | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index f1487071..75fd9a2b 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -138,7 +138,7 @@ - + <_crossGenIntermediatePath>$(IntermediateOutputPath)/crossgen @@ -164,7 +164,10 @@
- <_crossgenPlatformAssemblies>@(_crossgenPlatformDirectories->'%(Identity)', '%3B') + + <_pathSeparatorEscaped>$([MSBuild]::Escape($([System.IO.Path]::PathSeparator.ToString()))) + <_crossgenPlatformAssemblies>@(_crossgenPlatformDirectories->'%(Identity)', '$(_pathSeparatorEscaped)')
From feda6782a72f028a1b3568741374e560dc9a53f5 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Mon, 1 May 2017 13:59:15 -0700 Subject: [PATCH 271/625] Fix UpdateDependencies using VersionTools --- build.proj | 8 +++++- dependencies.props | 61 ++++++++++++++++++++++++++++++++++++++++------ dir.props | 2 ++ 3 files changed, 62 insertions(+), 9 deletions(-) diff --git a/build.proj b/build.proj index 9c218c5d..652121cf 100644 --- a/build.proj +++ b/build.proj @@ -60,12 +60,18 @@ - + + + + + + + diff --git a/dependencies.props b/dependencies.props index 1daff8ba..2702b89a 100644 --- a/dependencies.props +++ b/dependencies.props @@ -1,14 +1,59 @@ - - + + + + - 2.0.0-preview2-25226-02 - 2.0.0-preview2-25226-02 + f3d23289c93469d99c811fe911679d6c96ebfebf + f3d23289c93469d99c811fe911679d6c96ebfebf + f3d23289c93469d99c811fe911679d6c96ebfebf + + + + 2.0.0-preview2-25226-02 + 2.0.0-preview2-25226-02 + $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) + + + + + build-info/dotnet/ + master + $(MSBuildThisFileFullPath) - - <_ProjectJsonExcludes Include="$(SourceDir)test\**\project.json" /> - <_ProjectJsonExcludes Include="$(SourceDir)pkg\**\project.json" /> - + + $(BaseDotNetBuildInfo)corefx/$(DependencyBranch) + $(CoreFxCurrentRef) + + + $(BaseDotNetBuildInfo)coreclr/$(DependencyBranch) + $(CoreClrCurrentRef) + + + $(BaseDotNetBuildInfo)standard/$(DependencyBranch) + $(StandardCurrentRef) + + + + https://raw.githubusercontent.com/dotnet/versions + + + + $(MSBuildThisFileFullPath) + PlatformPackageVersion + Microsoft.NETCore.Platforms + + + $(MSBuildThisFileFullPath) + MicrosoftNETCoreRuntimeCoreCLRPackageVersion + Microsoft.NETCore.Runtime.CoreCLR + \ No newline at end of file diff --git a/dir.props b/dir.props index a64798eb..b338ea20 100644 --- a/dir.props +++ b/dir.props @@ -111,6 +111,8 @@ <_DnuExcludeProjectJsonFiles Include="$(MSBuildThisFileDirectory)Bin\**\project.json" /> <_ProjectJsonFiles Include="$(MSBuildThisFileDirectory)**\project.json" Exclude="@(_DnuExcludeProjectJsonFiles)" /> + + %(AdditionalArgs) --disable-parallel From 083d1d5888ebe9700be694ab1fe205e3feebbac3 Mon Sep 17 00:00:00 2001 From: Hyung-Kyu Choi Date: Wed, 3 May 2017 05:33:35 +0900 Subject: [PATCH 272/625] [ARM] Update rootfs for Tizen armel (#2163) * [ARM] Update cross rootfs for armel Tizen Update cross rootfs for armel Tizen Signed-off-by: Hyung-Kyu Choi * [ARM] Update Tizen armel CI Tizen armel CI make use of embedded rootfs as Ubuntu arm does. Signed-off-by: Hyung-Kyu Choi --- cross/armel/tizen-fetch.sh | 44 ++++++++++++++------------ cross/armel/tizen/tizen.patch | 15 --------- cross/armel/toolchain.cmake | 2 +- tools-local/scripts/arm32_ci_script.sh | 4 ++- 4 files changed, 27 insertions(+), 38 deletions(-) diff --git a/cross/armel/tizen-fetch.sh b/cross/armel/tizen-fetch.sh index 12521994..a0fa72b7 100755 --- a/cross/armel/tizen-fetch.sh +++ b/cross/armel/tizen-fetch.sh @@ -51,7 +51,7 @@ if [ ! -d $TMPDIR ]; then mkdir -p $TMPDIR fi -TIZEN_URL=http://download.tizen.org/releases/weekly/tizen +TIZEN_URL=http://download.tizen.org/releases/daily/tizen BUILD_XML=build.xml REPOMD_XML=repomd.xml PRIMARY_XML=primary.xml @@ -120,19 +120,21 @@ fetch_tizen_pkgs_init() fetch_tizen_pkgs() { - PROFILE=$1 - PACKAGE_XPATH_TPL='string(//*[local-name()="metadata"]/*[local-name()="package"][*[local-name()="name"][text()="_PKG_"]]/*[local-name()="location"]/@href)' + ARCH=$1 + PACKAGE_XPATH_TPL='string(//*[local-name()="metadata"]/*[local-name()="package"][*[local-name()="name"][text()="_PKG_"]][*[local-name()="arch"][text()="_ARCH_"]]/*[local-name()="location"]/@href)' - PACKAGE_CHECKSUM_XPATH_TPL='string(//*[local-name()="metadata"]/*[local-name()="package"][*[local-name()="name"][text()="_PKG_"]]/*[local-name()="checksum"]/text())' + PACKAGE_CHECKSUM_XPATH_TPL='string(//*[local-name()="metadata"]/*[local-name()="package"][*[local-name()="name"][text()="_PKG_"]][*[local-name()="arch"][text()="_ARCH_"]]/*[local-name()="checksum"]/text())' for pkg in ${@:2} do Inform "Fetching... $pkg" XPATH=${PACKAGE_XPATH_TPL/_PKG_/$pkg} + XPATH=${XPATH/_ARCH_/$ARCH} Xpath_get $XPATH $TMP_PRIMARY PKG_PATH=$XPATH_RESULT XPATH=${PACKAGE_CHECKSUM_XPATH_TPL/_PKG_/$pkg} + XPATH=${XPATH/_ARCH_/$ARCH} Xpath_get $XPATH $TMP_PRIMARY CHECKSUM=$XPATH_RESULT @@ -142,33 +144,33 @@ fetch_tizen_pkgs() Debug "Download $PKG_URL to $PKG_PATH" Fetch $PKG_URL $PKG_PATH true - + echo "$CHECKSUM $PKG_PATH" | sha256sum -c - > /dev/null if [ $? -ne 0 ]; then Error "Fail to fetch $PKG_URL to $PKG_PATH" Debug "Checksum = $CHECKSUM" exit 1 fi - done } -Inform "Initialize arm base" +Inform "Initialize base" fetch_tizen_pkgs_init arm base -Inform "fetch base common packages" -fetch_tizen_pkgs base gcc glibc glibc-devel linux-glibc-devel -Inform "fetch base coreclr packages" -fetch_tizen_pkgs base lldb lldb-devel libuuid libuuid-devel libgcc libstdc++ libstdc++-devel -Inform "fetch base corefx packages" -fetch_tizen_pkgs base libcom_err libcom_err-devel zlib zlib-devel libopenssl libopenssl-devel +Inform "fetch common packages" +fetch_tizen_pkgs armv7l gcc glibc glibc-devel +fetch_tizen_pkgs noarch linux-glibc-devel +Inform "fetch coreclr packages" +fetch_tizen_pkgs armv7l lldb lldb-devel libuuid libuuid-devel libgcc libstdc++ libstdc++-devel libunwind libunwind-devel +Inform "fetch corefx packages" +fetch_tizen_pkgs armv7l libcom_err libcom_err-devel zlib zlib-devel libopenssl libopenssl-devel -Inform "initialize arm mobile" -fetch_tizen_pkgs_init arm-wayland mobile -Inform "fetch mobile common packages" -fetch_tizen_pkgs mobile libicu-devel -Inform "fetch mobile coreclr packages" -fetch_tizen_pkgs mobile libunwind libunwind-devel tizen-release -Inform "fetch mobile corefx packages" -fetch_tizen_pkgs mobile gssdp gssdp-devel krb5 krb5-devel libcurl libcurl-devel +Inform "Initialize unified" +fetch_tizen_pkgs_init standard unified +Inform "fetch common packages" +fetch_tizen_pkgs armv7l libicu-devel +Inform "fetch coreclr packages" +fetch_tizen_pkgs armv7l tizen-release +Inform "fetch corefx packages" +fetch_tizen_pkgs armv7l gssdp gssdp-devel krb5 krb5-devel libcurl libcurl-devel diff --git a/cross/armel/tizen/tizen.patch b/cross/armel/tizen/tizen.patch index c92dc028..d223427c 100644 --- a/cross/armel/tizen/tizen.patch +++ b/cross/armel/tizen/tizen.patch @@ -16,18 +16,3 @@ diff -u -r a/usr/lib/libpthread.so b/usr/lib/libpthread.so OUTPUT_FORMAT(elf32-littlearm) -GROUP ( /lib/libpthread.so.0 /usr/lib/libpthread_nonshared.a ) +GROUP ( libpthread.so.0 libpthread_nonshared.a ) -diff -u -r a/usr/lib/libpthread.so b/usr/lib/libpthread.so ---- a/etc/os-release 2016-10-17 23:39:36.000000000 +0900 -+++ b/etc/os-release 2017-01-05 14:34:39.099867682 +0900 -@@ -1,7 +1,7 @@ - NAME=Tizen --VERSION="3.0.0 (Tizen3/Mobile)" -+VERSION="4.0.0 (Tizen4/Mobile)" - ID=tizen --VERSION_ID=3.0.0 --PRETTY_NAME="Tizen 3.0.0 (Tizen3/Mobile)" -+VERSION_ID=4.0.0 -+PRETTY_NAME="Tizen 4.0.0 (Tizen4/Mobile)" - ANSI_COLOR="0;36" --CPE_NAME="cpe:/o:tizen:tizen:3.0.0" -+CPE_NAME="cpe:/o:tizen:tizen:4.0.0" diff --git a/cross/armel/toolchain.cmake b/cross/armel/toolchain.cmake index ebc6e331..8efb6f32 100644 --- a/cross/armel/toolchain.cmake +++ b/cross/armel/toolchain.cmake @@ -17,7 +17,7 @@ set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -target ${TOOLCHAIN}") set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} --sysroot=${CROSS_ROOTFS}") if("$ENV{__CrossToolChainTargetRID}" MATCHES "tizen.*") - set(TIZEN_TOOLCHAIN "armv7l-tizen-linux-gnueabi/4.9.2") + set(TIZEN_TOOLCHAIN "armv7l-tizen-linux-gnueabi/6.2.1") include_directories(${CROSS_ROOTFS}/usr/lib/gcc/${TIZEN_TOOLCHAIN}/include/c++/) include_directories(${CROSS_ROOTFS}/usr/lib/gcc/${TIZEN_TOOLCHAIN}/include/c++/armv7l-tizen-linux-gnueabi) add_compile_options(-Wno-deprecated-declarations) # compile-time option diff --git a/tools-local/scripts/arm32_ci_script.sh b/tools-local/scripts/arm32_ci_script.sh index ca65a929..310a1dd5 100644 --- a/tools-local/scripts/arm32_ci_script.sh +++ b/tools-local/scripts/arm32_ci_script.sh @@ -189,7 +189,7 @@ function cross_build_core_setup_with_docker { # For armel Tizen, we are going to construct RootFS on the fly. case $__linuxCodeName in tizen) - __dockerImage=" t2wish/dotnetcore:ubuntu1404_cross_prereqs_v4" + __dockerImage=" hqueue/dotnetcore:ubuntu1404_cross_prereqs_v4-tizen_rootfs" __runtimeOS="tizen.4.0.0" ;; *) @@ -264,6 +264,8 @@ do --armel) __ARMRootfsImageBase="rootfs-t30.ext4" __buildArch="armel" + __skipRootFS=1 + __rootfsDir="/crossrootfs/armel.tizen.build" __linuxCodeName="tizen" ;; --linuxCodeName=*) From 367ec649bd83308a714dca19fb3d80996251b60d Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Tue, 2 May 2017 13:48:56 -0700 Subject: [PATCH 273/625] move all msbuild tasks to latest/x64, change order for cleanup agent --- .../Core-Setup-Signing-Windows-BT.json | 62 +++++++++---------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index 6afa21cc..79dd8724 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -206,7 +206,7 @@ "createLogFile": "false", "msbuildLocationMethod": "version", "msbuildVersion": "latest", - "msbuildArchitecture": "x86", + "msbuildArchitecture": "x64", "msbuildLocation": "" } }, @@ -233,7 +233,7 @@ "createLogFile": "false", "msbuildLocationMethod": "version", "msbuildVersion": "latest", - "msbuildArchitecture": "x86", + "msbuildArchitecture": "x64", "msbuildLocation": "" } }, @@ -394,8 +394,8 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "x86", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", "msbuildLocation": "" } }, @@ -453,6 +453,33 @@ "msbuildLocation": "" } }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup VSTS Agent", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\Tools\\scripts\\vstsagent\\cleanupagent.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, { "enabled": true, "continueOnError": false, @@ -484,33 +511,6 @@ "ArtifactType": "Container", "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Cleanup VSTS Agent", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\Tools\\scripts\\vstsagent\\cleanupagent.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } } ], "options": [ From 4c992ca97f070d0fa93deac8a164f5acca96b93c Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Wed, 26 Apr 2017 18:15:17 -0700 Subject: [PATCH 274/625] removing cwd for the lookup of shared fx and sdk --- .../design-docs/multilevel-sharedfx-lookup.md | 23 ++- src/corehost/cli/fxr/fx_muxer.cpp | 18 +-- src/corehost/cli/fxr/hostfxr.cpp | 6 +- .../GivenThatICareAboutMultilevelSDKLookup.cs | 66 +++----- ...nThatICareAboutMultilevelSharedFxLookup.cs | 150 ++++++------------ .../Command.cs | 17 ++ 6 files changed, 101 insertions(+), 179 deletions(-) diff --git a/Documentation/design-docs/multilevel-sharedfx-lookup.md b/Documentation/design-docs/multilevel-sharedfx-lookup.md index 296f1a06..5eaac3ca 100644 --- a/Documentation/design-docs/multilevel-sharedfx-lookup.md +++ b/Documentation/design-docs/multilevel-sharedfx-lookup.md @@ -80,7 +80,7 @@ At last, the coreclr is loaded into memory and called to run the application. ## Proposed changes -Almost every file search is done in relation to the executable directory. It would be better to be able to search for some files in other directories as well. Suggested folders are the current working directory, the user location and the global .NET location. The user and global folders may vary depending on the running operational system. They are defined as follows: +Almost every file search is done in relation to the executable directory. It would be better to be able to search for some files in other directories as well. Suggested folders are the user location and the global .NET location. The user and global folders may vary depending on the running operational system. They are defined as follows: User location: @@ -102,17 +102,15 @@ It’s being proposed that, if the specified version is defined through the conf - For productions: - 1. In relation to the current working directory: search for the most appropriate version by rolling forward. If it cannot be found, proceed to the next step. - 2. In relation to the user location: search for the most appropriate version by rolling forward. If it cannot be found, proceed to the next step. - 3. In relation to the executable directory: search for the most appropriate version by rolling forward. If it cannot be found, proceed to the next step. - 4. In relation to the global location: search for the most appropriate version by rolling forward. If it cannot be found, then we were not able to locate any compatible version. + 1. In relation to the user location: search for the most appropriate version by rolling forward. If it cannot be found, proceed to the next step. + 2. In relation to the executable directory: search for the most appropriate version by rolling forward. If it cannot be found, proceed to the next step. + 3. In relation to the global location: search for the most appropriate version by rolling forward. If it cannot be found, then we were not able to locate any compatible version. - For pre-releases: - 1. In relation to the current working directory: search for the specified version. If it cannot be found, search for the most appropriate version by rolling forward. If no compatible version can be found, proceed to the next step. - 2. In relation to the user location: search for the specified version. If it cannot be found, search for the most appropriate version by rolling forward. If no compatible version can be found, proceed to the next step. - 3. In relation to the executable directory: search for the specified version. If it cannot be found, search for the most appropriate version by rolling forward. If no compatible version can be found, proceed to the next step. - 4. In relation to the global location: search for the specified version. If it cannot be found, search for the most appropriate version by rolling forward. If no compatible version can be found, then we were not able to locate any compatible version. + 1. In relation to the user location: search for the specified version. If it cannot be found, search for the most appropriate version by rolling forward. If no compatible version can be found, proceed to the next step. + 2. In relation to the executable directory: search for the specified version. If it cannot be found, search for the most appropriate version by rolling forward. If no compatible version can be found, proceed to the next step. + 3. In relation to the global location: search for the specified version. If it cannot be found, search for the most appropriate version by rolling forward. If no compatible version can be found, then we were not able to locate any compatible version. In the case that the desired version is defined through an argument, the multi-level lookup will happen as well but it will only consider the exact specified version (it will not roll forward). @@ -134,7 +132,6 @@ By following similar logic, it will be possible to implement future changes in t The search would be conducted as follows: -1. In relation to the current working directory: search for the specified version. If it cannot be found, choose the most appropriate available version. If there’s no available version, proceed to the next step. -2. In relation to the user location: search for the specified version. If it cannot be found, choose the most appropriate available version. If there’s no available version, proceed to the next step. -3. In relation to the executable directory: search for the specified version. If it cannot be found, choose the most appropriate available version. If there’s no available version, proceed to the next step. -4. In relation to the global location: search for the specified version. If it cannot be found, choose the most appropriate available version. If there’s no available version, then we were not able to find any version folder and an error message must be returned. \ No newline at end of file +1. In relation to the user location: search for the specified version. If it cannot be found, choose the most appropriate available version. If there’s no available version, proceed to the next step. +2. In relation to the executable directory: search for the specified version. If it cannot be found, choose the most appropriate available version. If there’s no available version, proceed to the next step. +3. In relation to the global location: search for the specified version. If it cannot be found, choose the most appropriate available version. If there’s no available version, then we were not able to find any version folder and an error message must be returned. diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index ee393515..0df45f16 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -431,25 +431,19 @@ pal::string_t fx_muxer_t::resolve_fx_dir(host_mode_t mode, } // Multi-level SharedFX lookup will look for the most appropriate version in several locations - // by following the priority rank below (from 1 to 4): - // 1. Current working directory - // 2. User directory - // 3. .exe directory - // 4. Global .NET directory + // by following the priority rank below: + // User directory + // .exe directory + // Global .NET directory // If it is not activated, then only .exe directory will be considered std::vector hive_dir; - pal::string_t cwd; pal::string_t local_dir; pal::string_t global_dir; bool multilevel_lookup = multilevel_lookup_enabled(); if (multilevel_lookup) { - if (pal::getcwd(&cwd)) - { - hive_dir.push_back(cwd); - } if (pal::get_local_dotnet_dir(&local_dir)) { hive_dir.push_back(local_dir); @@ -643,10 +637,6 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal if (multilevel_lookup) { - if (!cwd.empty()) - { - hive_dir.push_back(cwd); - } if (pal::get_local_dotnet_dir(&local_dir)) { hive_dir.push_back(local_dir); diff --git a/src/corehost/cli/fxr/hostfxr.cpp b/src/corehost/cli/fxr/hostfxr.cpp index 73f8a85c..8eb7c4d0 100644 --- a/src/corehost/cli/fxr/hostfxr.cpp +++ b/src/corehost/cli/fxr/hostfxr.cpp @@ -118,11 +118,7 @@ SHARED_API int hostfxr_main(const int argc, const pal::char_t* argv[]) // working_dir // The directory where the search for global.json (which can // control the resolved SDK version) starts and proceeds -// upwards. This directory may also be searched for SDKs if -// multi-level lookup has not been disabled by the user's -// environment. This mimics the current working directory's -// interpretation when the dotnet exectuable resolves the SDK -// for CLI commands. +// upwards. // // buffer // The buffer where the resolved SDK path will be written. diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index 351d52f0..eb60c631 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -36,18 +36,11 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup string baseMultilevelDir = Path.Combine(artifactsDir, "dotnetMultilevelSDKLookup"); string multilevelDir = CalculateMultilevelDirectory(baseMultilevelDir); - // The three tested locations will be the cwd, the user folder and the exe dir. Both cwd and exe dir - // are easily overwritten, so they will be placed inside the multilevel folder. The actual user location will - // be used during tests. + // The three tested locations will be the cwd, the user folder and the exe dir. cwd is no longer supported. + // Both exe and user dir will be placed inside the multilevel folder + _currentWorkingDir = Path.Combine(multilevelDir, "cwd"); - if (RuntimeEnvironment.OperatingSystemPlatform == Platform.Windows) - { - _userDir = Environment.GetEnvironmentVariable("USERPROFILE"); - } - else - { - _userDir = Environment.GetEnvironmentVariable("HOME"); - } + _userDir = Path.Combine(multilevelDir, "user"); _executableDir = Path.Combine(multilevelDir, "exe"); // It's necessary to copy the entire publish folder to the exe dir because @@ -71,12 +64,11 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .BuildProject(); var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture; - // Set a dummy framework version (9999.0.0) in the cwd sharedFx location. We will - // always pick the framework from cwd to avoid interference with the sharedFxLookup - // test folders in the user dir - string cwdDummyFxVersion = Path.Combine(_currentWorkingDir, "shared", "Microsoft.NETCore.App", "9999.0.0"); + // Set a dummy framework version (9999.0.0) in the exe sharedFx location. We will + // always pick the framework from this to avoid interference with the sharedFxLookup + string exeDirDummyFxVersion = Path.Combine(_executableDir, "shared", "Microsoft.NETCore.App", "9999.0.0"); string builtSharedFxDir = fixture.BuiltDotnet.GreatestVersionSharedFxPath; - CopyDirectory(builtSharedFxDir, cwdDummyFxVersion); + CopyDirectory(builtSharedFxDir, exeDirDummyFxVersion); // The actual SDK version can be obtained from the built fixture. We'll use it to // locate the sdkDir from which we can get the files contained in the version folder @@ -107,12 +99,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0-dummy"); // Specified CLI version: none - // CWD: empty // User: empty // Exe: 9999.0.0 // Expected: 9999.0.0 from exe dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() .CaptureStdErr() @@ -132,6 +124,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // Expected: 9999.0.0 from user dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() .CaptureStdErr() @@ -145,12 +138,13 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup AddAvailableSdkVersions(_cwdSdkBaseDir, "9999.0.0-dummy"); // Specified CLI version: none - // CWD: 9999.0.0 + // CWD: 9999.0.0 --> should not be picked // User: 9999.0.0 // Exe: 9999.0.0 - // Expected: 9999.0.0 from cwd + // Expected: 9999.0.0 from User dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() .CaptureStdErr() @@ -158,7 +152,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(_cwdSelectedMessage); + .HaveStdErrContaining(_userSelectedMessage); // Remove dummy folders from user dir DeleteAvailableSdkVersions(_userSdkBaseDir, "9999.0.0-dummy"); @@ -186,6 +180,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // Expected: 9999.0.0 from user dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() .CaptureStdErr() @@ -200,12 +195,13 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0-global-dummy"); // Specified CLI version: 9999.0.0-global-dummy - // CWD: 9999.0.0 + // CWD: 9999.0.0 --> should not be picked // User: 9999.0.0, 9999.0.0-dummy // Exe: 9999.0.0-dummy, 9999.0.0-global-dummy - // Expected: 9999.0.0 from cwd + // Expected: 9999.0.0 from user dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() .CaptureStdErr() @@ -213,26 +209,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.0", _dotnetSdkDllMessageTerminator)); - - // Add a prerelease dummy version in the cwd - AddAvailableSdkVersions(_cwdSdkBaseDir, "9999.0.0-global-dummy"); - - // Specified CLI version: 9999.0.0-global-dummy - // CWD: 9999.0.0, 9999.0.0-global-dummy - // User: 9999.0.0, 9999.0.0-dummy - // Exe: 9999.0.0-dummy, 9999.0.0-global-dummy - // Expected: 9999.0.0-global-dummy from cwd - dotnet.Exec("help") - .WorkingDirectory(_currentWorkingDir) - .EnvironmentVariable("COREHOST_TRACE", "1") - .CaptureStdOut() - .CaptureStdErr() - .Execute() - .Should() - .Pass() - .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.0-global-dummy", _dotnetSdkDllMessageTerminator)); + .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.0", _dotnetSdkDllMessageTerminator)); // Remove dummy folders from user dir DeleteAvailableSdkVersions(_userSdkBaseDir, "9999.0.0", "9999.0.0-dummy"); @@ -256,6 +233,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // Expected: 9999.0.0 from exe dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() .CaptureStdErr() @@ -275,6 +253,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // Expected: 9999.0.1 from exe dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() .CaptureStdErr() @@ -294,6 +273,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // Expected: 9999.0.1 from exe dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() .CaptureStdErr() @@ -313,6 +293,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // Expected: 10000.0.0-dummy from exe dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() .CaptureStdErr() @@ -332,6 +313,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // Expected: 10000.0.0 from exe dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() .CaptureStdErr() diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs index b132307f..70481294 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs @@ -39,14 +39,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // are easily overwritten, so they will be placed inside the multilevel folder. The actual user location will // be used during tests _currentWorkingDir = Path.Combine(multilevelDir, "cwd"); - if (RuntimeEnvironment.OperatingSystemPlatform == Platform.Windows) - { - _userDir = Environment.GetEnvironmentVariable("USERPROFILE"); - } - else - { - _userDir = Environment.GetEnvironmentVariable("HOME"); - } + _userDir = Path.Combine(multilevelDir, "user"); _executableDir = Path.Combine(multilevelDir, "exe"); // SharedFxBaseDirs contain all available version folders @@ -98,13 +91,13 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.0"); // Version: 9999.0.0 - // CWD: empty // User: empty // Exe: 9999.0.0 // Expected: 9999.0.0 from exe dir dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") + .WithUserProfile(_userDir) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -117,13 +110,13 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku AddAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.0.0"); // Version: 9999.0.0 - // CWD: empty // User: 9999.0.0 // Exe: 9999.0.0 // Expected: 9999.0.0 from user dir dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") + .WithUserProfile(_userDir) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -136,20 +129,21 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku AddAvailableSharedFxVersions(_cwdSharedFxBaseDir, "9999.0.0"); // Version: 9999.0.0 - // CWD: 9999.0.0 + // CWD: 9999.0.0 --> should not be picked // User: 9999.0.0 // Exe: 9999.0.0 - // Expected: 9999.0.0 from cwd + // Expected: 9999.0.0 from user dir dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") + .WithUserProfile(_userDir) .CaptureStdOut() .CaptureStdErr() .Execute() .Should() .Pass() .And - .HaveStdErrContaining(_cwdSelectedMessage); + .HaveStdErrContaining(_userSelectedMessage); // Remove dummy folders from user dir DeleteAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.0.0"); @@ -173,13 +167,13 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku SetRuntimeConfigJson(runtimeConfig, "9999.0.0-dummy0"); // Version: 9999.0.0-dummy0 - // CWD: empty // User: 9999.0.2, 9999.0.0-dummy2 // Exe: 9999.0.0, 9999.0.0-dummy0 // Expected: 9999.0.0-dummy2 from user dir dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") + .WithUserProfile(_userDir) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -188,24 +182,24 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .And .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.0-dummy2")); - // Add a prerelease dummy version in CWD - AddAvailableSharedFxVersions(_cwdSharedFxBaseDir, "9999.0.0-dummy1"); + // Add a prerelease dummy version in userdir + AddAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.0.0-dummy1"); // Version: 9999.0.0-dummy0 - // CWD: 9999.0.0-dummy1 - // User: 9999.0.2, 9999.0.0-dummy2 + // User: 9999.0.2, 9999.0.0-dummy1, 9999.0.0-dummy2 // Exe: 9999.0.0, 9999.0.0-dummy0 - // Expected: 9999.0.0-dummy1 from cwd + // Expected: 9999.0.0-dummy1 from User dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") + .WithUserProfile(_userDir) .CaptureStdOut() .CaptureStdErr() .Execute() .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.0-dummy1")); + .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.0-dummy1")); // Set desired version = 9999.0.0 SetRuntimeConfigJson(runtimeConfig, "9999.0.0"); @@ -218,6 +212,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") + .WithUserProfile(_userDir) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -226,25 +221,6 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .And .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.2")); - // Add a production dummy version in CWD - AddAvailableSharedFxVersions(_cwdSharedFxBaseDir, "9999.0.1"); - - // Version: 9999.0.0 - // CWD: 9999.0.1, 9999.0.0-dummy1 - // User: 9999.0.2, 9999.0.0-dummy2 - // Exe: 9999.0.0, 9999.0.0-dummy0 - // Expected: 9999.0.1 from cwd - dotnet.Exec(appDll) - .WorkingDirectory(_currentWorkingDir) - .EnvironmentVariable("COREHOST_TRACE", "1") - .CaptureStdOut() - .CaptureStdErr() - .Execute() - .Should() - .Pass() - .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.0.1")); - // Remove dummy folders from user dir DeleteAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.0.2", "9999.0.0-dummy2"); } @@ -259,18 +235,17 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku var appDll = fixture.TestProject.AppDll; // Add some dummy versions - AddAvailableSharedFxVersions(_cwdSharedFxBaseDir, "9999.0.1", "9999.0.0-dummy0"); AddAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.0.2", "9999.0.0-dummy2"); AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.0", "9999.0.3", "9999.0.0-dummy3"); // Version: 9999.0.0 (through --fx-version arg) - // CWD: 9999.0.1, 9999.0.0-dummy0 // User: 9999.0.2, 9999.0.0-dummy2 // Exe: 9999.0.0, 9999.0.3, 9999.0.0-dummy3 // Expected: 9999.0.0 from exe dir dotnet.Exec("--fx-version", "9999.0.0", appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") + .WithUserProfile(_userDir) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -280,13 +255,13 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.0")); // Version: 9999.0.0-dummy1 (through --fx-version arg) - // CWD: 9999.0.1, 9999.0.0-dummy0 // User: 9999.0.2, 9999.0.0-dummy2 // Exe: 9999.0.0, 9999.0.3, 9999.0.0-dummy3 // Expected: no compatible version dotnet.Exec("--fx-version", "9999.0.0-dummy1", appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") + .WithUserProfile(_userDir) .CaptureStdOut() .CaptureStdErr() .Execute(fExpectedToFail:true) @@ -312,15 +287,16 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku string runtimeConfig = Path.Combine(fixture.TestProject.OutputDirectory, "SharedFxLookupPortableApp.runtimeconfig.json"); SetRuntimeConfigJson(runtimeConfig, "9999.0.0"); - // Add some dummy versions in the cwd - AddAvailableSharedFxVersions(_cwdSharedFxBaseDir, "10000.1.1", "10000.1.3"); + // Add some dummy versions in the exe + AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "10000.1.1", "10000.1.3"); // Version: 9999.0.0 // 'Roll forward on no candidate fx' enabled through env var - // CWD: 10000.1.1, 10000.1.3 - // Expected: 10000.1.3 from cwd + // exe: 10000.1.1, 10000.1.3 + // Expected: 10000.1.3 from exe dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() @@ -329,17 +305,18 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "10000.1.3")); + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "10000.1.3")); - // Add a dummy version in the cwd - AddAvailableSharedFxVersions(_cwdSharedFxBaseDir, "9999.1.1"); + // Add a dummy version in the exe dir + AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.1.1"); // Version: 9999.0.0 // 'Roll forward on no candidate fx' enabled through env var - // CWD: 9999.1.1, 10000.1.1, 10000.1.3 - // Expected: 9999.1.1 from cwd + // exe: 9999.1.1, 10000.1.1, 10000.1.3 + // Expected: 9999.1.1 from exe dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() @@ -348,7 +325,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_cwdSelectedMessage, "9999.1.1")); + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.1.1")); } [Fact] @@ -364,15 +341,16 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku string runtimeConfig = Path.Combine(fixture.TestProject.OutputDirectory, "SharedFxLookupPortableApp.runtimeconfig.json"); SetRuntimeConfigJson(runtimeConfig, "9999.1.1"); - // Add some dummy versions in the cwd - AddAvailableSharedFxVersions(_cwdSharedFxBaseDir, "9998.0.1", "9998.1.0", "9999.0.0", "9999.0.1", "9999.1.0"); + // Add some dummy versions in the exe + AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9998.0.1", "9998.1.0", "9999.0.0", "9999.0.1", "9999.1.0"); // Version: 9999.1.1 // 'Roll forward on no candidate fx' enabled through env var - // CWD: 9998.0.1, 9998.1.0, 9999.0.0, 9999.0.1, 9999.1.0 + // exe: 9998.0.1, 9998.1.0, 9999.0.0, 9999.0.1, 9999.1.0 // Expected: no compatible version dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() @@ -402,12 +380,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // Version: 9999.0.0 // 'Roll forward on no candidate fx' enabled through env var - // CWD: empty // User: empty // Exe: 9999.1.0 // Expected: 9999.1.0 from exe dir dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() @@ -423,12 +401,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // Version: 9999.0.0 // 'Roll forward on no candidate fx' enabled through env var - // CWD: empty // User: 9999.1.1 // Exe: 9999.1.0 // Expected: 9999.1.1 from user dir dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() @@ -439,27 +417,6 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .And .HaveStdErrContaining(_userSelectedMessage); - // Add a dummy version in the cwd - AddAvailableSharedFxVersions(_cwdSharedFxBaseDir, "10000.0.0"); - - // Version: 9999.0.0 - // 'Roll forward on no candidate fx' enabled through env var - // CWD: 10000.0.0 - // User: 9999.1.1 - // Exe: 9999.1.0 - // Expected: 10000.0.0 from cwd - dotnet.Exec(appDll) - .WorkingDirectory(_currentWorkingDir) - .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") - .EnvironmentVariable("COREHOST_TRACE", "1") - .CaptureStdOut() - .CaptureStdErr() - .Execute() - .Should() - .Pass() - .And - .HaveStdErrContaining(_cwdSelectedMessage); - // Remove dummy folders from user dir DeleteAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.1.1"); } @@ -479,26 +436,9 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku SetRuntimeConfigJson(runtimeConfig, "9999.0.0", 1); // Add some dummy versions - AddAvailableSharedFxVersions(_cwdSharedFxBaseDir, "9999.1.0"); + AddAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.1.0"); AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.0"); - // Version: 9999.0.0 - // 'Roll forward on no candidate fx' enabled through runtimeconfig - // CWD: 9999.1.0 - // User: empty - // Exe: 9999.0.0 - // Expected: 9999.1.0 from cwd - dotnet.Exec(appDll) - .WorkingDirectory(_currentWorkingDir) - .EnvironmentVariable("COREHOST_TRACE", "1") - .CaptureStdOut() - .CaptureStdErr() - .Execute() - .Should() - .Pass() - .And - .HaveStdErrContaining(_cwdSelectedMessage); - // Set desired version = 9999.0.0 // Disable 'roll forward on no candidate fx' through runtimeconfig runtimeConfig = Path.Combine(fixture.TestProject.OutputDirectory, "SharedFxLookupPortableApp.runtimeconfig.json"); @@ -506,12 +446,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // Version: 9999.0.0 // 'Roll forward on no candidate fx' disabled through runtimeconfig - // CWD: 9999.1.0 - // User: empty + // User: 9999.1.0 // Exe: 9999.0.0 // Expected: 9999.0.0 from exe dir dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() @@ -538,17 +478,17 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku SetRuntimeConfigJson(runtimeConfig, "9999.0.0", 0); // Add some dummy versions - AddAvailableSharedFxVersions(_cwdSharedFxBaseDir, "9999.1.0"); + AddAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.1.0"); AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.0"); // Version: 9999.0.0 // 'Roll forward on no candidate fx' enabled through argument - // CWD: 9999.1.0 - // User: empty + // User: 9999.1.0 // Exe: 9999.0.0 - // Expected: 9999.1.0 from cwd + // Expected: 9999.1.0 from User dotnet.Exec("--roll-forward-on-no-candidate-fx", "1", appDll) .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() .CaptureStdErr() @@ -556,7 +496,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .Should() .Pass() .And - .HaveStdErrContaining(_cwdSelectedMessage); + .HaveStdErrContaining(_userSelectedMessage); // Set desired version = 9999.0.0 // Enable 'roll forward on no candidate fx' through Runtimeconfig @@ -564,12 +504,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // Version: 9999.0.0 // 'Roll forward on no candidate fx' disabled through argument - // CWD: 9999.1.0 - // User: empty + // User: 9999.1.0 // Exe: 9999.0.0 // Expected: 9999.0.0 from exe dir dotnet.Exec("--roll-forward-on-no-candidate-fx", "0", appDll) .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Command.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Command.cs index 132fc010..4ecba533 100644 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Command.cs +++ b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Command.cs @@ -8,6 +8,7 @@ using System.IO; using System.Linq; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; +using Microsoft.DotNet.InternalAbstractions; namespace Microsoft.DotNet.Cli.Build.Framework { @@ -222,6 +223,22 @@ namespace Microsoft.DotNet.Cli.Build.Framework return this; } + public Command WithUserProfile(string userprofile) + { + string userDir; + if (RuntimeEnvironment.OperatingSystemPlatform == Platform.Windows) + { + userDir = "USERPROFILE"; + } + else + { + userDir = "HOME"; + } + + _process.StartInfo.Environment[userDir] = userprofile; + return this; + } + public Command EnvironmentVariable(string name, string value) { _process.StartInfo.Environment[name] = value; From 2093eb48a8666135f218e8497f8f219a410c4d1e Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Tue, 2 May 2017 15:04:01 -0700 Subject: [PATCH 275/625] Add source to framework symbols packages --- .../src/Microsoft.NETCore.App.depproj | 13 +++++++++++++ ...crosoft.NETCore.UniversalWindowsPlatform.depproj | 13 +++++++++++++ 2 files changed, 26 insertions(+) diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index 75fd9a2b..9b0e4f3a 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -134,6 +134,19 @@
+ + + <_sourcePaths Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\sources')" /> + <_sourcePaths Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\src')" /> + + + <_sourceFile Condition="'%(_sourcePaths.Identity)' != ''" Include="%(_sourcePaths.Identity)\**\*.*" /> + + src\%(RecursiveDir)%(FileName)%(Extension) + true + + +
diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj index 35bd9d73..283be558 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj @@ -87,6 +87,19 @@ + + + <_sourcePaths Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\sources')" /> + <_sourcePaths Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\src')" /> + + + <_sourceFile Condition="'%(_sourcePaths.Identity)' != ''" Include="%(_sourcePaths.Identity)\**\*.*" /> + + src\%(RecursiveDir)%(FileName)%(Extension) + true + + +
From 231b561d93e78eb07369d3c9a2428ab2f41bf70c Mon Sep 17 00:00:00 2001 From: chcosta Date: Tue, 2 May 2017 15:47:46 -0700 Subject: [PATCH 276/625] Extract engine bundle, sign, reattach; also do vsts agent cleanup (#2235) * Extract engine bundle, sign, reattach; also do vsts agent cleanup * Fix ordering * move all msbuild tasks to latest/x64, change order for cleanup agent --- .../Core-Setup-Signing-Windows-BT.json | 167 +++++++++--------- src/pkg/packaging/dir.props | 1 + src/pkg/packaging/windows/package.props | 1 + src/pkg/packaging/windows/package.targets | 9 + 4 files changed, 93 insertions(+), 85 deletions(-) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index 9a3cff25..79dd8724 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -206,7 +206,7 @@ "createLogFile": "false", "msbuildLocationMethod": "version", "msbuildVersion": "latest", - "msbuildArchitecture": "x86", + "msbuildArchitecture": "x64", "msbuildLocation": "" } }, @@ -233,29 +233,10 @@ "createLogFile": "false", "msbuildLocationMethod": "version", "msbuildVersion": "latest", - "msbuildArchitecture": "x86", + "msbuildArchitecture": "x64", "msbuildLocation": "" } }, - { - "enabled": false, - "continueOnError": false, - "alwaysRun": false, - "displayName": "PublishSharedFramework", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,PublishSharedFrameworkAndSharedHost $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": false, @@ -310,25 +291,6 @@ "msbuildLocation": "" } }, - { - "enabled": false, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Test and Package", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,Test,InitPackage,GenerateVersionBadge,GenerateZip,GenerateMsis,GenerateNugetPackages $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": false, @@ -357,64 +319,88 @@ } }, { - "enabled": false, + "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Generate Bundle", + "displayName": "Extract engine from bundle", "timeoutInMinutes": 0, "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", "versionSpec": "1.*", "definitionType": "task" }, "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,GenerateBundles $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:ExtractEngineBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\extractengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" } }, { - "enabled": false, + "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Extract Engine from bundle", + "displayName": "Sign engine", "timeoutInMinutes": 0, "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", "versionSpec": "1.*", "definitionType": "task" }, "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,ExtractEngineFromBundle $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" } }, { - "enabled": false, + "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Reattach Engine to Bundle", + "displayName": "Reattach engine to bundle", "timeoutInMinutes": 0, "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", "versionSpec": "1.*", "definitionType": "task" }, "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,ReattachEngineToBundle $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:ReattachEngineToBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\reattachengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" } }, { - "enabled": false, + "enabled": true, "continueOnError": false, "alwaysRun": false, "displayName": "Sign Bundle", @@ -435,7 +421,7 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", + "msbuildVersion": "latest", "msbuildArchitecture": "x64", "msbuildLocation": "" } @@ -467,6 +453,33 @@ "msbuildLocation": "" } }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup VSTS Agent", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\Tools\\scripts\\vstsagent\\cleanupagent.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, { "enabled": true, "continueOnError": false, @@ -480,25 +493,6 @@ }, "inputs": {} }, - { - "enabled": false, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Publish Build Artifacts", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "build.cmd", - "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,Publish $(PB_PortableBuild)", - "modifyEnvironment": "false", - "workingFolder": "", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": true, @@ -663,6 +657,9 @@ "value": "x64", "allowOverride": true }, + "PB_CleanAgent": { + "value": "true" + }, "PB_PublishRidAgnosticPackages": { "value": "false" }, diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index 5ba14204..0a60817b 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -25,6 +25,7 @@ dotnet-$(ProductMoniker)$(CombinedInstallerExtension) + dotnet-$(ProductMoniker)-engine.exe dotnet-host-$(ProductMoniker)$(InstallerExtension) dotnet-hostfxr-$(ProductMoniker)$(InstallerExtension) dotnet-sharedframework-$(ProductMoniker)$(InstallerExtension) diff --git a/src/pkg/packaging/windows/package.props b/src/pkg/packaging/windows/package.props index 5997ab4e..813217e3 100644 --- a/src/pkg/packaging/windows/package.props +++ b/src/pkg/packaging/windows/package.props @@ -9,5 +9,6 @@ $(TargetArchitecture) x86 x64 + $(WixToolsDir)\insignia.exe \ No newline at end of file diff --git a/src/pkg/packaging/windows/package.targets b/src/pkg/packaging/windows/package.targets index 80313203..e8a90098 100644 --- a/src/pkg/packaging/windows/package.targets +++ b/src/pkg/packaging/windows/package.targets @@ -107,4 +107,13 @@
+ + + + + + + + + \ No newline at end of file From 97fa1af03c4769d3496e6a8a25575dc5312d1568 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Tue, 2 May 2017 16:36:09 -0700 Subject: [PATCH 277/625] Fix signing --- buildpipeline/Core-Setup-Signing-Windows-BT.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index 79dd8724..cb040098 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -304,7 +304,7 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\sign.proj", - "platform": "", + "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignMsiAndCab $(PB_CommonMSBuildArgs) $(MsbuildSigningArguments)", "clean": "false", @@ -357,7 +357,7 @@ "definitionType": "task" }, "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "solution": "$(PB_SourcesDirectory)\\sign.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signengine.log", @@ -411,10 +411,10 @@ "definitionType": "task" }, "inputs": { - "solution": "build_projects\\signing\\sign.proj", - "platform": "", + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments)", + "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signbundle.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", From 1a53416f59d687d2bf535418c65e50d922c18a93 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Tue, 2 May 2017 18:26:37 -0700 Subject: [PATCH 278/625] Remove Dotnet.exe from shared fx --- src/sharedFramework/sharedFramework.proj | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/sharedFramework/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj index 5885a456..5c4a7de5 100644 --- a/src/sharedFramework/sharedFramework.proj +++ b/src/sharedFramework/sharedFramework.proj @@ -44,6 +44,7 @@ + @@ -87,8 +88,6 @@ - - @@ -106,6 +105,18 @@ linux + + + + + + + + + + @(TrimPkgsFromDeps ->'--remove %(Identity)', ' ') + + @@ -115,7 +126,7 @@ - @@ -187,4 +198,4 @@
- \ No newline at end of file + From edb1ecab80f4606bc796847e64f4366fef490564 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Wed, 3 May 2017 11:11:19 -0700 Subject: [PATCH 279/625] Revert "remove trailing DIR_SEPARATOR from APP_CONTEXT_BASE_DIRECTORY" This reverts commit 8ef546301462dea5a369e0836a2f2f05e225c8ce. --- src/corehost/cli/hostpolicy.cpp | 6 +----- src/corehost/common/utils.cpp | 16 +++++----------- src/corehost/common/utils.h | 1 - 3 files changed, 6 insertions(+), 17 deletions(-) diff --git a/src/corehost/cli/hostpolicy.cpp b/src/corehost/cli/hostpolicy.cpp index a8e48e48..eb41ed82 100644 --- a/src/corehost/cli/hostpolicy.cpp +++ b/src/corehost/cli/hostpolicy.cpp @@ -80,11 +80,7 @@ int run(const arguments_t& args) // Note: these variables' lifetime should be longer than coreclr_initialize. std::vector tpa_paths_cstr, app_base_cstr, native_dirs_cstr, resources_dirs_cstr, fx_deps, deps, clrjit_path_cstr, probe_directories; pal::pal_clrstring(probe_paths.tpa, &tpa_paths_cstr); - - //removing trailing directory seperator for app compat reasons - pal::string_t trimmed_app_dir = trim_end(args.app_dir, DIR_SEPARATOR); - pal::pal_clrstring(trimmed_app_dir, &app_base_cstr); - + pal::pal_clrstring(args.app_dir, &app_base_cstr); pal::pal_clrstring(probe_paths.native, &native_dirs_cstr); pal::pal_clrstring(probe_paths.resources, &resources_dirs_cstr); diff --git a/src/corehost/common/utils.cpp b/src/corehost/common/utils.cpp index 19aa516b..5aeb9820 100644 --- a/src/corehost/common/utils.cpp +++ b/src/corehost/common/utils.cpp @@ -129,7 +129,11 @@ pal::string_t get_filename(const pal::string_t& path) pal::string_t get_directory(const pal::string_t& path) { - pal::string_t ret = trim_end(path, DIR_SEPARATOR); + pal::string_t ret = path; + while (!ret.empty() && ret.back() == DIR_SEPARATOR) + { + ret.pop_back(); + } // Find the last dir separator auto path_sep = ret.find_last_of(DIR_SEPARATOR); @@ -284,16 +288,6 @@ bool get_global_shared_store_dir(pal::string_t* dir) return true; } -pal::string_t trim_end(const pal::string_t& path, pal::char_t elem) -{ - pal::string_t ret = path; - while (!ret.empty() && ret.back() == elem) - { - ret.pop_back(); - } - return ret; -} - bool get_local_shared_store_dir(pal::string_t* dir) { if (!pal::get_local_dotnet_dir(dir)) diff --git a/src/corehost/common/utils.h b/src/corehost/common/utils.h index 3fad1ba2..dbbc3271 100644 --- a/src/corehost/common/utils.h +++ b/src/corehost/common/utils.h @@ -42,5 +42,4 @@ bool skip_utf8_bom(pal::ifstream_t* stream); bool get_env_shared_store_dirs(std::vector* dirs, const pal::string_t& arch, const pal::string_t& tfm); bool get_local_shared_store_dir(pal::string_t* recv); bool get_global_shared_store_dir(pal::string_t* recv); -pal::string_t trim_end(const pal::string_t& path, pal::char_t elem); #endif From ef9669bfdbb9616240ee123ce4b5f66b83d0b54f Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Wed, 3 May 2017 13:23:07 -0700 Subject: [PATCH 280/625] Update dependencies to latest --- dependencies.props | 10 +++++----- src/pkg/deps/project.json | 2 +- .../Microsoft.NETCore.App/src/project.json.template | 8 ++++---- .../src/project.json.template | 8 ++++---- .../independent/DepsProcessor/project.json.template | 6 +++--- 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/dependencies.props b/dependencies.props index 2702b89a..3efa88f3 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,14 +9,14 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - f3d23289c93469d99c811fe911679d6c96ebfebf - f3d23289c93469d99c811fe911679d6c96ebfebf - f3d23289c93469d99c811fe911679d6c96ebfebf + e74aedf83ab127ce85c44b877eb4dc267c5b997f + e74aedf83ab127ce85c44b877eb4dc267c5b997f + e74aedf83ab127ce85c44b877eb4dc267c5b997f - 2.0.0-preview2-25226-02 - 2.0.0-preview2-25226-02 + 2.0.0-preview2-25303-04 + 2.0.0-preview2-25303-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) diff --git a/src/pkg/deps/project.json b/src/pkg/deps/project.json index 4a226539..d66e5c64 100644 --- a/src/pkg/deps/project.json +++ b/src/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25226-02" + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25303-04" }, "frameworks": { "dnxcore50": { diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template b/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template index 4f87ed39..ece5c970 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template +++ b/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25226-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25226-02", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25303-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25303-02", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25226-02", - "NETStandard.Library": "2.0.0-preview2-25226-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25303-04", + "NETStandard.Library": "2.0.0-preview2-25303-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template index 4d3e6e86..d54438ec 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25226-02", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25226-02", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25226-02", - "NETStandard.Library": "2.0.0-preview2-25226-01", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25303-04", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25303-02", + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25303-04", + "NETStandard.Library": "2.0.0-preview2-25303-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", diff --git a/tools-local/setuptools/independent/DepsProcessor/project.json.template b/tools-local/setuptools/independent/DepsProcessor/project.json.template index 422a7605..915d5004 100644 --- a/tools-local/setuptools/independent/DepsProcessor/project.json.template +++ b/tools-local/setuptools/independent/DepsProcessor/project.json.template @@ -10,8 +10,8 @@ "System.Runtime.Serialization.Json": "4.0.2", "Microsoft.DotNet.ProjectModel": "1.0.0-rc2-002794", "Microsoft.DotNet.Cli.Utils": "1.0.0-preview2-002794", - "NETStandard.Library": "1.6.1-preview1-24508-08", - "Microsoft.NETCore.Runtime.CoreCLR": "1.1.0-beta-24509-04" + "NETStandard.Library": "2.0.0-preview2-25303-01", + "Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25303-02" }, "frameworks": { "netcoreapp1.0": { @@ -23,6 +23,6 @@ } }, "runtimes": { - "{RID}" : {} + "{RID}": {} } } From c36d0ddeb4d5387405636bbd3314701de90a7030 Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Wed, 3 May 2017 14:24:00 -0700 Subject: [PATCH 281/625] Remove workaround for cross-targeting crossgen path --- .../src/Microsoft.NETCore.App.depproj | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index 75fd9a2b..85dd5ab4 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -36,12 +36,8 @@ - - <_crossDir Condition="'$(NuGetRuntimeIdentifier)' == 'win8-arm'">/x86_AnyCPU - <_crossDir Condition="'$(NuGetRuntimeIdentifier)' == 'win10-arm64'">/x64_AnyCPU + <_crossDir Condition="'$(NuGetRuntimeIdentifier)' == 'win8-arm'">/x86_arm + <_crossDir Condition="'$(NuGetRuntimeIdentifier)' == 'win10-arm64'">/x64_arm64 From c2ed89bc874f3330ca4a510111f9476721fc3acb Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Mon, 1 May 2017 11:50:10 -0700 Subject: [PATCH 282/625] Build/publish "managed" projects with 2.0 SDK --- build.proj | 3 ++ dir.props | 5 +++ ...crosoft.DotNet.PlatformAbstractions.csproj | 34 ++++++++++++++ ...icrosoft.DotNet.PlatformAbstractions.xproj | 19 -------- .../project.json | 30 ------------- ...icrosoft.Extensions.DependencyModel.csproj | 44 +++++++++++++++++++ ...Microsoft.Extensions.DependencyModel.xproj | 18 -------- .../project.json | 39 ---------------- src/managed/dir.proj | 8 ++-- tools-local/tasks/GetBuildableFrameworks.cs | 21 +++++---- 10 files changed, 100 insertions(+), 121 deletions(-) create mode 100644 src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj delete mode 100644 src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.xproj delete mode 100644 src/managed/Microsoft.DotNet.PlatformAbstractions/project.json create mode 100644 src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj delete mode 100644 src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.xproj delete mode 100644 src/managed/Microsoft.Extensions.DependencyModel/project.json diff --git a/build.proj b/build.proj index 652121cf..53309f28 100644 --- a/build.proj +++ b/build.proj @@ -53,6 +53,9 @@ + + +
diff --git a/dir.props b/dir.props index b338ea20..1b53d81f 100644 --- a/dir.props +++ b/dir.props @@ -120,6 +120,9 @@ %(AdditionalArgs) --disable-parallel --infer-runtimes + + + @@ -134,6 +137,8 @@ $(DnuRestoreCommand) restore $(DnuRestoreCommand) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" $(DnuRestoreSource) $(DnuRestoreCommand) --lock + + $(DotnetSdkToolCommand) restore --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" $(DnuRestoreSource) diff --git a/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj b/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj new file mode 100644 index 00000000..eb8803b2 --- /dev/null +++ b/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj @@ -0,0 +1,34 @@ + + + + Abstractions for making code that uses file system and environment testable. + 2.0.0 + net45;netstandard1.3 + true + true + Microsoft.DotNet.PlatformAbstractions + ../../../tools-local/setuptools/Key.snk + true + true + Microsoft.DotNet.PlatformAbstractions + git + git://github.com/dotnet/core-setup + + + + + + + + + + + + + + + + + + + diff --git a/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.xproj b/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.xproj deleted file mode 100644 index 6d9fb1e6..00000000 --- a/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0.25420 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - 2ccdcd52-50d0-47aa-8f37-15a1ef3ec04a - Microsoft.DotNet.PlatformAbstractions - ..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\artifacts\bin - - - - 2.0 - - - \ No newline at end of file diff --git a/src/managed/Microsoft.DotNet.PlatformAbstractions/project.json b/src/managed/Microsoft.DotNet.PlatformAbstractions/project.json deleted file mode 100644 index 692ce757..00000000 --- a/src/managed/Microsoft.DotNet.PlatformAbstractions/project.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "description": "Abstractions for making code that uses file system and environment testable.", - "version": "2.0.0-*", - "buildOptions": { - "warningsAsErrors": true, - "keyFile": "../../../tools-local/setuptools/Key.snk", - "allowUnsafe": true - }, - "frameworks": { - "net45": {}, - "netstandard1.3": { - "dependencies": { - "System.AppContext": "4.1.0", - "System.Collections": "4.0.11", - "System.IO": "4.1.0", - "System.IO.FileSystem": "4.0.1", - "System.Reflection.TypeExtensions": "4.1.0", - "System.Runtime.Extensions": "4.1.0", - "System.Runtime.InteropServices": "4.1.0", - "System.Runtime.InteropServices.RuntimeInformation": "4.0.0" - } - } - }, - "packOptions": { - "repository": { - "type": "git", - "url": "git://github.com/dotnet/core-setup" - } - } -} diff --git a/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj b/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj new file mode 100644 index 00000000..09ea401d --- /dev/null +++ b/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj @@ -0,0 +1,44 @@ + + + + Abstractions for reading `.deps` files. + 2.0.0 + net451;netstandard1.3;netstandard1.6 + true + Microsoft.Extensions.DependencyModel + ../../../tools-local/setuptools/Key.snk + true + true + Microsoft.Extensions.DependencyModel + git + git://github.com/dotnet/core-setup + $(PackageTargetFallback);portable-net45+wp80+win8+wpa81+dnxcore50 + $(PackageTargetFallback);portable-net45+wp80+win8+wpa81+dnxcore50 + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.xproj b/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.xproj deleted file mode 100644 index af468481..00000000 --- a/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.xproj +++ /dev/null @@ -1,18 +0,0 @@ - - - - 14.0.23107 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - 688870c8-9843-4f9e-8576-d39290ad0f25 - Microsoft.Extensions.DependencyModel - ..\..\..\Bin\obj\$(MSBuildProjectName) - ..\..\..\Bin\$(MSBuildProjectName) - - - 2.0 - - - \ No newline at end of file diff --git a/src/managed/Microsoft.Extensions.DependencyModel/project.json b/src/managed/Microsoft.Extensions.DependencyModel/project.json deleted file mode 100644 index 49cffdf5..00000000 --- a/src/managed/Microsoft.Extensions.DependencyModel/project.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "description": "Abstractions for reading `.deps` files.", - "version": "2.0.0-*", - "buildOptions": { - "warningsAsErrors": true, - "keyFile": "../../../tools-local/setuptools/Key.snk" - }, - "dependencies": { - "Microsoft.DotNet.PlatformAbstractions": { - "target": "project" - }, - "Newtonsoft.Json": "9.0.1" - }, - "frameworks": { - "net451": {}, - "netstandard1.3": { - "imports": "portable-net45+wp80+win8+wpa81+dnxcore50", - "dependencies": { - "System.Diagnostics.Debug": "4.0.11", - "System.Dynamic.Runtime": "4.0.11", - "System.Linq": "4.1.0" - } - }, - "netstandard1.6": { - "imports": "portable-net45+wp80+win8+wpa81+dnxcore50", - "dependencies": { - "System.Diagnostics.Debug": "4.0.11", - "System.Dynamic.Runtime": "4.0.11", - "System.Linq": "4.1.0" - } - } - }, - "packOptions": { - "repository": { - "type": "git", - "url": "git://github.com/dotnet/core-setup" - } - } -} diff --git a/src/managed/dir.proj b/src/managed/dir.proj index b8a3869e..130baf66 100644 --- a/src/managed/dir.proj +++ b/src/managed/dir.proj @@ -10,12 +10,12 @@ - --build-base-path $(IntermediateOutputForPackaging) --configuration $(ConfigurationGroup) + /p:Configuration=$(ConfigurationGroup) - - + + - \ No newline at end of file diff --git a/tools-local/tasks/GetBuildableFrameworks.cs b/tools-local/tasks/GetBuildableFrameworks.cs index 098cb34e..54c6eb88 100644 --- a/tools-local/tasks/GetBuildableFrameworks.cs +++ b/tools-local/tasks/GetBuildableFrameworks.cs @@ -8,6 +8,7 @@ using System.IO; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System.Collections.Generic; +using System.Text.RegularExpressions; using Microsoft.Build.Utilities; namespace Microsoft.DotNet.Build.Tasks @@ -31,21 +32,19 @@ namespace Microsoft.DotNet.Build.Tasks List args = new List(); foreach (var projectJsonPath in ProjectJsonPaths) { - using (TextReader projectFileReader = File.OpenText(projectJsonPath.ItemSpec)) + string dir = Path.GetDirectoryName(projectJsonPath.ItemSpec); + string text = File.ReadAllText(projectJsonPath.ItemSpec); + Match match = Regex.Match(text, "(.*)"); + if (match.Groups.Count == 2) { - - var projectJsonReader = new JsonTextReader(projectFileReader); - var serializer = new JsonSerializer(); - var project = serializer.Deserialize(projectJsonReader); - var dir = Path.GetDirectoryName(projectJsonPath.ItemSpec); - var frameworksSection = project.Value("frameworks"); - foreach (var framework in frameworksSection.Properties()) + string[] tfms = match.Groups[1].Value.Split(';'); + foreach (string framework in tfms) { if (OSGroup == "Windows_NT" - || framework.Name.StartsWith("netstandard") - || framework.Name.StartsWith("netcoreapp")) + || framework.StartsWith("netstandard") + || framework.StartsWith("netcoreapp")) { - args.Add($"--framework {framework.Name} {dir}"); + args.Add($"--framework {framework} {dir}"); } } } From badc12e319526858b9c400654d86f7b11cb13af5 Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Mon, 1 May 2017 12:16:28 -0700 Subject: [PATCH 283/625] Fix packaging of "managed" projects. --- src/pkg/packaging/dir.proj | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 12337288..57b45667 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -160,18 +160,18 @@ - - + + - --build-base-path $(IntermediateOutputForPackaging) + --output $(PackagesOutDir) - --configuration $(Configuration) + --configuration $(ConfigurationGroup) --version-suffix $(VersionSuffix) - + \ No newline at end of file From e2d9d8d85caeb83b6278f48bc09bbd5ef63dfa84 Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Mon, 1 May 2017 15:22:25 -0700 Subject: [PATCH 284/625] Start porting tests to 2.0 CLI --- .../HostActivationTests.csproj | 26 +++++++++++ .../HostActivationTests.xproj | 20 --------- src/test/HostActivationTests/project.json | 27 ------------ ...ft.Extensions.DependencyModel.Tests.csproj | 33 ++++++++++++++ ...oft.Extensions.DependencyModel.Tests.xproj | 19 -------- .../project.json | 35 --------------- src/test/TestUtils/TestUtils.csproj | 25 +++++++++++ src/test/TestUtils/TestUtils.xproj | 21 --------- src/test/TestUtils/project.json | 44 ------------------- src/test/bootstrap/.cliversion | 2 +- src/test/dir.proj | 39 +++++++--------- src/test/dir.props | 4 +- 12 files changed, 103 insertions(+), 192 deletions(-) create mode 100644 src/test/HostActivationTests/HostActivationTests.csproj delete mode 100644 src/test/HostActivationTests/HostActivationTests.xproj delete mode 100644 src/test/HostActivationTests/project.json create mode 100644 src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj delete mode 100644 src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.xproj delete mode 100644 src/test/Microsoft.Extensions.DependencyModel.Tests/project.json create mode 100644 src/test/TestUtils/TestUtils.csproj delete mode 100644 src/test/TestUtils/TestUtils.xproj delete mode 100644 src/test/TestUtils/project.json diff --git a/src/test/HostActivationTests/HostActivationTests.csproj b/src/test/HostActivationTests/HostActivationTests.csproj new file mode 100644 index 00000000..c72985fe --- /dev/null +++ b/src/test/HostActivationTests/HostActivationTests.csproj @@ -0,0 +1,26 @@ + + + + netcoreapp2.0 + HostActivationTests + HostActivationTests + true + 1.0.4 + $(PackageTargetFallback);dotnet5.4;portable-net451+win8 + + + + + + + + + + + + + + + + + diff --git a/src/test/HostActivationTests/HostActivationTests.xproj b/src/test/HostActivationTests/HostActivationTests.xproj deleted file mode 100644 index 9d0e9c69..00000000 --- a/src/test/HostActivationTests/HostActivationTests.xproj +++ /dev/null @@ -1,20 +0,0 @@ - - - - 14.0 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - 386d412c-003c-47b1-8258-0e35865cb7c4 - Microsoft.DotNet.Tools.Publish.Tests - - - 2.0 - - - - - - - \ No newline at end of file diff --git a/src/test/HostActivationTests/project.json b/src/test/HostActivationTests/project.json deleted file mode 100644 index 7ba90da9..00000000 --- a/src/test/HostActivationTests/project.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "version": "1.0.0-*", - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "1.0.0" - }, - "System.Runtime.Serialization.Primitives": "4.1.1", - "xunit": "2.1.0", - "xunit.netcore.extensions": "1.0.0-prerelease-00206", - "dotnet-test-xunit": "1.0.0-rc2-192208-24", - "System.Runtime.InteropServices.RuntimeInformation": "4.0.0", - "TestUtils": { - "target": "project" - }, - "Newtonsoft.Json": "9.0.1" - }, - "frameworks": { - "netcoreapp2.0": { - "imports": [ - "dotnet5.4", - "portable-net451+win8" - ] - } - }, - "testRunner": "xunit" -} diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj new file mode 100644 index 00000000..4ca3d705 --- /dev/null +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj @@ -0,0 +1,33 @@ + + + + Microsoft.DotNet.Tools.Tests.Utilities Class Library + netcoreapp1.0 + Microsoft.Extensions.DependencyModel.Tests + ../../../tools-local/setuptools/Key.snk + true + true + Microsoft.Extensions.DependencyModel.Tests + true + 1.0.4 + $(PackageTargetFallback);dotnet5.4;portable-net451+win8 + + + + + + + + + + + + + + + + + + + + diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.xproj b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.xproj deleted file mode 100644 index 93ba20b9..00000000 --- a/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0.23107 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - 4a4711d8-4312-49fc-87b5-4f183f4c6a51 - Microsoft.Extensions.DependencyModel.Tests - - - 2.0 - - - - - - \ No newline at end of file diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/project.json b/src/test/Microsoft.Extensions.DependencyModel.Tests/project.json deleted file mode 100644 index 14a77650..00000000 --- a/src/test/Microsoft.Extensions.DependencyModel.Tests/project.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "version": "1.0.0-*", - "description": "Microsoft.DotNet.Tools.Tests.Utilities Class Library", - "buildOptions": { - "keyFile": "../../../tools-local/setuptools/Key.snk" - }, - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "1.0.0" - }, - "System.Diagnostics.TraceSource": "4.0.0", - "Microsoft.Extensions.DependencyModel": { - "target": "project" - }, - "Microsoft.DotNet.PlatformAbstractions": { - "target": "project" - }, - "Microsoft.DotNet.InternalAbstractions": "1.0.0", - "FluentAssertions": "4.0.0", - "moq.netcore": "4.4.0-beta8", - "xunit": "2.1.0", - "dotnet-test-xunit": "1.0.0-rc2-192208-24", - "Newtonsoft.Json": "9.0.1" - }, - "frameworks": { - "netcoreapp1.0": { - "imports": [ - "dotnet5.4", - "portable-net451+win8" - ] - } - }, - "testRunner": "xunit" -} diff --git a/src/test/TestUtils/TestUtils.csproj b/src/test/TestUtils/TestUtils.csproj new file mode 100644 index 00000000..772a50b3 --- /dev/null +++ b/src/test/TestUtils/TestUtils.csproj @@ -0,0 +1,25 @@ + + + + netcoreapp1.0 + true + TestUtils + TestUtils + 1.0.4 + $(PackageTargetFallback);dotnet5.4;portable-net451+win8 + + + + + + + + + + + + + + + + diff --git a/src/test/TestUtils/TestUtils.xproj b/src/test/TestUtils/TestUtils.xproj deleted file mode 100644 index dd3162e8..00000000 --- a/src/test/TestUtils/TestUtils.xproj +++ /dev/null @@ -1,21 +0,0 @@ - - - - - 14.0 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - 42095367-4423-4157-bd31-d1a8e3b823b9 - Microsoft.DotNet.CoreSetup.Tests.TestUtils - - - 2.0 - - - - - - - \ No newline at end of file diff --git a/src/test/TestUtils/project.json b/src/test/TestUtils/project.json deleted file mode 100644 index d89f7dff..00000000 --- a/src/test/TestUtils/project.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "version": "1.0.0-*", - "buildOptions": { - "allowUnsafe": true, - "compile": { - "include": [ - "../build/shared-build-targets-utils/Utils/DotNetCli.cs", - "../build/shared-build-targets-utils/Utils/EnvVars.cs", - "../build/Microsoft.DotNet.Cli.Build.Framework/AnsiConsole.cs", - "../build/Microsoft.DotNet.Cli.Build.Framework/AnsiColorExtensions.cs", - "../build/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs", - "../build/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.cs", - "../build/Microsoft.DotNet.Cli.Build.Framework/BuildReporter.cs", - "../build/Microsoft.DotNet.Cli.Build.Framework/Command.cs", - "../build/Microsoft.DotNet.Cli.Build.Framework/CommandResult.cs", - "../build/Microsoft.DotNet.Cli.Build.Framework/Constants.cs", - "../build/Microsoft.DotNet.Cli.Build.Framework/Reporter.cs", - "../build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildPlatform.cs", - "../build/Microsoft.DotNet.Cli.Build.Framework/CurrentPlatform.cs" - ] - } - }, - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "1.0.0" - }, - "FluentAssertions": "4.0.0", - "System.Runtime.Serialization.Primitives": "4.1.1", - "xunit": "2.1.0", - "xunit.netcore.extensions": "1.0.0-prerelease-00206", - "dotnet-test-xunit": "1.0.0-rc2-192208-24", - "System.Runtime.InteropServices.RuntimeInformation": "4.0.0", - "Microsoft.DotNet.InternalAbstractions": "1.0.0-rc2-002702" - }, - "frameworks": { - "netcoreapp1.0": { - "imports": [ - "dotnet5.4", - "portable-net451+win8" - ] - } - } -} diff --git a/src/test/bootstrap/.cliversion b/src/test/bootstrap/.cliversion index 4a198d5f..ddee3053 100644 --- a/src/test/bootstrap/.cliversion +++ b/src/test/bootstrap/.cliversion @@ -1 +1 @@ -1.0.0-preview3-003886 +2.0.0-preview1-005899 \ No newline at end of file diff --git a/src/test/dir.proj b/src/test/dir.proj index fed1d5ed..5563cf25 100644 --- a/src/test/dir.proj +++ b/src/test/dir.proj @@ -3,10 +3,13 @@ + + $(DotnetSdkToolCommand) + + DetermineTestOutputDirectory; - InitBaseDotnetCli; RestoreTests; BuildTests; RunTests; @@ -26,24 +29,10 @@ - - - - $(TestsOutputDir)Tools - powershell -NoProfile -ExecutionPolicy unrestricted -Command "$(MSBuildThisFileDirectory)bootstrap/bootstrap.ps1" -ToolsLocalPath $(TestToolsLocalPath) -Architecture $(TargetArchitecture) - $(MSBuildThisFileDirectory)bootstrap/bootstrap.sh --toolsLocalPath $(TestToolsLocalPath) - $(TestToolsLocalPath)/dotnetcli/dotnet.exe - $(TestToolsLocalPath)/dotnetcli/dotnet - - - - - - + + @@ -61,26 +50,30 @@ @(RestoreTestSource->'--source %(Identity)', ' ') - $(RestoreSourceArg) @(RestoreTestFallbackSource->'--fallbacksource %(Identity)', ' ') + $(RestoreSourceArg) @(RestoreTestFallbackSource->'--source %(Identity)', ' ') --disable-parallel --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" $(RestoreSourceArg) + + - --build-base-path $(IntermediateOutputForPackaging) --configuration $(ConfigurationGroup) + --configuration $(ConfigurationGroup) - @@ -103,8 +96,8 @@ $(TestsOutputDir)$(TestProjectFilename)-testResults.xml - - - + + From 1849321c5829ad94c7076d6079f9ff335cd0ceb5 Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Mon, 1 May 2017 15:53:38 -0700 Subject: [PATCH 285/625] Continue working on tests and add some logging --- src/test/HostActivationTests/HostActivationTests.csproj | 2 ++ .../Microsoft.Extensions.DependencyModel.Tests.csproj | 2 ++ src/test/TestUtils/RepoDirectoriesProvider.cs | 5 ++++- src/test/dir.proj | 6 +++--- 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/test/HostActivationTests/HostActivationTests.csproj b/src/test/HostActivationTests/HostActivationTests.csproj index c72985fe..61e78ef8 100644 --- a/src/test/HostActivationTests/HostActivationTests.csproj +++ b/src/test/HostActivationTests/HostActivationTests.csproj @@ -21,6 +21,8 @@ + + diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj index 4ca3d705..71fa586c 100644 --- a/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj @@ -28,6 +28,8 @@ + + diff --git a/src/test/TestUtils/RepoDirectoriesProvider.cs b/src/test/TestUtils/RepoDirectoriesProvider.cs index b8e3e672..b4ea334b 100644 --- a/src/test/TestUtils/RepoDirectoriesProvider.cs +++ b/src/test/TestUtils/RepoDirectoriesProvider.cs @@ -39,11 +39,14 @@ namespace Microsoft.DotNet.CoreSetup.Test string corehostPackages = null, string dotnetSdk = null) { - _repoRoot = repoRoot ?? Directory.GetParent(Directory.GetCurrentDirectory()).Parent.Parent.FullName; + Console.WriteLine("Current Dir: " + Directory.GetCurrentDirectory()); + _repoRoot = repoRoot ?? Directory.GetParent(Directory.GetCurrentDirectory()).Parent.Parent.Parent.Parent.Parent.FullName; + Console.WriteLine("Repo Root: " + _repoRoot); string baseArtifactsFolder = artifacts ?? Path.Combine(_repoRoot, "Bin"); _targetRID = Environment.GetEnvironmentVariable("TEST_TARGETRID"); + Console.WriteLine("Test Target RID: " + _targetRID); _buildRID = Environment.GetEnvironmentVariable("BUILDRID"); _dotnetSDK = dotnetSdk ?? Path.Combine(baseArtifactsFolder, "tests", _targetRID+".Debug", "Tools", "dotnetcli"); diff --git a/src/test/dir.proj b/src/test/dir.proj index 5563cf25..38226ded 100644 --- a/src/test/dir.proj +++ b/src/test/dir.proj @@ -84,6 +84,7 @@ %(TestProjects.Identity) %(TestProjects.Filename) + $([System.IO.Path]::GetDirectoryName($(TestProject))) $([System.IO.Path]::DirectorySeparatorChar) @@ -95,9 +96,8 @@ true $(TestsOutputDir)$(TestProjectFilename)-testResults.xml - - Date: Mon, 1 May 2017 17:41:05 -0700 Subject: [PATCH 286/625] Continue porting tests --- .../LightupClient/LightupClient.csproj | 11 + .../LightupClient/LightupClient.xproj | 19 - .../TestProjects/LightupClient/project.json | 17 - .../TestProjects/LightupLib/LightupLib.csproj | 291 +++++++++++++ .../TestProjects/LightupLib/LightupLib.xproj | 19 - .../TestProjects/LightupLib/project.json | 386 ----------------- .../PortableApp/PortableApp.csproj | 291 +++++++++++++ .../PortableApp/PortableApp.xproj | 19 - .../TestProjects/PortableApp/project.json | 386 ----------------- .../PortableTestApp/PortableApp.xproj | 19 - .../PortableTestApp/PortableTestApp.csproj | 20 + .../TestProjects/PortableTestApp/project.json | 393 ------------------ .../ResourceLookup/ResourceLookup.csproj | 291 +++++++++++++ .../ResourceLookup/ResourceLookup.xproj | 19 - .../TestProjects/ResourceLookup/project.json | 386 ----------------- .../SharedFxLookupPortableApp.csproj | 291 +++++++++++++ .../SharedFxLookupPortableApp.xproj | 19 - .../SharedFxLookupPortableApp/project.json | 386 ----------------- ...nThatICareAboutDotnetTestXunitScenarios.cs | 2 +- ...GivenThatICareAboutLightupAppActivation.cs | 2 +- .../HostActivationTests.csproj | 14 +- ...ft.Extensions.DependencyModel.Tests.csproj | 2 - src/test/TestUtils/RepoDirectoriesProvider.cs | 11 +- src/test/TestUtils/TestProject.cs | 4 +- src/test/TestUtils/TestProjectFixture.cs | 3 +- 25 files changed, 1220 insertions(+), 2081 deletions(-) create mode 100644 src/test/Assets/TestProjects/LightupClient/LightupClient.csproj delete mode 100644 src/test/Assets/TestProjects/LightupClient/LightupClient.xproj delete mode 100644 src/test/Assets/TestProjects/LightupClient/project.json create mode 100644 src/test/Assets/TestProjects/LightupLib/LightupLib.csproj delete mode 100644 src/test/Assets/TestProjects/LightupLib/LightupLib.xproj delete mode 100644 src/test/Assets/TestProjects/LightupLib/project.json create mode 100644 src/test/Assets/TestProjects/PortableApp/PortableApp.csproj delete mode 100644 src/test/Assets/TestProjects/PortableApp/PortableApp.xproj delete mode 100644 src/test/Assets/TestProjects/PortableApp/project.json delete mode 100644 src/test/Assets/TestProjects/PortableTestApp/PortableApp.xproj create mode 100644 src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj delete mode 100644 src/test/Assets/TestProjects/PortableTestApp/project.json create mode 100644 src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj delete mode 100644 src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.xproj delete mode 100644 src/test/Assets/TestProjects/ResourceLookup/project.json create mode 100644 src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj delete mode 100644 src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.xproj delete mode 100644 src/test/Assets/TestProjects/SharedFxLookupPortableApp/project.json diff --git a/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj b/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj new file mode 100644 index 00000000..634fc1bd --- /dev/null +++ b/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj @@ -0,0 +1,11 @@ + + + + netcoreapp2.0 + LightupClient + Exe + LightupClient + 2.0.0-* + + + diff --git a/src/test/Assets/TestProjects/LightupClient/LightupClient.xproj b/src/test/Assets/TestProjects/LightupClient/LightupClient.xproj deleted file mode 100644 index b8a77819..00000000 --- a/src/test/Assets/TestProjects/LightupClient/LightupClient.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0.25123 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - e484fcd8-e438-4559-a745-e58574263bce - LightupClient - .\obj - .\bin\ - - - - 2.0 - - - \ No newline at end of file diff --git a/src/test/Assets/TestProjects/LightupClient/project.json b/src/test/Assets/TestProjects/LightupClient/project.json deleted file mode 100644 index 82352df1..00000000 --- a/src/test/Assets/TestProjects/LightupClient/project.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - - "buildOptions": { - "emitEntryPoint": true - }, - "dependencies": {}, - "frameworks": { - "netcoreapp2.0": { - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "2.0.0-*" - } - } - } - } -} diff --git a/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj b/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj new file mode 100644 index 00000000..7bbf442e --- /dev/null +++ b/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj @@ -0,0 +1,291 @@ + + + + netcoreapp2.0 + LightupLib + Library + LightupLib + 2.0.0-* + + + + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + + diff --git a/src/test/Assets/TestProjects/LightupLib/LightupLib.xproj b/src/test/Assets/TestProjects/LightupLib/LightupLib.xproj deleted file mode 100644 index a0dd10a7..00000000 --- a/src/test/Assets/TestProjects/LightupLib/LightupLib.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0.25123 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - e484fcd8-e438-4559-a745-e58574263bcf - LightupLib - .\obj - .\bin\ - - - - 2.0 - - - \ No newline at end of file diff --git a/src/test/Assets/TestProjects/LightupLib/project.json b/src/test/Assets/TestProjects/LightupLib/project.json deleted file mode 100644 index d4ddc430..00000000 --- a/src/test/Assets/TestProjects/LightupLib/project.json +++ /dev/null @@ -1,386 +0,0 @@ -{ - - "buildOptions": { - "emitEntryPoint": false - }, - "dependencies": {}, - "frameworks": { - "netcoreapp2.0": { - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "2.0.0-*" - }, - "Newtonsoft.Json": "9.0.1-beta1", - "Microsoft.CodeAnalysis.Analyzers": { - "version": "1.1.0", - "exclude": "all" - }, - "Microsoft.CSharp": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.DiaSymReader.Native": { - "version": "1.4.0", - "exclude": "all" - }, - "Microsoft.VisualBasic": { - "version": "10.1.0", - "exclude": "all" - }, - "Microsoft.Win32.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.Win32.Registry": { - "version": "4.3.0", - "exclude": "all" - }, - "System.AppContext": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Buffers": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Concurrent": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Immutable": { - "version": "1.3.0", - "exclude": "all" - }, - "System.ComponentModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ComponentModel.Annotations": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Console": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Debug": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.DiagnosticSource": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.FileVersionInfo": { - "version": "4.0.0", - "exclude": "all" - }, - "System.Diagnostics.Process": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.StackTrace": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Diagnostics.Tools": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Tracing": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Dynamic.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Calendars": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression.ZipFile": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Watcher": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.MemoryMappedFiles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.UnmanagedMemoryStream": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Expressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Queryable": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.NameResolution": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Requests": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Sockets": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.WebHeaderCollection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Numerics.Vectors": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ObjectModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.DispatchProxy": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.ILGeneration": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.Lightweight": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Metadata": { - "version": "1.4.1", - "exclude": "all" - }, - "System.Reflection.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.TypeExtensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.Reader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.ResourceManager": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Handles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices.RuntimeInformation": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Loader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Numerics": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Claims": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Algorithms": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Cng": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Csp": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.X509Certificates": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal.Windows": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding.CodePages": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Text.Encoding.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.RegularExpressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Overlapped": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Dataflow": { - "version": "4.7.0", - "exclude": "all" - }, - "System.Threading.Tasks.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Thread": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.ThreadPool": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Timer": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.ReaderWriter": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XDocument": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XmlDocument": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath.XDocument": { - "version": "4.0.1", - "exclude": "all" - } - } - } - } -} diff --git a/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj b/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj new file mode 100644 index 00000000..c868936b --- /dev/null +++ b/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj @@ -0,0 +1,291 @@ + + + + netcoreapp2.0 + PortableApp + Exe + PortableApp + 2.0.0-* + + + + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + + diff --git a/src/test/Assets/TestProjects/PortableApp/PortableApp.xproj b/src/test/Assets/TestProjects/PortableApp/PortableApp.xproj deleted file mode 100644 index d095392d..00000000 --- a/src/test/Assets/TestProjects/PortableApp/PortableApp.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0.25123 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - e484fcd8-e438-4559-a745-e58574263abd - PortableApp - .\obj - .\bin\ - - - - 2.0 - - - \ No newline at end of file diff --git a/src/test/Assets/TestProjects/PortableApp/project.json b/src/test/Assets/TestProjects/PortableApp/project.json deleted file mode 100644 index ae1dc033..00000000 --- a/src/test/Assets/TestProjects/PortableApp/project.json +++ /dev/null @@ -1,386 +0,0 @@ -{ - - "buildOptions": { - "emitEntryPoint": true - }, - "dependencies": {}, - "frameworks": { - "netcoreapp2.0": { - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "2.0.0-*" - }, - "Newtonsoft.Json": "9.0.1-beta1", - "Microsoft.CodeAnalysis.Analyzers": { - "version": "1.1.0", - "exclude": "all" - }, - "Microsoft.CSharp": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.DiaSymReader.Native": { - "version": "1.4.0", - "exclude": "all" - }, - "Microsoft.VisualBasic": { - "version": "10.1.0", - "exclude": "all" - }, - "Microsoft.Win32.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.Win32.Registry": { - "version": "4.3.0", - "exclude": "all" - }, - "System.AppContext": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Buffers": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Concurrent": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Immutable": { - "version": "1.3.0", - "exclude": "all" - }, - "System.ComponentModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ComponentModel.Annotations": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Console": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Debug": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.DiagnosticSource": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.FileVersionInfo": { - "version": "4.0.0", - "exclude": "all" - }, - "System.Diagnostics.Process": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.StackTrace": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Diagnostics.Tools": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Tracing": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Dynamic.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Calendars": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression.ZipFile": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Watcher": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.MemoryMappedFiles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.UnmanagedMemoryStream": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Expressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Queryable": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.NameResolution": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Requests": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Sockets": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.WebHeaderCollection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Numerics.Vectors": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ObjectModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.DispatchProxy": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.ILGeneration": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.Lightweight": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Metadata": { - "version": "1.4.1", - "exclude": "all" - }, - "System.Reflection.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.TypeExtensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.Reader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.ResourceManager": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Handles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices.RuntimeInformation": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Loader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Numerics": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Claims": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Algorithms": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Cng": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Csp": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.X509Certificates": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal.Windows": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding.CodePages": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Text.Encoding.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.RegularExpressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Overlapped": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Dataflow": { - "version": "4.7.0", - "exclude": "all" - }, - "System.Threading.Tasks.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Thread": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.ThreadPool": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Timer": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.ReaderWriter": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XDocument": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XmlDocument": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath.XDocument": { - "version": "4.0.1", - "exclude": "all" - } - } - } - } -} diff --git a/src/test/Assets/TestProjects/PortableTestApp/PortableApp.xproj b/src/test/Assets/TestProjects/PortableTestApp/PortableApp.xproj deleted file mode 100644 index d095392d..00000000 --- a/src/test/Assets/TestProjects/PortableTestApp/PortableApp.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0.25123 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - e484fcd8-e438-4559-a745-e58574263abd - PortableApp - .\obj - .\bin\ - - - - 2.0 - - - \ No newline at end of file diff --git a/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj b/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj new file mode 100644 index 00000000..07f39c54 --- /dev/null +++ b/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj @@ -0,0 +1,20 @@ + + + + netcoreapp2.0 + PortableTestApp + PortableTestApp + true + $(PackageTargetFallback);dotnet5.4;portable-net451+win8 + 2.0.0-* + + + + + + + + + + + diff --git a/src/test/Assets/TestProjects/PortableTestApp/project.json b/src/test/Assets/TestProjects/PortableTestApp/project.json deleted file mode 100644 index 941bffb3..00000000 --- a/src/test/Assets/TestProjects/PortableTestApp/project.json +++ /dev/null @@ -1,393 +0,0 @@ -{ - "testRunner": "xunit", - - "dependencies": {}, - - "frameworks": { - "netcoreapp2.0": { - "imports": [ - "dotnet5.4", - "portable-net451+win8" - ], - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "2.0.0-*" - }, - "Newtonsoft.Json": "9.0.1-beta1", - "xunit": "2.1.0", - "xunit.netcore.extensions": "1.0.0-prerelease-00206", - "dotnet-test-xunit": "1.0.0-rc2-192208-24", - - "Microsoft.CodeAnalysis.Analyzers": { - "version": "1.1.0", - "exclude": "all" - }, - "Microsoft.CSharp": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.DiaSymReader.Native": { - "version": "1.4.0", - "exclude": "all" - }, - "Microsoft.VisualBasic": { - "version": "10.1.0", - "exclude": "all" - }, - "Microsoft.Win32.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.Win32.Registry": { - "version": "4.3.0", - "exclude": "all" - }, - "System.AppContext": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Buffers": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Concurrent": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Immutable": { - "version": "1.3.0", - "exclude": "all" - }, - "System.ComponentModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ComponentModel.Annotations": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Console": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Debug": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.DiagnosticSource": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.FileVersionInfo": { - "version": "4.0.0", - "exclude": "all" - }, - "System.Diagnostics.Process": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.StackTrace": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Diagnostics.Tools": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Tracing": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Dynamic.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Calendars": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression.ZipFile": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Watcher": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.MemoryMappedFiles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.UnmanagedMemoryStream": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Expressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Queryable": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.NameResolution": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Requests": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Sockets": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.WebHeaderCollection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Numerics.Vectors": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ObjectModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.DispatchProxy": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.ILGeneration": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.Lightweight": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Metadata": { - "version": "1.4.1", - "exclude": "all" - }, - "System.Reflection.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.TypeExtensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.Reader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.ResourceManager": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Handles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices.RuntimeInformation": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Loader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Numerics": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Claims": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Algorithms": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Cng": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Csp": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.X509Certificates": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal.Windows": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding.CodePages": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Text.Encoding.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.RegularExpressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Overlapped": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Dataflow": { - "version": "4.7.0", - "exclude": "all" - }, - "System.Threading.Tasks.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Thread": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.ThreadPool": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Timer": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.ReaderWriter": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XDocument": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XmlDocument": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath.XDocument": { - "version": "4.0.1", - "exclude": "all" - } - } - } - } -} diff --git a/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj new file mode 100644 index 00000000..7fd64d7b --- /dev/null +++ b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj @@ -0,0 +1,291 @@ + + + + netcoreapp2.0 + ResourceLookup + Exe + ResourceLookup + 2.0.0-preview2-* + + + + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + + diff --git a/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.xproj b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.xproj deleted file mode 100644 index ec4227a0..00000000 --- a/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0.25123 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - e484fcd8-e438-4559-a745-e58574263ffd - ResourceLookup - .\obj - .\bin\ - - - - 2.0 - - - \ No newline at end of file diff --git a/src/test/Assets/TestProjects/ResourceLookup/project.json b/src/test/Assets/TestProjects/ResourceLookup/project.json deleted file mode 100644 index 720811c6..00000000 --- a/src/test/Assets/TestProjects/ResourceLookup/project.json +++ /dev/null @@ -1,386 +0,0 @@ -{ - - "buildOptions": { - "emitEntryPoint": true - }, - "dependencies": {}, - "frameworks": { - "netcoreapp2.0": { - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "2.0.0-preview2-*" - }, - "System.Spatial": "5.8.2", - "Microsoft.CodeAnalysis.Analyzers": { - "version": "1.1.0", - "exclude": "all" - }, - "Microsoft.CSharp": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.DiaSymReader.Native": { - "version": "1.4.0", - "exclude": "all" - }, - "Microsoft.VisualBasic": { - "version": "10.1.0", - "exclude": "all" - }, - "Microsoft.Win32.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.Win32.Registry": { - "version": "4.3.0", - "exclude": "all" - }, - "System.AppContext": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Buffers": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Concurrent": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Immutable": { - "version": "1.3.0", - "exclude": "all" - }, - "System.ComponentModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ComponentModel.Annotations": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Console": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Debug": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.DiagnosticSource": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.FileVersionInfo": { - "version": "4.0.0", - "exclude": "all" - }, - "System.Diagnostics.Process": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.StackTrace": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Diagnostics.Tools": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Tracing": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Dynamic.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Calendars": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression.ZipFile": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Watcher": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.MemoryMappedFiles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.UnmanagedMemoryStream": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Expressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Queryable": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.NameResolution": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Requests": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Sockets": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.WebHeaderCollection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Numerics.Vectors": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ObjectModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.DispatchProxy": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.ILGeneration": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.Lightweight": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Metadata": { - "version": "1.4.1", - "exclude": "all" - }, - "System.Reflection.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.TypeExtensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.Reader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.ResourceManager": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Handles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices.RuntimeInformation": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Loader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Numerics": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Claims": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Algorithms": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Cng": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Csp": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.X509Certificates": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal.Windows": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding.CodePages": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Text.Encoding.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.RegularExpressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Overlapped": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Dataflow": { - "version": "4.7.0", - "exclude": "all" - }, - "System.Threading.Tasks.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Thread": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.ThreadPool": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Timer": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.ReaderWriter": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XDocument": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XmlDocument": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath.XDocument": { - "version": "4.0.1", - "exclude": "all" - } - } - } - } -} diff --git a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj new file mode 100644 index 00000000..ab11a3e3 --- /dev/null +++ b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj @@ -0,0 +1,291 @@ + + + + netcoreapp2.0 + SharedFxLookupPortableApp + Exe + SharedFxLookupPortableApp + 2.0.0-* + + + + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + None + + + + diff --git a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.xproj b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.xproj deleted file mode 100644 index d095392d..00000000 --- a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0.25123 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - e484fcd8-e438-4559-a745-e58574263abd - PortableApp - .\obj - .\bin\ - - - - 2.0 - - - \ No newline at end of file diff --git a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/project.json b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/project.json deleted file mode 100644 index ae1dc033..00000000 --- a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/project.json +++ /dev/null @@ -1,386 +0,0 @@ -{ - - "buildOptions": { - "emitEntryPoint": true - }, - "dependencies": {}, - "frameworks": { - "netcoreapp2.0": { - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "2.0.0-*" - }, - "Newtonsoft.Json": "9.0.1-beta1", - "Microsoft.CodeAnalysis.Analyzers": { - "version": "1.1.0", - "exclude": "all" - }, - "Microsoft.CSharp": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.DiaSymReader.Native": { - "version": "1.4.0", - "exclude": "all" - }, - "Microsoft.VisualBasic": { - "version": "10.1.0", - "exclude": "all" - }, - "Microsoft.Win32.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.Win32.Registry": { - "version": "4.3.0", - "exclude": "all" - }, - "System.AppContext": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Buffers": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Concurrent": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Immutable": { - "version": "1.3.0", - "exclude": "all" - }, - "System.ComponentModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ComponentModel.Annotations": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Console": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Debug": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.DiagnosticSource": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.FileVersionInfo": { - "version": "4.0.0", - "exclude": "all" - }, - "System.Diagnostics.Process": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.StackTrace": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Diagnostics.Tools": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Tracing": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Dynamic.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Calendars": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression.ZipFile": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Watcher": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.MemoryMappedFiles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.UnmanagedMemoryStream": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Expressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Queryable": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.NameResolution": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Requests": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Sockets": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.WebHeaderCollection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Numerics.Vectors": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ObjectModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.DispatchProxy": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.ILGeneration": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.Lightweight": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Metadata": { - "version": "1.4.1", - "exclude": "all" - }, - "System.Reflection.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.TypeExtensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.Reader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.ResourceManager": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Handles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices.RuntimeInformation": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Loader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Numerics": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Claims": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Algorithms": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Cng": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Csp": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.X509Certificates": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal.Windows": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding.CodePages": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Text.Encoding.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.RegularExpressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Overlapped": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Dataflow": { - "version": "4.7.0", - "exclude": "all" - }, - "System.Threading.Tasks.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Thread": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.ThreadPool": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Timer": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.ReaderWriter": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XDocument": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XmlDocument": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath.XDocument": { - "version": "4.0.1", - "exclude": "all" - } - } - } - } -} diff --git a/src/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs b/src/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs index f7405b2d..f8928d42 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs @@ -29,7 +29,7 @@ namespace Microsoft.DotNet.Tools.Publish.Tests ActivateDotnetTestXunitOnTestProject(RepoDirectories, portableTestAppFixture); } - [Fact] + //[Fact] public void Muxer_activation_of_dotnet_test_XUnit_on_Standalone_Test_App_Succeeds() { var standaloneTestAppFixture = new TestProjectFixture("StandaloneTestApp", RepoDirectories); diff --git a/src/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs b/src/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs index 53ca9e4d..861f1ac8 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs @@ -67,7 +67,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.LightupApp .Should() .Fail() .And - .HaveStdErrContaining("Error: assembly specified in the dependencies manifest was not found -- package: \'lightuplib\', version: \'1.0.0\', path: \'LightupLib.dll\'"); + .HaveStdErrContaining("Error: assembly specified in the dependencies manifest was not found -- package: \'LightupLib\', version: \'1.0.0\', path: \'LightupLib.dll\'"); } // Attempt to run the app with lightup deps.json specified and lightup library present in the expected diff --git a/src/test/HostActivationTests/HostActivationTests.csproj b/src/test/HostActivationTests/HostActivationTests.csproj index 61e78ef8..5d2df8a0 100644 --- a/src/test/HostActivationTests/HostActivationTests.csproj +++ b/src/test/HostActivationTests/HostActivationTests.csproj @@ -7,9 +7,21 @@ true 1.0.4 $(PackageTargetFallback);dotnet5.4;portable-net451+win8 + false + + + + + + + @@ -21,8 +33,6 @@ - - diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj index 71fa586c..4ca3d705 100644 --- a/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj @@ -28,8 +28,6 @@ - - diff --git a/src/test/TestUtils/RepoDirectoriesProvider.cs b/src/test/TestUtils/RepoDirectoriesProvider.cs index b4ea334b..8001997f 100644 --- a/src/test/TestUtils/RepoDirectoriesProvider.cs +++ b/src/test/TestUtils/RepoDirectoriesProvider.cs @@ -39,19 +39,22 @@ namespace Microsoft.DotNet.CoreSetup.Test string corehostPackages = null, string dotnetSdk = null) { - Console.WriteLine("Current Dir: " + Directory.GetCurrentDirectory()); _repoRoot = repoRoot ?? Directory.GetParent(Directory.GetCurrentDirectory()).Parent.Parent.Parent.Parent.Parent.FullName; - Console.WriteLine("Repo Root: " + _repoRoot); string baseArtifactsFolder = artifacts ?? Path.Combine(_repoRoot, "Bin"); _targetRID = Environment.GetEnvironmentVariable("TEST_TARGETRID"); - Console.WriteLine("Test Target RID: " + _targetRID); _buildRID = Environment.GetEnvironmentVariable("BUILDRID"); _dotnetSDK = dotnetSdk ?? Path.Combine(baseArtifactsFolder, "tests", _targetRID+".Debug", "Tools", "dotnetcli"); - if(!Directory.Exists(_dotnetSDK)) + if (!Directory.Exists(_dotnetSDK)) + { _dotnetSDK = dotnetSdk ?? Path.Combine(baseArtifactsFolder, "tests", _targetRID+".Release", "Tools", "dotnetcli"); + } + if (!Directory.Exists(_dotnetSDK)) + { + throw new InvalidOperationException("ERROR: Test SDK folder not found."); + } _artifacts = Path.Combine(baseArtifactsFolder, _buildRID+".Debug"); if(!Directory.Exists(_artifacts)) diff --git a/src/test/TestUtils/TestProject.cs b/src/test/TestUtils/TestProject.cs index 958c055d..8a25d252 100644 --- a/src/test/TestUtils/TestProject.cs +++ b/src/test/TestUtils/TestProject.cs @@ -50,8 +50,8 @@ namespace Microsoft.DotNet.CoreSetup.Test _sharedLibraryExtension = sharedLibraryExtension; _sharedLibraryPrefix = sharedLibraryPrefix; _projectName = Path.GetFileName(_projectDirectory); - _projectJson = Path.Combine(_projectDirectory, "project.json"); - _projectLockJson = Path.Combine(_projectDirectory, "project.lock.json"); + _projectJson = Path.Combine(_projectDirectory, $"{_projectName}.csproj"); + _projectLockJson = Path.Combine(_projectDirectory, "obj", "project.assets.json"); _outputDirectory = outputDirectory ?? Path.Combine(_projectDirectory, "bin"); if (Directory.Exists(_outputDirectory)) diff --git a/src/test/TestUtils/TestProjectFixture.cs b/src/test/TestUtils/TestProjectFixture.cs index c200fd97..5131e867 100644 --- a/src/test/TestUtils/TestProjectFixture.cs +++ b/src/test/TestUtils/TestProjectFixture.cs @@ -282,7 +282,7 @@ namespace Microsoft.DotNet.CoreSetup.Test var restoreArgs = new List(); foreach (var fallbackSource in fallbackSources) { - restoreArgs.Add("-f"); + restoreArgs.Add("--source"); restoreArgs.Add(fallbackSource); } restoreArgs.Add("--disable-parallel"); @@ -310,6 +310,7 @@ namespace Microsoft.DotNet.CoreSetup.Test public TestProjectFixture EnsureRestoredForRid(string rid, params string[] fallbackSources) { + throw new NotImplementedException("This routine should be deleted and replaced."); var sourceProjectJson = Path.Combine(_testProject.ProjectDirectory, "project.json.template"); var targetProjectJson = Path.Combine(_testProject.ProjectDirectory, "project.json"); From 798ddda5af9965dc002010163efad32d93a56e11 Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Tue, 2 May 2017 13:10:02 -0700 Subject: [PATCH 287/625] Make all test projects build and run with the MSBuild-based toolset. --- .../LightupClient/LightupClient.csproj | 2 +- .../TestProjects/LightupLib/LightupLib.csproj | 2 +- .../PortableApp/PortableApp.csproj | 2 +- .../PortableTestApp/PortableTestApp.csproj | 6 +- .../ResourceLookup/ResourceLookup.csproj | 2 +- .../SharedFxLookupPortableApp.csproj | 2 +- .../StandaloneApp/StandaloneApp.csproj | 17 + .../StandaloneApp/StandaloneApp.xproj | 19 - .../StandaloneApp/project.json.template | 938 ----------------- .../TestProjects/StandaloneTestApp/Program.cs | 5 +- .../StandaloneTestApp/StandaloneApp.xproj | 19 - .../StandaloneTestApp.csproj | 23 + .../StandaloneTestApp/project.json.template | 948 ------------------ ...nThatICareAboutDotnetTestXunitScenarios.cs | 2 +- .../HostActivationTests.csproj | 12 - .../XunitAssemblyAttributes.cs | 8 + src/test/TestUtils/RepoDirectoriesProvider.cs | 5 +- src/test/TestUtils/TestProjectFixture.cs | 21 +- .../Utils/DotNetCli.cs | 2 +- src/test/dir.proj | 30 +- 20 files changed, 91 insertions(+), 1974 deletions(-) create mode 100644 src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.csproj delete mode 100644 src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.xproj delete mode 100644 src/test/Assets/TestProjects/StandaloneApp/project.json.template delete mode 100644 src/test/Assets/TestProjects/StandaloneTestApp/StandaloneApp.xproj create mode 100644 src/test/Assets/TestProjects/StandaloneTestApp/StandaloneTestApp.csproj delete mode 100644 src/test/Assets/TestProjects/StandaloneTestApp/project.json.template create mode 100644 src/test/HostActivationTests/XunitAssemblyAttributes.cs diff --git a/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj b/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj index 634fc1bd..676d9c4f 100644 --- a/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj +++ b/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj @@ -5,7 +5,7 @@ LightupClient Exe LightupClient - 2.0.0-* + $(MNAVersion) diff --git a/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj b/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj index 7bbf442e..f8006a15 100644 --- a/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj +++ b/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj @@ -5,7 +5,7 @@ LightupLib Library LightupLib - 2.0.0-* + $(MNAVersion) diff --git a/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj b/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj index c868936b..01559802 100644 --- a/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj +++ b/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj @@ -5,7 +5,7 @@ PortableApp Exe PortableApp - 2.0.0-* + $(MNAVersion) diff --git a/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj b/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj index 07f39c54..25e6c975 100644 --- a/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj +++ b/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj @@ -6,15 +6,15 @@ PortableTestApp true $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - 2.0.0-* + $(MNAVersion) - - + + diff --git a/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj index 7fd64d7b..8613fc4b 100644 --- a/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj +++ b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj @@ -5,7 +5,7 @@ ResourceLookup Exe ResourceLookup - 2.0.0-preview2-* + $(MNAVersion) diff --git a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj index ab11a3e3..c9cc5679 100644 --- a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj +++ b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj @@ -5,7 +5,7 @@ SharedFxLookupPortableApp Exe SharedFxLookupPortableApp - 2.0.0-* + $(MNAVersion) diff --git a/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.csproj b/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.csproj new file mode 100644 index 00000000..d21a9fc0 --- /dev/null +++ b/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.csproj @@ -0,0 +1,17 @@ + + + + netcoreapp2.0 + StandaloneApp + Exe + StandaloneApp + $(TestTargetRid) + $(TestTargetRid) + $(MNAVersion) + + + + + + + diff --git a/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.xproj b/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.xproj deleted file mode 100644 index 1f3640a5..00000000 --- a/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0.25123 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - 9232aba5-e93c-4f80-821a-c98f6064a4bc - StandaloneApp - .\obj - .\bin\ - - - - 2.0 - - - \ No newline at end of file diff --git a/src/test/Assets/TestProjects/StandaloneApp/project.json.template b/src/test/Assets/TestProjects/StandaloneApp/project.json.template deleted file mode 100644 index 200a107e..00000000 --- a/src/test/Assets/TestProjects/StandaloneApp/project.json.template +++ /dev/null @@ -1,938 +0,0 @@ -{ - "buildOptions": { - "emitEntryPoint": true - }, - "frameworks": { - "netcoreapp2.0": { - "dependencies": { - "Microsoft.NETCore.App": "2.0.0-*", - "Newtonsoft.Json": "9.0.1-beta1", - - "Microsoft.CodeAnalysis.Analyzers": { - "version": "1.1.0", - "exclude": "all" - }, - "Microsoft.CSharp": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.DiaSymReader.Native": { - "version": "1.4.0", - "exclude": "all" - }, - "Microsoft.VisualBasic": { - "version": "10.1.0", - "exclude": "all" - }, - "Microsoft.Win32.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.Win32.Registry": { - "version": "4.3.0", - "exclude": "all" - }, - "System.AppContext": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Buffers": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Concurrent": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Immutable": { - "version": "1.3.0", - "exclude": "all" - }, - "System.ComponentModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ComponentModel.Annotations": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Console": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Debug": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.DiagnosticSource": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.FileVersionInfo": { - "version": "4.0.0", - "exclude": "all" - }, - "System.Diagnostics.Process": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.StackTrace": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Diagnostics.Tools": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Tracing": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Dynamic.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Calendars": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression.ZipFile": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Watcher": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.MemoryMappedFiles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.UnmanagedMemoryStream": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Expressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Queryable": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.NameResolution": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Requests": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Sockets": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.WebHeaderCollection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Numerics.Vectors": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ObjectModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.DispatchProxy": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.ILGeneration": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.Lightweight": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Metadata": { - "version": "1.4.1", - "exclude": "all" - }, - "System.Reflection.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.TypeExtensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.Reader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.ResourceManager": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Handles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices.RuntimeInformation": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Loader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Numerics": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Claims": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Algorithms": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Cng": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Csp": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.X509Certificates": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal.Windows": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding.CodePages": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Text.Encoding.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.RegularExpressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Overlapped": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Dataflow": { - "version": "4.7.0", - "exclude": "all" - }, - "System.Threading.Tasks.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Thread": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.ThreadPool": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Timer": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.ReaderWriter": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XDocument": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XmlDocument": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath.XDocument": { - "version": "4.0.1", - "exclude": "all" - }, - - "runtime.any.System.Collections": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Diagnostics.Tools": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Diagnostics.Tracing": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Globalization": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Globalization.Calendars": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.IO": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Reflection": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Reflection.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Reflection.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Resources.ResourceManager": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Runtime.Handles": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Runtime.InteropServices": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Text.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Text.Encoding.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Threading.Tasks": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Threading.Timer": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.debian.8-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.debian.8-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.debian.8-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.debian.8-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.debian.8-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.debian.8-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.debian.8-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.debian.8-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.debian.8-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.native.System.Security.Cryptography.Apple": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.Microsoft.Win32.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.Console": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.Diagnostics.Debug": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.IO.FileSystem": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.Net.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.Net.Sockets": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.Private.Uri": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.Runtime.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.Microsoft.Win32.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.System.Console": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.System.Diagnostics.Debug": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.System.IO.FileSystem": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.System.Net.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.System.Net.Sockets": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.System.Runtime.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win7-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x64.Microsoft.NETCore.Windows.ApiSets": { - "version": "1.0.1", - "exclude": "all" - }, - "runtime.win7-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win7-x86.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x86.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x86.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x86.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x86.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x86.Microsoft.NETCore.Windows.ApiSets": { - "version": "1.0.1", - "exclude": "all" - }, - "runtime.win7-x86.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win7.System.Private.Uri": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win8-x64.Microsoft.NETCore.Windows.ApiSets": { - "version": "1.0.1", - "exclude": "all" - }, - "runtime.win8-x86.Microsoft.NETCore.Windows.ApiSets": { - "version": "1.0.1", - "exclude": "all" - }, - "runtime.win81-x64.Microsoft.NETCore.Windows.ApiSets": { - "version": "1.0.1", - "exclude": "all" - }, - "runtime.win81-x86.Microsoft.NETCore.Windows.ApiSets": { - "version": "1.0.1", - "exclude": "all" - } - } - } - }, - "runtimes": { - "{RID}": {} - } -} diff --git a/src/test/Assets/TestProjects/StandaloneTestApp/Program.cs b/src/test/Assets/TestProjects/StandaloneTestApp/Program.cs index 4d15a4a1..013cf4f5 100644 --- a/src/test/Assets/TestProjects/StandaloneTestApp/Program.cs +++ b/src/test/Assets/TestProjects/StandaloneTestApp/Program.cs @@ -5,10 +5,7 @@ namespace StandaloneTestApp { public class Program { - public static void Main() - { - Console.WriteLine("Dummy Entrypoint"); - } + // SDK generates an entry point method automatically now, with no opt-out mechanism. [Fact] public void PassingTest() diff --git a/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneApp.xproj b/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneApp.xproj deleted file mode 100644 index 1f3640a5..00000000 --- a/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneApp.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0.25123 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - 9232aba5-e93c-4f80-821a-c98f6064a4bc - StandaloneApp - .\obj - .\bin\ - - - - 2.0 - - - \ No newline at end of file diff --git a/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneTestApp.csproj b/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneTestApp.csproj new file mode 100644 index 00000000..20f261f0 --- /dev/null +++ b/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneTestApp.csproj @@ -0,0 +1,23 @@ + + + + netcoreapp2.0 + StandaloneTestApp + Exe + StandaloneTestApp + true + $(PackageTargetFallback);dotnet5.4;portable-net451+win8 + $(TestTargetRid) + $(TestTargetRid) + $(MNAVersion) + + + + + + + + + + + diff --git a/src/test/Assets/TestProjects/StandaloneTestApp/project.json.template b/src/test/Assets/TestProjects/StandaloneTestApp/project.json.template deleted file mode 100644 index baed76b2..00000000 --- a/src/test/Assets/TestProjects/StandaloneTestApp/project.json.template +++ /dev/null @@ -1,948 +0,0 @@ -{ - "buildOptions": { - "emitEntryPoint": true - }, - "frameworks": { - "netcoreapp2.0": { - "imports": [ - "dotnet5.4", - "portable-net451+win8" - ], - "dependencies": { - "Microsoft.NETCore.App": "2.0.0-*", - "Newtonsoft.Json": "9.0.1-beta1", - "xunit": "2.1.0", - "xunit.netcore.extensions": "1.0.0-prerelease-00206", - "dotnet-test-xunit": "1.0.0-rc2-192208-24", - - "Microsoft.CodeAnalysis.Analyzers": { - "version": "1.1.0", - "exclude": "all" - }, - "Microsoft.CSharp": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.DiaSymReader.Native": { - "version": "1.4.0", - "exclude": "all" - }, - "Microsoft.VisualBasic": { - "version": "10.1.0", - "exclude": "all" - }, - "Microsoft.Win32.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "Microsoft.Win32.Registry": { - "version": "4.3.0", - "exclude": "all" - }, - "System.AppContext": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Buffers": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Concurrent": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Collections.Immutable": { - "version": "1.3.0", - "exclude": "all" - }, - "System.ComponentModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ComponentModel.Annotations": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Console": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Debug": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.DiagnosticSource": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.FileVersionInfo": { - "version": "4.0.0", - "exclude": "all" - }, - "System.Diagnostics.Process": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.StackTrace": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Diagnostics.Tools": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Diagnostics.Tracing": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Dynamic.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Calendars": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Globalization.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.Compression.ZipFile": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.FileSystem.Watcher": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.MemoryMappedFiles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.IO.UnmanagedMemoryStream": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Expressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Linq.Queryable": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.NameResolution": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Requests": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.Sockets": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Net.WebHeaderCollection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Numerics.Vectors": { - "version": "4.3.0", - "exclude": "all" - }, - "System.ObjectModel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.DispatchProxy": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.ILGeneration": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Emit.Lightweight": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.Metadata": { - "version": "1.4.1", - "exclude": "all" - }, - "System.Reflection.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Reflection.TypeExtensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.Reader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Resources.ResourceManager": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Handles": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.InteropServices.RuntimeInformation": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Loader": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Runtime.Numerics": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Claims": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Algorithms": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Cng": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Csp": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Cryptography.X509Certificates": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Security.Principal.Windows": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.Encoding.CodePages": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Text.Encoding.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Text.RegularExpressions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Overlapped": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Dataflow": { - "version": "4.7.0", - "exclude": "all" - }, - "System.Threading.Tasks.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Tasks.Parallel": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Thread": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.ThreadPool": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Threading.Timer": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.ReaderWriter": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XDocument": { - "version": "4.3.0", - "exclude": "all" - }, - "System.Xml.XmlDocument": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath": { - "version": "4.0.1", - "exclude": "all" - }, - "System.Xml.XPath.XDocument": { - "version": "4.0.1", - "exclude": "all" - }, - - "runtime.any.System.Collections": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Diagnostics.Tools": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Diagnostics.Tracing": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Globalization": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Globalization.Calendars": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.IO": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Reflection": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Reflection.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Reflection.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Resources.ResourceManager": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Runtime": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Runtime.Handles": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Runtime.InteropServices": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Text.Encoding": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Text.Encoding.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Threading.Tasks": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.any.System.Threading.Timer": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.debian.8-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.debian.8-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.debian.8-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.debian.8-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.debian.8-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.debian.8-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.debian.8-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.debian.8-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.debian.8-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.native.System.Security.Cryptography.Apple": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.runtime.native.System": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.Microsoft.Win32.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.Console": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.Diagnostics.Debug": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.IO.FileSystem": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.Net.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.Net.Sockets": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.Private.Uri": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.unix.System.Runtime.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.Microsoft.Win32.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.System.Console": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.System.Diagnostics.Debug": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.System.IO.FileSystem": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.System.Net.Primitives": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.System.Net.Sockets": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win.System.Runtime.Extensions": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win7-x64.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x64.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x64.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x64.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x64.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x64.Microsoft.NETCore.Windows.ApiSets": { - "version": "1.0.1", - "exclude": "all" - }, - "runtime.win7-x64.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win7-x86.Microsoft.NETCore.DotNetHost": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x86.Microsoft.NETCore.DotNetHostPolicy": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x86.Microsoft.NETCore.DotNetHostResolver": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x86.Microsoft.NETCore.Jit": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x86.Microsoft.NETCore.Runtime.CoreCLR": { - "version": "1.1.0", - "exclude": "all" - }, - "runtime.win7-x86.Microsoft.NETCore.Windows.ApiSets": { - "version": "1.0.1", - "exclude": "all" - }, - "runtime.win7-x86.runtime.native.System.IO.Compression": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win7.System.Private.Uri": { - "version": "4.3.0", - "exclude": "all" - }, - "runtime.win8-x64.Microsoft.NETCore.Windows.ApiSets": { - "version": "1.0.1", - "exclude": "all" - }, - "runtime.win8-x86.Microsoft.NETCore.Windows.ApiSets": { - "version": "1.0.1", - "exclude": "all" - }, - "runtime.win81-x64.Microsoft.NETCore.Windows.ApiSets": { - "version": "1.0.1", - "exclude": "all" - }, - "runtime.win81-x86.Microsoft.NETCore.Windows.ApiSets": { - "version": "1.0.1", - "exclude": "all" - } - } - } - }, - - "testRunner": "xunit", - - "runtimes": { - "{RID}": {} - } -} diff --git a/src/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs b/src/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs index f8928d42..f7405b2d 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutDotnetTestXunitScenarios.cs @@ -29,7 +29,7 @@ namespace Microsoft.DotNet.Tools.Publish.Tests ActivateDotnetTestXunitOnTestProject(RepoDirectories, portableTestAppFixture); } - //[Fact] + [Fact] public void Muxer_activation_of_dotnet_test_XUnit_on_Standalone_Test_App_Succeeds() { var standaloneTestAppFixture = new TestProjectFixture("StandaloneTestApp", RepoDirectories); diff --git a/src/test/HostActivationTests/HostActivationTests.csproj b/src/test/HostActivationTests/HostActivationTests.csproj index 5d2df8a0..c72985fe 100644 --- a/src/test/HostActivationTests/HostActivationTests.csproj +++ b/src/test/HostActivationTests/HostActivationTests.csproj @@ -7,21 +7,9 @@ true 1.0.4 $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - false - - - - - - - diff --git a/src/test/HostActivationTests/XunitAssemblyAttributes.cs b/src/test/HostActivationTests/XunitAssemblyAttributes.cs new file mode 100644 index 00000000..ee51fb53 --- /dev/null +++ b/src/test/HostActivationTests/XunitAssemblyAttributes.cs @@ -0,0 +1,8 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Xunit; + +// Test cases in this assembly cannot be run in parallel. +// Some test cases modify global state and will interfere with others running at the same time. +[assembly: CollectionBehavior(DisableTestParallelization = true)] \ No newline at end of file diff --git a/src/test/TestUtils/RepoDirectoriesProvider.cs b/src/test/TestUtils/RepoDirectoriesProvider.cs index 8001997f..7492e9ba 100644 --- a/src/test/TestUtils/RepoDirectoriesProvider.cs +++ b/src/test/TestUtils/RepoDirectoriesProvider.cs @@ -46,10 +46,10 @@ namespace Microsoft.DotNet.CoreSetup.Test _targetRID = Environment.GetEnvironmentVariable("TEST_TARGETRID"); _buildRID = Environment.GetEnvironmentVariable("BUILDRID"); - _dotnetSDK = dotnetSdk ?? Path.Combine(baseArtifactsFolder, "tests", _targetRID+".Debug", "Tools", "dotnetcli"); + _dotnetSDK = dotnetSdk ?? Path.Combine(baseArtifactsFolder, "tests", _targetRID + ".Debug", "Tools", "dotnetcli"); if (!Directory.Exists(_dotnetSDK)) { - _dotnetSDK = dotnetSdk ?? Path.Combine(baseArtifactsFolder, "tests", _targetRID+".Release", "Tools", "dotnetcli"); + _dotnetSDK = dotnetSdk ?? Path.Combine(baseArtifactsFolder, "tests", _targetRID + ".Release", "Tools", "dotnetcli"); } if (!Directory.Exists(_dotnetSDK)) { @@ -64,7 +64,6 @@ namespace Microsoft.DotNet.CoreSetup.Test _nugetPackages = nugetPackages ?? Path.Combine(_repoRoot, "packages"); _corehostPackages = corehostPackages ?? Path.Combine(_artifacts, "corehost"); - _builtDotnet = builtDotnet ?? Path.Combine(baseArtifactsFolder, "obj", _buildRID+".Debug", "sharedFrameworkPublish"); if(!Directory.Exists(_builtDotnet)) _builtDotnet = builtDotnet ?? Path.Combine(baseArtifactsFolder, "obj", _buildRID+".Release", "sharedFrameworkPublish"); diff --git a/src/test/TestUtils/TestProjectFixture.cs b/src/test/TestUtils/TestProjectFixture.cs index 5131e867..36970c8d 100644 --- a/src/test/TestUtils/TestProjectFixture.cs +++ b/src/test/TestUtils/TestProjectFixture.cs @@ -277,16 +277,21 @@ namespace Microsoft.DotNet.CoreSetup.Test return this; } - public TestProjectFixture RestoreProject(string[] fallbackSources) + public TestProjectFixture RestoreProject(string[] fallbackSources, string extraMSBuildProperties = null) { var restoreArgs = new List(); foreach (var fallbackSource in fallbackSources) { - restoreArgs.Add("--source"); - restoreArgs.Add(fallbackSource); + //restoreArgs.Add("--source"); + //restoreArgs.Add(fallbackSource); } restoreArgs.Add("--disable-parallel"); + if (extraMSBuildProperties != null) + { + restoreArgs.Add(extraMSBuildProperties); + } + _sdkDotnet.Restore(restoreArgs.ToArray()) .WorkingDirectory(_testProject.ProjectDirectory) .CaptureStdErr() @@ -310,16 +315,10 @@ namespace Microsoft.DotNet.CoreSetup.Test public TestProjectFixture EnsureRestoredForRid(string rid, params string[] fallbackSources) { - throw new NotImplementedException("This routine should be deleted and replaced."); - var sourceProjectJson = Path.Combine(_testProject.ProjectDirectory, "project.json.template"); - var targetProjectJson = Path.Combine(_testProject.ProjectDirectory, "project.json"); - - // apply RID to template - File.WriteAllText(targetProjectJson, File.ReadAllText(sourceProjectJson).Replace("{RID}", rid)); - if ( ! _testProject.IsRestored()) { - RestoreProject(fallbackSources); + string extraMSBuildProperties = $"/p:RuntimeIdentifiers={rid} /p:RuntimeIdentifier={rid}"; + RestoreProject(fallbackSources, extraMSBuildProperties); } return this; diff --git a/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs b/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs index 6a061e0c..731e08ef 100644 --- a/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs +++ b/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs @@ -96,7 +96,7 @@ namespace Microsoft.DotNet.Cli.Build GreatestVersionSharedFxPath = sharedFxVersionDirectories .OrderByDescending(p => p.ToLower()) .First(); - + var hostFxrVersionDirectories = Directory.EnumerateDirectories(hostFxrBaseDirectory); GreatestVersionHostFxrPath = hostFxrVersionDirectories .OrderByDescending(p => p.ToLower()) diff --git a/src/test/dir.proj b/src/test/dir.proj index 38226ded..e4ac9174 100644 --- a/src/test/dir.proj +++ b/src/test/dir.proj @@ -3,13 +3,10 @@ - - $(DotnetSdkToolCommand) - - DetermineTestOutputDirectory; + InitBaseDotnetCli; RestoreTests; BuildTests; RunTests; @@ -29,9 +26,25 @@ + + + + $(TestsOutputDir)Tools + $(TestToolsLocalPath)/dotnetcli/dotnet.exe + $(TestToolsLocalPath)/dotnetcli/dotnet + + + + + + + + + - @@ -52,13 +65,10 @@ @(RestoreTestSource->'--source %(Identity)', ' ') $(RestoreSourceArg) @(RestoreTestFallbackSource->'--source %(Identity)', ' ') --disable-parallel --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" $(RestoreSourceArg) + $(RestoreArgs) /p:MNAVersion=$(ProductVersion) /p:TestTargetRid=$(TestTargetRid) - + From 4c087f0f3edaf7858e38375bb32cae00ac6a9fac Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Tue, 2 May 2017 15:03:20 -0700 Subject: [PATCH 288/625] Pass the version for Microsoft.NETCore.App through test execution --- src/test/TestUtils/RepoDirectoriesProvider.cs | 3 +++ src/test/TestUtils/TestProjectFixture.cs | 6 ++++-- src/test/dir.proj | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/test/TestUtils/RepoDirectoriesProvider.cs b/src/test/TestUtils/RepoDirectoriesProvider.cs index 7492e9ba..551f736f 100644 --- a/src/test/TestUtils/RepoDirectoriesProvider.cs +++ b/src/test/TestUtils/RepoDirectoriesProvider.cs @@ -20,9 +20,11 @@ namespace Microsoft.DotNet.CoreSetup.Test private string _targetRID; private string _buildRID; + private string _mnaVersion; public string BuildRID => _buildRID; public string TargetRID => _targetRID; + public string MicrosoftNETCoreAppVersion => _mnaVersion; public string RepoRoot => _repoRoot; public string Artifacts => _artifacts; public string HostArtifacts => _hostArtifacts; @@ -45,6 +47,7 @@ namespace Microsoft.DotNet.CoreSetup.Test _targetRID = Environment.GetEnvironmentVariable("TEST_TARGETRID"); _buildRID = Environment.GetEnvironmentVariable("BUILDRID"); + _mnaVersion = Environment.GetEnvironmentVariable("MNA_VERSION"); _dotnetSDK = dotnetSdk ?? Path.Combine(baseArtifactsFolder, "tests", _targetRID + ".Debug", "Tools", "dotnetcli"); if (!Directory.Exists(_dotnetSDK)) diff --git a/src/test/TestUtils/TestProjectFixture.cs b/src/test/TestUtils/TestProjectFixture.cs index 36970c8d..84fc060a 100644 --- a/src/test/TestUtils/TestProjectFixture.cs +++ b/src/test/TestUtils/TestProjectFixture.cs @@ -282,11 +282,13 @@ namespace Microsoft.DotNet.CoreSetup.Test var restoreArgs = new List(); foreach (var fallbackSource in fallbackSources) { - //restoreArgs.Add("--source"); - //restoreArgs.Add(fallbackSource); + restoreArgs.Add("--source"); + restoreArgs.Add(fallbackSource); } restoreArgs.Add("--disable-parallel"); + restoreArgs.Add($"/p:MNAVersion={_repoDirectoriesProvider.MicrosoftNETCoreAppVersion}"); + if (extraMSBuildProperties != null) { restoreArgs.Add(extraMSBuildProperties); diff --git a/src/test/dir.proj b/src/test/dir.proj index e4ac9174..39179f58 100644 --- a/src/test/dir.proj +++ b/src/test/dir.proj @@ -108,7 +108,7 @@ Date: Tue, 2 May 2017 15:17:59 -0700 Subject: [PATCH 289/625] Remove all extra PackageReferences from the migrated test assets --- .../TestProjects/LightupLib/LightupLib.csproj | 276 ------------------ .../PortableApp/PortableApp.csproj | 276 ------------------ .../ResourceLookup/ResourceLookup.csproj | 276 ------------------ .../SharedFxLookupPortableApp.csproj | 276 ------------------ 4 files changed, 1104 deletions(-) diff --git a/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj b/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj index f8006a15..0017da9e 100644 --- a/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj +++ b/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj @@ -10,282 +10,6 @@ - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - diff --git a/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj b/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj index 01559802..3f2e748b 100644 --- a/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj +++ b/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj @@ -10,282 +10,6 @@ - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - diff --git a/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj index 8613fc4b..9a6b9b4a 100644 --- a/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj +++ b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj @@ -10,282 +10,6 @@ - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - diff --git a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj index c9cc5679..a4f642e9 100644 --- a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj +++ b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj @@ -10,282 +10,6 @@ - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - - - None - From d097f88ebf4db4df9e187a29f4abaf59eec4cfb3 Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Tue, 2 May 2017 16:46:40 -0700 Subject: [PATCH 290/625] Fix build problems outside of Windows. --- src/pkg/packaging/dir.proj | 9 +++++---- tools-local/tasks/GetBuildableFrameworks.cs | 3 ++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 57b45667..2bf1a99c 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -160,8 +160,8 @@ - - + + @@ -171,7 +171,8 @@ --version-suffix $(VersionSuffix) - + - \ No newline at end of file + diff --git a/tools-local/tasks/GetBuildableFrameworks.cs b/tools-local/tasks/GetBuildableFrameworks.cs index 54c6eb88..285765c0 100644 --- a/tools-local/tasks/GetBuildableFrameworks.cs +++ b/tools-local/tasks/GetBuildableFrameworks.cs @@ -40,11 +40,12 @@ namespace Microsoft.DotNet.Build.Tasks string[] tfms = match.Groups[1].Value.Split(';'); foreach (string framework in tfms) { + Console.WriteLine("OSGroup: " + OSGroup); if (OSGroup == "Windows_NT" || framework.StartsWith("netstandard") || framework.StartsWith("netcoreapp")) { - args.Add($"--framework {framework} {dir}"); + args.Add($"--framework {framework} {projectJsonPath}"); } } } From b1331b8d3dbd89be7762a9ea37a6348cb9bf8df5 Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Tue, 2 May 2017 17:28:58 -0700 Subject: [PATCH 291/625] Remove explicit "RuntimeFrameworkVersion" property in test projects. --- src/test/HostActivationTests/HostActivationTests.csproj | 2 +- .../Microsoft.Extensions.DependencyModel.Tests.csproj | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/test/HostActivationTests/HostActivationTests.csproj b/src/test/HostActivationTests/HostActivationTests.csproj index c72985fe..6aa9c2cb 100644 --- a/src/test/HostActivationTests/HostActivationTests.csproj +++ b/src/test/HostActivationTests/HostActivationTests.csproj @@ -5,7 +5,7 @@ HostActivationTests HostActivationTests true - 1.0.4 + $(PackageTargetFallback);dotnet5.4;portable-net451+win8 diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj index 4ca3d705..3c00173e 100644 --- a/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj @@ -9,7 +9,6 @@ true Microsoft.Extensions.DependencyModel.Tests true - 1.0.4 $(PackageTargetFallback);dotnet5.4;portable-net451+win8 From a0a02836570fcc75262bb7b276838477cf755f39 Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Wed, 3 May 2017 11:10:49 -0700 Subject: [PATCH 292/625] Make sure tests target netcoreapp2.0 --- src/test/HostActivationTests/HostActivationTests.csproj | 1 - .../Microsoft.Extensions.DependencyModel.Tests.csproj | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/test/HostActivationTests/HostActivationTests.csproj b/src/test/HostActivationTests/HostActivationTests.csproj index 6aa9c2cb..e9ef49f7 100644 --- a/src/test/HostActivationTests/HostActivationTests.csproj +++ b/src/test/HostActivationTests/HostActivationTests.csproj @@ -5,7 +5,6 @@ HostActivationTests HostActivationTests true - $(PackageTargetFallback);dotnet5.4;portable-net451+win8 diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj index 3c00173e..a916c957 100644 --- a/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj @@ -2,7 +2,7 @@ Microsoft.DotNet.Tools.Tests.Utilities Class Library - netcoreapp1.0 + netcoreapp2.0 Microsoft.Extensions.DependencyModel.Tests ../../../tools-local/setuptools/Key.snk true From 082b97720e84f815ff918d8d4b719603a27e5fbe Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Wed, 3 May 2017 12:35:21 -0700 Subject: [PATCH 293/625] Fix remaining test issues. --- dir.props | 2 +- run.sh | 4 ++-- .../GivenThatICareAboutStandaloneAppActivation.cs | 12 ++++++++++++ .../PackageResolverTest.cs | 9 ++++++--- src/test/dir.proj | 4 ++-- 5 files changed, 23 insertions(+), 8 deletions(-) diff --git a/dir.props b/dir.props index 1b53d81f..027e5da2 100644 --- a/dir.props +++ b/dir.props @@ -133,7 +133,7 @@ $(DotnetToolCommand) @(DnuSourceList -> '--source %(Identity)', ' ') - "$(DotnetToolCommand)" + DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 "$(DotnetToolCommand)" $(DnuRestoreCommand) restore $(DnuRestoreCommand) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" $(DnuRestoreSource) $(DnuRestoreCommand) --lock diff --git a/run.sh b/run.sh index 510caad3..2937717c 100755 --- a/run.sh +++ b/run.sh @@ -17,5 +17,5 @@ __dotnet=$__toolsLocalPath/dotnetcli/dotnet cp -fR $__scriptpath/tools-override/* $__toolsLocalPath -$__dotnet $__toolsLocalPath/run.exe $* -exit $? \ No newline at end of file +DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 $__dotnet $__toolsLocalPath/run.exe $* +exit $? diff --git a/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs b/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs index 0837a7bb..c8d8e423 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs @@ -50,6 +50,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.StandaloneApp var appExe = fixture.TestProject.AppExe; + // TODO: Use FS.Chmod when build utility project is converted to csproj. + if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) + { + Command.Create("chmod", "+x", appExe).Execute().EnsureSuccessful(); + } + Command.Create(appExe) .CaptureStdErr() .CaptureStdOut() @@ -68,6 +74,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.StandaloneApp var appExe = fixture.TestProject.AppExe; + // TODO: Use FS.Chmod when build utility project is converted to csproj. + if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) + { + Command.Create("chmod", "+x", appExe).Execute().EnsureSuccessful(); + } + Command.Create(appExe) .CaptureStdErr() .CaptureStdOut() diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs index 6d15234e..20341c02 100644 --- a/src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs @@ -17,7 +17,8 @@ namespace Microsoft.Extensions.DependencyModel.Tests { private static string PackagesPath = Path.Combine("package", "directory", "location"); - [Fact] + // This test does not work on .NET Core 2.0. + // [Fact] public void ShouldUseEnvironmentVariableToGetDefaultLocation() { var environment = EnvironmentMockBuilder.Create() @@ -29,7 +30,8 @@ namespace Microsoft.Extensions.DependencyModel.Tests } - [Fact] + // This test does not work on .NET Core 2.0. + // [Fact] public void ShouldUseNugetUnderUserProfileOnWindows() { var environment = EnvironmentMockBuilder.Create() @@ -40,7 +42,8 @@ namespace Microsoft.Extensions.DependencyModel.Tests result.Should().Contain(Path.Combine("User Profile", ".nuget", "packages")); } - [Fact] + // This test does not work on .NET Core 2.0. + // [Fact] public void ShouldUseNugetUnderHomeOnNonWindows() { var environment = EnvironmentMockBuilder.Create() diff --git a/src/test/dir.proj b/src/test/dir.proj index 39179f58..72e5c2ef 100644 --- a/src/test/dir.proj +++ b/src/test/dir.proj @@ -69,7 +69,7 @@ - @@ -145,4 +145,4 @@ DestinationFiles="@(SharedFrameworkPublishFiles->'$(TestsOutputDir)sharedFrameworkPublish/%(RecursiveDir)%(Filename)%(Extension)')" /> - \ No newline at end of file + From 02e2907131dc6d1141ff5f6eb31a8fbeecdec590 Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Wed, 3 May 2017 12:55:36 -0700 Subject: [PATCH 294/625] Don't set DOTNET_SKIP_FIRST_TIME_EXPERIENCE on Windows. --- dir.props | 4 ++-- src/test/dir.proj | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/dir.props b/dir.props index 027e5da2..03a10f35 100644 --- a/dir.props +++ b/dir.props @@ -132,8 +132,8 @@ $(DotnetSdkPath)dotnet $(DotnetToolCommand) @(DnuSourceList -> '--source %(Identity)', ' ') - - DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 "$(DotnetToolCommand)" + DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 + $(DnuRestorePrefix) "$(DotnetToolCommand)" $(DnuRestoreCommand) restore $(DnuRestoreCommand) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" $(DnuRestoreSource) $(DnuRestoreCommand) --lock diff --git a/src/test/dir.proj b/src/test/dir.proj index 72e5c2ef..44dc6b53 100644 --- a/src/test/dir.proj +++ b/src/test/dir.proj @@ -66,10 +66,11 @@ $(RestoreSourceArg) @(RestoreTestFallbackSource->'--source %(Identity)', ' ') --disable-parallel --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" $(RestoreSourceArg) $(RestoreArgs) /p:MNAVersion=$(ProductVersion) /p:TestTargetRid=$(TestTargetRid) + DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 - From 30a8dbce258875f5eab0152faef47cc1d4e605c5 Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Wed, 3 May 2017 13:15:11 -0700 Subject: [PATCH 295/625] Pass TestTargetRid instead of RuntimeIdentifier(s) in restore in test code. --- src/test/TestUtils/TestProjectFixture.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/TestUtils/TestProjectFixture.cs b/src/test/TestUtils/TestProjectFixture.cs index 84fc060a..e219fa90 100644 --- a/src/test/TestUtils/TestProjectFixture.cs +++ b/src/test/TestUtils/TestProjectFixture.cs @@ -319,7 +319,7 @@ namespace Microsoft.DotNet.CoreSetup.Test { if ( ! _testProject.IsRestored()) { - string extraMSBuildProperties = $"/p:RuntimeIdentifiers={rid} /p:RuntimeIdentifier={rid}"; + string extraMSBuildProperties = $"/p:TestTargetRid={rid}"; RestoreProject(fallbackSources, extraMSBuildProperties); } From 55349c0fa4527b09a9d967afd0fb9352c40576f0 Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Wed, 3 May 2017 13:15:30 -0700 Subject: [PATCH 296/625] Clean up cruft left over from "dotnet migrate". --- .../Microsoft.Extensions.DependencyModel.csproj | 11 ++--------- .../Assets/TestProjects/LightupLib/LightupLib.csproj | 2 +- .../TestProjects/PortableApp/PortableApp.csproj | 2 +- .../TestProjects/ResourceLookup/ResourceLookup.csproj | 2 +- .../SharedFxLookupPortableApp.csproj | 2 +- 5 files changed, 6 insertions(+), 13 deletions(-) diff --git a/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj b/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj index 09ea401d..adf3716f 100644 --- a/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj +++ b/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj @@ -12,15 +12,11 @@ Microsoft.Extensions.DependencyModel git git://github.com/dotnet/core-setup - $(PackageTargetFallback);portable-net45+wp80+win8+wpa81+dnxcore50 - $(PackageTargetFallback);portable-net45+wp80+win8+wpa81+dnxcore50 + $(PackageTargetFallback);portable-net45+wp80+win8+wpa81+dnxcore50 - - - @@ -29,13 +25,10 @@ - + - - - diff --git a/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj b/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj index 0017da9e..dcf31513 100644 --- a/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj +++ b/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj @@ -8,7 +8,7 @@ $(MNAVersion) - + diff --git a/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj b/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj index 3f2e748b..7c8f2a52 100644 --- a/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj +++ b/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj @@ -8,7 +8,7 @@ $(MNAVersion) - + diff --git a/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj index 9a6b9b4a..ce695f2b 100644 --- a/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj +++ b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj @@ -8,7 +8,7 @@ $(MNAVersion) - + diff --git a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj index a4f642e9..0b6183eb 100644 --- a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj +++ b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj @@ -8,7 +8,7 @@ $(MNAVersion) - + From 97bb1bcd31f794efc5bd799ff61e157862dfb27c Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Wed, 3 May 2017 13:16:16 -0700 Subject: [PATCH 297/625] [netci.groovy] Interpret testResults.xml files as MSBuild results files, not Xunit results. --- netci.groovy | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/netci.groovy b/netci.groovy index 621c7136..0cee87c6 100644 --- a/netci.groovy +++ b/netci.groovy @@ -84,7 +84,7 @@ platformList.each { platform -> Utilities.standardJobSetup(newJob, project, isPR, "*/${branch}") if (!(os == 'Windows_NT' && architecture == 'arm')) { - Utilities.addXUnitDotNETResults(newJob, '**/*-testResults.xml') + Utilities.addMSTestResults(newJob, '**/*-testResults.xml') } if (os == 'Ubuntu16.04' && architecture == 'arm') { From bd5f1ce852d98db0e8d34d9e7fa53387437f7f9f Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Wed, 3 May 2017 14:19:21 -0700 Subject: [PATCH 298/625] Revert change to InitBaseDotnetCli --- src/test/dir.proj | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/test/dir.proj b/src/test/dir.proj index 44dc6b53..2fb50b78 100644 --- a/src/test/dir.proj +++ b/src/test/dir.proj @@ -31,18 +31,16 @@ DependsOnTargets="DetermineTestOutputDirectory"> $(TestsOutputDir)Tools + powershell -NoProfile -ExecutionPolicy unrestricted -Command "$(MSBuildThisFileDirectory)bootstrap/bootstrap.ps1" -ToolsLocalPath $(TestToolsLocalPath) -Architecture $(TargetArchitecture) + $(MSBuildThisFileDirectory)bootstrap/bootstrap.sh --toolsLocalPath $(TestToolsLocalPath) $(TestToolsLocalPath)/dotnetcli/dotnet.exe $(TestToolsLocalPath)/dotnetcli/dotnet - - - - + - From fb6fdf586ed3df55df71b0f83693004b8ea7e5ff Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Wed, 3 May 2017 15:17:07 -0700 Subject: [PATCH 299/625] Set DOTNET_SKIP_FIRST_TIME_EXPERIENCE in more places --- init-tools.cmd | 4 ++++ init-tools.sh | 4 ++++ run.cmd | 2 ++ run.sh | 4 +++- 4 files changed, 13 insertions(+), 1 deletion(-) diff --git a/init-tools.cmd b/init-tools.cmd index 003a1605..1a63028b 100644 --- a/init-tools.cmd +++ b/init-tools.cmd @@ -16,6 +16,10 @@ set PROJECT_JSON_FILE=%PROJECT_JSON_PATH%\project.json set PROJECT_JSON_CONTENTS={ "dependencies": { "Microsoft.DotNet.BuildTools": "%BUILDTOOLS_VERSION%" }, "frameworks": { "netcoreapp1.0": { } } } set BUILD_TOOLS_SEMAPHORE=%PROJECT_JSON_PATH%\init-tools.completed set DUMMY_GLOBAL_JSON_PATH=%PACKAGES_DIR%global.json + +:: We do not want to run the first-time experience. +set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 + :: if force option is specified then clean the tool runtime and build tools package directory to force it to get recreated if [%1]==[force] ( if exist "%TOOLRUNTIME_DIR%" rmdir /S /Q "%TOOLRUNTIME_DIR%" diff --git a/init-tools.sh b/init-tools.sh index b49247e4..f26035e8 100755 --- a/init-tools.sh +++ b/init-tools.sh @@ -18,6 +18,10 @@ __PROJECT_JSON_FILE=$__PROJECT_JSON_PATH/project.json __PROJECT_JSON_CONTENTS="{ \"dependencies\": { \"Microsoft.DotNet.BuildTools\": \"$__BUILD_TOOLS_PACKAGE_VERSION\" }, \"frameworks\": { \"netcoreapp1.0\": { } } }" __INIT_TOOLS_DONE_MARKER=$__PROJECT_JSON_PATH/done __DUMMY_GLOBAL_JSON_PATH=$__PACKAGES_DIR/global.json + +# We do not want to run the first-time experience. +export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 + # Extended version of platform detection logic from dotnet/cli/scripts/obtain/dotnet-install.sh 16692fc get_current_linux_name() { # Detect Distro diff --git a/run.cmd b/run.cmd index b0a0ed07..03abcc80 100644 --- a/run.cmd +++ b/run.cmd @@ -12,5 +12,7 @@ if not defined VisualStudioVersion ( ) :Run +:: We do not want to run the first-time experience. +set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 powershell -NoProfile -ExecutionPolicy unrestricted -Command "%~dp0run.ps1 -- %*" exit /b %ERRORLEVEL% \ No newline at end of file diff --git a/run.sh b/run.sh index 2937717c..f01c2846 100755 --- a/run.sh +++ b/run.sh @@ -17,5 +17,7 @@ __dotnet=$__toolsLocalPath/dotnetcli/dotnet cp -fR $__scriptpath/tools-override/* $__toolsLocalPath -DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 $__dotnet $__toolsLocalPath/run.exe $* +# We do not want to run the first-time experience. +export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 +$__dotnet $__toolsLocalPath/run.exe $* exit $? From 2f3a31f0e475dc2fb91012fcaa0c082f6e74fe8a Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Wed, 3 May 2017 16:06:22 -0700 Subject: [PATCH 300/625] Add CoreLib explicitly to TPA list (#2272) --- src/corehost/cli/hostpolicy.cpp | 17 ++++++++++++++++- src/corehost/common/pal.h | 2 ++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/corehost/cli/hostpolicy.cpp b/src/corehost/cli/hostpolicy.cpp index eb41ed82..a63e3dfc 100644 --- a/src/corehost/cli/hostpolicy.cpp +++ b/src/corehost/cli/hostpolicy.cpp @@ -49,6 +49,22 @@ int run(const arguments_t& args) return StatusCode::CoreClrResolveFailure; } + // Get path in which CoreCLR is present. + pal::string_t clr_dir = get_directory(clr_path); + + // System.Private.CoreLib.dll is expected to be next to CoreCLR.dll - add its path to the TPA list. + pal::string_t corelib_path = clr_dir; + append_path(&corelib_path, CORELIB_NAME); + + // Append CoreLib path + if (probe_paths.tpa.back() != PATH_SEPARATOR) + { + probe_paths.tpa.push_back(PATH_SEPARATOR); + } + + probe_paths.tpa.append(corelib_path); + probe_paths.tpa.push_back(PATH_SEPARATOR); + pal::string_t clrjit_path = probe_paths.clrjit; if (clrjit_path.empty()) { @@ -143,7 +159,6 @@ int run(const arguments_t& args) assert(property_keys.size() == property_values.size()); // Bind CoreCLR - pal::string_t clr_dir = get_directory(clr_path); trace::verbose(_X("CoreCLR path = '%s', CoreCLR dir = '%s'"), clr_path.c_str(), clr_dir.c_str()); if (!coreclr::bind(clr_dir)) { diff --git a/src/corehost/common/pal.h b/src/corehost/common/pal.h index a4981976..4edbc4fe 100644 --- a/src/corehost/common/pal.h +++ b/src/corehost/common/pal.h @@ -77,6 +77,8 @@ #define LIBCORECLR_FILENAME (LIB_PREFIX _X("coreclr")) #define LIBCORECLR_NAME MAKE_LIBNAME("coreclr") +#define CORELIB_NAME _X("System.Private.CoreLib.dll") + #define LIBHOSTPOLICY_FILENAME (LIB_PREFIX _X("hostpolicy")) #define LIBHOSTPOLICY_NAME MAKE_LIBNAME("hostpolicy") From 4427a4344dadde207b7ee489223aafe70da4e19d Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Wed, 3 May 2017 16:17:20 -0700 Subject: [PATCH 301/625] Address a variety of issues from PR feedback. --- netci.groovy | 2 +- .../Microsoft.DotNet.PlatformAbstractions.csproj | 3 --- .../Microsoft.Extensions.DependencyModel.csproj | 3 --- src/managed/dir.proj | 2 +- src/pkg/packaging/dir.proj | 3 +-- .../LightupClient/LightupClient.csproj | 2 -- .../TestProjects/LightupLib/LightupLib.csproj | 2 -- .../TestProjects/PortableApp/PortableApp.csproj | 2 -- .../PortableTestApp/PortableTestApp.csproj | 2 -- .../ResourceLookup/ResourceLookup.csproj | 2 -- .../SharedFxLookupPortableApp.csproj | 2 -- .../StandaloneApp/StandaloneApp.csproj | 3 --- .../StandaloneTestApp/StandaloneTestApp.csproj | 3 --- ...GivenThatICareAboutStandaloneAppActivation.cs | 6 ++++-- ...osoft.Extensions.DependencyModel.Tests.csproj | 4 +--- src/test/TestUtils/TestProject.cs | 16 ++++++++-------- .../Utils/DotNetCli.cs | 2 +- src/test/dir.proj | 3 +-- tools-local/tasks/GetBuildableFrameworks.cs | 10 ++++------ 19 files changed, 22 insertions(+), 50 deletions(-) diff --git a/netci.groovy b/netci.groovy index 0cee87c6..3ce53737 100644 --- a/netci.groovy +++ b/netci.groovy @@ -84,7 +84,7 @@ platformList.each { platform -> Utilities.standardJobSetup(newJob, project, isPR, "*/${branch}") if (!(os == 'Windows_NT' && architecture == 'arm')) { - Utilities.addMSTestResults(newJob, '**/*-testResults.xml') + Utilities.addMSTestResults(newJob, '**/*-testResults.trx') } if (os == 'Ubuntu16.04' && architecture == 'arm') { diff --git a/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj b/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj index eb8803b2..2d640160 100644 --- a/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj +++ b/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj @@ -6,17 +6,14 @@ net45;netstandard1.3 true true - Microsoft.DotNet.PlatformAbstractions ../../../tools-local/setuptools/Key.snk true true - Microsoft.DotNet.PlatformAbstractions git git://github.com/dotnet/core-setup - diff --git a/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj b/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj index adf3716f..900c8120 100644 --- a/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj +++ b/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj @@ -5,11 +5,9 @@ 2.0.0 net451;netstandard1.3;netstandard1.6 true - Microsoft.Extensions.DependencyModel ../../../tools-local/setuptools/Key.snk true true - Microsoft.Extensions.DependencyModel git git://github.com/dotnet/core-setup $(PackageTargetFallback);portable-net45+wp80+win8+wpa81+dnxcore50 @@ -21,7 +19,6 @@ - diff --git a/src/managed/dir.proj b/src/managed/dir.proj index 130baf66..a2c685cb 100644 --- a/src/managed/dir.proj +++ b/src/managed/dir.proj @@ -20,7 +20,7 @@ + ProjectPaths="@(PackageProjects)"> diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 2bf1a99c..3cf620b2 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -165,13 +165,12 @@ - --output $(PackagesOutDir) --configuration $(ConfigurationGroup) --version-suffix $(VersionSuffix) - diff --git a/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj b/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj index 676d9c4f..96b8f4dc 100644 --- a/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj +++ b/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj @@ -2,9 +2,7 @@ netcoreapp2.0 - LightupClient Exe - LightupClient $(MNAVersion) diff --git a/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj b/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj index dcf31513..428a201a 100644 --- a/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj +++ b/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj @@ -2,9 +2,7 @@ netcoreapp2.0 - LightupLib Library - LightupLib $(MNAVersion) diff --git a/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj b/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj index 7c8f2a52..a000ccfe 100644 --- a/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj +++ b/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj @@ -2,9 +2,7 @@ netcoreapp2.0 - PortableApp Exe - PortableApp $(MNAVersion) diff --git a/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj b/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj index 25e6c975..77b7ebe6 100644 --- a/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj +++ b/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj @@ -2,8 +2,6 @@ netcoreapp2.0 - PortableTestApp - PortableTestApp true $(PackageTargetFallback);dotnet5.4;portable-net451+win8 $(MNAVersion) diff --git a/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj index ce695f2b..3a5d893a 100644 --- a/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj +++ b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj @@ -2,9 +2,7 @@ netcoreapp2.0 - ResourceLookup Exe - ResourceLookup $(MNAVersion) diff --git a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj index 0b6183eb..a000ccfe 100644 --- a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj +++ b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj @@ -2,9 +2,7 @@ netcoreapp2.0 - SharedFxLookupPortableApp Exe - SharedFxLookupPortableApp $(MNAVersion) diff --git a/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.csproj b/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.csproj index d21a9fc0..f5c58fb9 100644 --- a/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.csproj +++ b/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.csproj @@ -2,10 +2,7 @@ netcoreapp2.0 - StandaloneApp Exe - StandaloneApp - $(TestTargetRid) $(TestTargetRid) $(MNAVersion) diff --git a/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneTestApp.csproj b/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneTestApp.csproj index 20f261f0..0444cdc5 100644 --- a/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneTestApp.csproj +++ b/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneTestApp.csproj @@ -2,12 +2,9 @@ netcoreapp2.0 - StandaloneTestApp Exe - StandaloneTestApp true $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - $(TestTargetRid) $(TestTargetRid) $(MNAVersion) diff --git a/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs b/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs index c8d8e423..95b95bf5 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs @@ -51,9 +51,10 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.StandaloneApp var appExe = fixture.TestProject.AppExe; // TODO: Use FS.Chmod when build utility project is converted to csproj. + // See https://github.com/NuGet/Home/issues/4424 if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { - Command.Create("chmod", "+x", appExe).Execute().EnsureSuccessful(); + Command.Create("chmod", "u+x", appExe).Execute().EnsureSuccessful(); } Command.Create(appExe) @@ -75,9 +76,10 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.StandaloneApp var appExe = fixture.TestProject.AppExe; // TODO: Use FS.Chmod when build utility project is converted to csproj. + // See https://github.com/NuGet/Home/issues/4424 if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { - Command.Create("chmod", "+x", appExe).Execute().EnsureSuccessful(); + Command.Create("chmod", "u+x", appExe).Execute().EnsureSuccessful(); } Command.Create(appExe) diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj index a916c957..bb7c3c7c 100644 --- a/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/Microsoft.Extensions.DependencyModel.Tests.csproj @@ -22,11 +22,9 @@ + - - - diff --git a/src/test/TestUtils/TestProject.cs b/src/test/TestUtils/TestProject.cs index 8a25d252..5939dc9f 100644 --- a/src/test/TestUtils/TestProject.cs +++ b/src/test/TestUtils/TestProject.cs @@ -15,8 +15,8 @@ namespace Microsoft.DotNet.CoreSetup.Test private string _sharedLibraryExtension; private string _sharedLibraryPrefix; - private string _projectJson; - private string _projectLockJson; + private string _projectFile; + private string _projectAssetsJson; private string _runtimeConfigJson; private string _depsJson; private string _appDll; @@ -29,8 +29,8 @@ namespace Microsoft.DotNet.CoreSetup.Test public string OutputDirectory { get { return _outputDirectory; } set { _outputDirectory = value; } } public string ExeExtension { get { return _exeExtension; } set { _exeExtension = value; } } - public string ProjectJson { get { return _projectJson; } set { _projectJson = value; } } - public string ProjectLockJson { get { return _projectLockJson; } set { _projectLockJson = value; } } + public string ProjectFile { get { return _projectFile; } set { _projectFile = value; } } + public string ProjectAssetsJson { get { return _projectAssetsJson; } set { _projectAssetsJson = value; } } public string RuntimeConfigJson { get { return _runtimeConfigJson; } set { _runtimeConfigJson = value; } } public string DepsJson { get { return _depsJson; } set { _depsJson = value; } } public string AppDll { get { return _appDll; } set { _appDll = value; } } @@ -50,8 +50,8 @@ namespace Microsoft.DotNet.CoreSetup.Test _sharedLibraryExtension = sharedLibraryExtension; _sharedLibraryPrefix = sharedLibraryPrefix; _projectName = Path.GetFileName(_projectDirectory); - _projectJson = Path.Combine(_projectDirectory, $"{_projectName}.csproj"); - _projectLockJson = Path.Combine(_projectDirectory, "obj", "project.assets.json"); + _projectFile = Path.Combine(_projectDirectory, $"{_projectName}.csproj"); + _projectAssetsJson = Path.Combine(_projectDirectory, "obj", "project.assets.json"); _outputDirectory = outputDirectory ?? Path.Combine(_projectDirectory, "bin"); if (Directory.Exists(_outputDirectory)) @@ -77,12 +77,12 @@ namespace Microsoft.DotNet.CoreSetup.Test public bool IsRestored() { - if (string.IsNullOrEmpty(_projectLockJson)) + if (string.IsNullOrEmpty(_projectAssetsJson)) { return false; } - return File.Exists(_projectLockJson); + return File.Exists(_projectAssetsJson); } private void CopyRecursive(string sourceDirectory, string destinationDirectory, bool overwrite = false) diff --git a/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs b/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs index 731e08ef..6a061e0c 100644 --- a/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs +++ b/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs @@ -96,7 +96,7 @@ namespace Microsoft.DotNet.Cli.Build GreatestVersionSharedFxPath = sharedFxVersionDirectories .OrderByDescending(p => p.ToLower()) .First(); - + var hostFxrVersionDirectories = Directory.EnumerateDirectories(hostFxrBaseDirectory); GreatestVersionHostFxrPath = hostFxrVersionDirectories .OrderByDescending(p => p.ToLower()) diff --git a/src/test/dir.proj b/src/test/dir.proj index 2fb50b78..0edc7a92 100644 --- a/src/test/dir.proj +++ b/src/test/dir.proj @@ -67,7 +67,6 @@ DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 - @@ -103,7 +102,7 @@ --configuration $(ConfigurationGroup) true - $(TestsOutputDir)$(TestProjectFilename)-testResults.xml + $(TestsOutputDir)$(TestProjectFilename)-testResults.trx args = new List(); - foreach (var projectJsonPath in ProjectJsonPaths) + foreach (var projectPath in ProjectPaths) { - string dir = Path.GetDirectoryName(projectJsonPath.ItemSpec); - string text = File.ReadAllText(projectJsonPath.ItemSpec); + string text = File.ReadAllText(projectPath.ItemSpec); Match match = Regex.Match(text, "(.*)"); if (match.Groups.Count == 2) { string[] tfms = match.Groups[1].Value.Split(';'); foreach (string framework in tfms) { - Console.WriteLine("OSGroup: " + OSGroup); if (OSGroup == "Windows_NT" || framework.StartsWith("netstandard") || framework.StartsWith("netcoreapp")) { - args.Add($"--framework {framework} {projectJsonPath}"); + args.Add($"--framework {framework} {projectPath}"); } } } From 22744ced2103c72f28de2efda575cde33c61633c Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Wed, 3 May 2017 16:44:26 -0700 Subject: [PATCH 302/625] More minor test project and code cleanup. --- .../PackageResolverTest.cs | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs index 20341c02..65519232 100644 --- a/src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs @@ -17,8 +17,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests { private static string PackagesPath = Path.Combine("package", "directory", "location"); - // This test does not work on .NET Core 2.0. - // [Fact] + [Fact] public void ShouldUseEnvironmentVariableToGetDefaultLocation() { var environment = EnvironmentMockBuilder.Create() @@ -26,12 +25,13 @@ namespace Microsoft.Extensions.DependencyModel.Tests .Build(); var result = PackageCompilationAssemblyResolver.GetDefaultProbeDirectories(Platform.Unknown, environment); - result.Should().Contain(PackagesPath); + // The host for .NET Core 2.0 always sets the PROBING_DIRECTORIES property on the AppContext. Because of that, + // no additional package directories should be returned from this, even if they are set as environment variables. + result.Should().NotContain(PackagesPath); } - // This test does not work on .NET Core 2.0. - // [Fact] + [Fact] public void ShouldUseNugetUnderUserProfileOnWindows() { var environment = EnvironmentMockBuilder.Create() @@ -39,11 +39,12 @@ namespace Microsoft.Extensions.DependencyModel.Tests .Build(); var result = PackageCompilationAssemblyResolver.GetDefaultProbeDirectories(Platform.Windows, environment); - result.Should().Contain(Path.Combine("User Profile", ".nuget", "packages")); + // The host for .NET Core 2.0 always sets the PROBING_DIRECTORIES property on the AppContext. Because of that, + // no additional package directories should be returned from this, even if they are set as environment variables. + result.Should().NotContain(Path.Combine("User Profile", ".nuget", "packages")); } - // This test does not work on .NET Core 2.0. - // [Fact] + [Fact] public void ShouldUseNugetUnderHomeOnNonWindows() { var environment = EnvironmentMockBuilder.Create() @@ -51,7 +52,9 @@ namespace Microsoft.Extensions.DependencyModel.Tests .Build(); var result = PackageCompilationAssemblyResolver.GetDefaultProbeDirectories(Platform.Linux, environment); - result.Should().Contain(Path.Combine("User Home", ".nuget", "packages")); + // The host for .NET Core 2.0 always sets the PROBING_DIRECTORIES property on the AppContext. Because of that, + // no additional package directories should be returned from this, even if they are set as environment variables. + result.Should().NotContain(Path.Combine("User Home", ".nuget", "packages")); } [Fact] From faf3e369d1d7ac4e0c842a0bf771d78c0cf8323d Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Wed, 3 May 2017 19:51:07 -0700 Subject: [PATCH 303/625] make host largeaddressaware --- src/corehost/cli/setup.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/src/corehost/cli/setup.cmake b/src/corehost/cli/setup.cmake index 2deb3ce3..3b161f75 100644 --- a/src/corehost/cli/setup.cmake +++ b/src/corehost/cli/setup.cmake @@ -26,6 +26,7 @@ if(WIN32) add_compile_options(/fp:precise) add_compile_options(/EHsc) + set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /LARGEADDRESSAWARE") # can handle addresses larger than 2 gigabytes set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /DEBUG") set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /INCREMENTAL:NO") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /DEBUG /PDBCOMPRESS") From b3001bb3f5478e970224687a9a3b372bdf8d09e0 Mon Sep 17 00:00:00 2001 From: chcosta Date: Thu, 4 May 2017 09:26:52 -0700 Subject: [PATCH 304/625] Specify content-type for .svg and .version files (#2253) * Specify content-type for .svg and .version files * remove debug stuff * Fix readme links * remove redundant method call --- README.md | 92 +++++++++---------- .../AzureHelper.cs | 2 + .../UploadClient.cs | 37 +++++++- 3 files changed, 80 insertions(+), 51 deletions(-) diff --git a/README.md b/README.md index bf64a1fc..0a1c7e26 100644 --- a/README.md +++ b/README.md @@ -59,10 +59,10 @@ Daily Builds [win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x64_Release_version_badge.svg -[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win,x64.version -[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64.latest.exe -[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest.zip -[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest.zip +[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x64.version +[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64-latest.exe +[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64-latest.zip +[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64-latest.zip [win-x64-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x64_Release_version_badge.svg [win-x64-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x64.version @@ -75,10 +75,10 @@ Daily Builds [win-x64-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x64.latest.zip [win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x86_Release_version_badge.svg -[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x86.version -[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86.latest.exe -[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest.zip -[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest.zip +[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x86.version +[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86-latest.exe +[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86-latest.zip +[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86-latest.zip [win-x86-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x86_Release_version_badge.svg [win-x86-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x86.version @@ -92,19 +92,19 @@ Daily Builds [win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_arm_Release_version_badge.svg [win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm.version -[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm.latest.zip -[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm.latest.zip +[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm-latest.zip +[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm-latest.zip [win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_arm64_Release_version_badge.svg [win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm64.version -[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest.zip -[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest.zip +[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64-latest.zip +[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64-latest.zip [osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx-x64_Release_version_badge.svg -[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx.x64.version -[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64.latest.pkg -[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest.tar.gz -[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz +[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx-x64.version +[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64-latest.pkg +[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest-tar.gz +[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64-latest.tar.gz [osx-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_OSX_x64_Release_version_badge.svg [osx-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.osx.x64.version @@ -118,22 +118,22 @@ Daily Builds [linux-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux-x64_Release_version_badge.svg -[linux-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.x64.version -[linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64.latest.tar.gz -[linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz +[linux-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux-x64.version +[linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64-latest.tar.gz +[linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64-latest.tar.gz [linux-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_arm_Release_version_badge.svg -[linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.arm.version -[linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-arm.latest.tar.gz -[linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm.latest.tar.gz +[linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux-arm.version +[linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-arm-latest.tar.gz +[linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm-latest.tar.gz [ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg -[ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.x64.version -[ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu-x64.latest.deb -[ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu-x64.latest.deb -[ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu-x64.latest.deb -[ubuntu-14.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu-x64.latest.tar.gz -[ubuntu-14.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu-x64.latest.tar.gz +[ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu-x64.version +[ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu-x64-latest.deb +[ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu-x64-latest.deb +[ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu-x64-latest.deb +[ubuntu-14.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu-x64-latest.tar.gz +[ubuntu-14.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu-x64-latest.tar.gz [ubuntu-14.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_x64_Release_version_badge.svg [ubuntu-14.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.x64.version @@ -151,12 +151,12 @@ Daily Builds [ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg -[ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04.x64.version -[ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu.16.04-x64.latest.tar.gz -[ubuntu-16.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu.16.04-x64.latest.tar.gz +[ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04-x64.version +[ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.04-x64-latest.deb +[ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.04-x64-latest.deb +[ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.04-x64-latest.deb +[ubuntu-16.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu.16.04-x64-latest.tar.gz +[ubuntu-16.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu.16.04-x64-latest.tar.gz [ubuntu-16.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_04_x64_Release_version_badge.svg [ubuntu-16.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.04.x64.version @@ -174,12 +174,12 @@ Daily Builds [ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg -[ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.10.x64.version -[ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu.16.10-x64.latest.tar.gz -[ubuntu-16.10-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu.16.10-x64.latest.tar.gz +[ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.10-x64.version +[ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.10-x64-latest.deb +[ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.10-x64-latest.deb +[ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.10-x64-latest.deb +[ubuntu-16.10-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu.16.10-x64-latest.tar.gz +[ubuntu-16.10-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu.16.10-x64-latest.tar.gz [ubuntu-16.10-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_10_x64_Release_version_badge.svg [ubuntu-16.10-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.10.x64.version @@ -190,12 +190,12 @@ Daily Builds [debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_debian.8-x64_Release_version_badge.svg -[debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.debian.8.x64.version -[debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-debian-x64.latest.deb -[debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-debian-x64.latest.deb -[debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-debian-x64.latest.deb -[debian-8.2-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-debian-x64.latest.tar.gz -[debian-8.2-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-debian-x64.latest.tar.gz +[debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.debian.8-x64.version +[debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-debian-x64-latest.deb +[debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-debian-x64-latest.deb +[debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-debian-x64-latest.deb +[debian-8.2-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-debian-x64-latest.tar.gz +[debian-8.2-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-debian-x64-latest.tar.gz [debian-8.2-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Debian_x64_Release_version_badge.svg [debian-8.2-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.debian.x64.version diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs index 3c11122b..f5e9d502 100644 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs @@ -29,6 +29,8 @@ namespace Microsoft.DotNet.Build.Tasks.Utility public const string DateHeaderString = "x-ms-date"; public const string VersionHeaderString = "x-ms-version"; public const string AuthorizationHeaderString = "Authorization"; + public const string CacheControlString = "x-ms-blob-cache-control"; + public const string ContentTypeString = "x-ms-blob-content-type"; public enum SasAccessType { diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadClient.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadClient.cs index 1ade2199..f5b609fd 100644 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadClient.cs +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadClient.cs @@ -47,7 +47,6 @@ namespace Microsoft.DotNet.Build.Tasks.Utility string filePath, string destinationBlob) { - string resourceUrl = string.Format("https://{0}.blob.core.windows.net/{1}", AccountName, ContainerName); string fileName = destinationBlob; @@ -88,9 +87,7 @@ namespace Microsoft.DotNet.Build.Tasks.Utility { DateTime dt = DateTime.UtcNow; var req = new HttpRequestMessage(HttpMethod.Put, blockUploadUrl); - req.Headers.Add( - AzureHelper.DateHeaderString, - dt.ToString("R", CultureInfo.InvariantCulture)); + req.Headers.Add(AzureHelper.DateHeaderString, dt.ToString("R", CultureInfo.InvariantCulture)); req.Headers.Add(AzureHelper.VersionHeaderString, AzureHelper.StorageApiVersion); req.Headers.Add( AzureHelper.AuthorizationHeaderString, @@ -142,6 +139,16 @@ namespace Microsoft.DotNet.Build.Tasks.Utility var req = new HttpRequestMessage(HttpMethod.Put, blockListUploadUrl); req.Headers.Add(AzureHelper.DateHeaderString, dt1.ToString("R", CultureInfo.InvariantCulture)); req.Headers.Add(AzureHelper.VersionHeaderString, AzureHelper.StorageApiVersion); + string contentType = DetermineContentTypeBasedOnFileExtension(filePath); + if (!string.IsNullOrEmpty(contentType)) + { + req.Headers.Add(AzureHelper.ContentTypeString, contentType); + } + string cacheControl = DetermineCacheControlBasedOnFileExtension(filePath); + if (!string.IsNullOrEmpty(cacheControl)) + { + req.Headers.Add(AzureHelper.CacheControlString, cacheControl); + } var body = new StringBuilder(""); foreach (object item in blockIds) @@ -160,7 +167,7 @@ namespace Microsoft.DotNet.Build.Tasks.Utility string.Empty, string.Empty, bodyData.Length.ToString(), - "")); + string.Empty)); Stream postStream = new MemoryStream(); postStream.Write(bodyData, 0, bodyData.Length); postStream.Seek(0, SeekOrigin.Begin); @@ -179,5 +186,25 @@ namespace Microsoft.DotNet.Build.Tasks.Utility } } } + private string DetermineContentTypeBasedOnFileExtension(string filename) + { + if(Path.GetExtension(filename) == ".svg") + { + return "image/svg+xml"; + } + else if(Path.GetExtension(filename) == ".version") + { + return "text/plain"; + } + return string.Empty; + } + private string DetermineCacheControlBasedOnFileExtension(string filename) + { + if(Path.GetExtension(filename) == ".svg") + { + return "No-Cache"; + } + return string.Empty; + } } } From 77179251dd0c4954ff812e30e645c26cbb2a4506 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 4 May 2017 13:37:22 -0500 Subject: [PATCH 305/625] Create .deb packages for Ubuntu and Debian. (#2256) * Create .deb packages for Ubuntu and Debian. * Disable building deb packages when debuild isn't installed. * Remove unused deb tokens * Remove unused properties. * Update docker images used to create debian packages * Preserve folder layout for deb packages --- buildpipeline/pipeline.json | 8 +- src/pkg/packaging/deb/package.props | 9 +- src/pkg/packaging/deb/package.targets | 176 +++++++++++++----- src/pkg/packaging/dir.props | 11 +- src/pkg/packaging/osx/package.targets | 8 +- src/pkg/packaging/windows/package.targets | 24 +-- .../setuptools/dotnet-deb-tool/Program.cs | 30 ++- .../dotnet-deb-tool/tool/package_tool | 2 +- 8 files changed, 194 insertions(+), 74 deletions(-) diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index ee06abb7..e84f321c 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -19,7 +19,7 @@ "Name": "Core-Setup-Linux-BT", "Parameters": { "PB_DistroRid": "debian.8-x64", - "PB_DockerTag": "debian82_prereqs_2", + "PB_DockerTag": "debian-8.2-debpkg-9f87c3c-20173003023006", "REPO_ID": "579f8fb0fedca9aeeb399132", "REPO_USER": "dotnet", "REPO_SERVER": "azure-apt-cat.cloudapp.net" @@ -34,7 +34,7 @@ "Name": "Core-Setup-Linux-BT", "Parameters": { "PB_DistroRid": "ubuntu.14.04-x64", - "PB_DockerTag": "ubuntu1404_prereqs_v3", + "PB_DockerTag": "ubuntu-14.04-debpkg-e5cf912-20175003025046", "REPO_ID": "562fbfe0b2d7d0e0a43780c4", "REPO_USER": "dotnet", "REPO_SERVER": "azure-apt-cat.cloudapp.net", @@ -51,7 +51,7 @@ "Name": "Core-Setup-Linux-BT", "Parameters": { "PB_DistroRid": "ubuntu.16.04-x64", - "PB_DockerTag": "ubuntu1604_prereqs", + "PB_DockerTag": "ubuntu-16.04-debpkg-e5cf912-2017470302472", "REPO_ID": "575f40f3797ef7280505232f", "REPO_USER": "dotnet", "REPO_SERVER": "azure-apt-cat.cloudapp.net" @@ -66,7 +66,7 @@ "Name": "Core-Setup-Linux-BT", "Parameters": { "PB_DistroRid": "ubuntu.16.10-x64", - "PB_DockerTag": "ubuntu1610_prereqs_v2", + "PB_DockerTag": "ubuntu-16.10-debpkg-ec863bb-20170003030028", "REPO_ID": "575f40f3797ef7280505232f", "REPO_USER": "dotnet", "REPO_SERVER": "azure-apt-cat.cloudapp.net" diff --git a/src/pkg/packaging/deb/package.props b/src/pkg/packaging/deb/package.props index ba39a94d..a2dfd3a2 100644 --- a/src/pkg/packaging/deb/package.props +++ b/src/pkg/packaging/deb/package.props @@ -1,16 +1,19 @@ - dotnet-deb-tool - 1.0.1-* $(ProjectDir)tools-local/setuptools/dotnet-deb-tool/ $(PackagesOutDir) dotnet-deb-tool-consumer.csproj - debian_config.json $(IntermediateOutputRootPath)$(toolConsumerProjectName) $(PackagingRoot)deb/ + dotnet-host + $(SharedHostDebPkgName.ToLower()) + dotnet-hostfxr-$(HostVersion) + $(HostFxrDebPkgName.ToLower()) + dotnet-sharedframework-$(SharedFrameworkName)-$(SharedFrameworkNugetVersion) + $(SharedFxDebPkgName.ToLower()) \ No newline at end of file diff --git a/src/pkg/packaging/deb/package.targets b/src/pkg/packaging/deb/package.targets index 985b8e99..e1e1063e 100644 --- a/src/pkg/packaging/deb/package.targets +++ b/src/pkg/packaging/deb/package.targets @@ -4,12 +4,19 @@ + + true + true + debian_config.json + + - @@ -29,12 +36,17 @@ - + - + + + Condition="'$(BuildDebPackage)'=='true' and '$(DebuildPresent)' == 'true'" /> @@ -66,25 +78,44 @@ - + - - + + - - + + - + + + $(SharedHostBrandName) + + + + + + + + + + + + + + @@ -116,32 +147,59 @@ - + - + - + - + + + $(HostFxrBrandName) + + + $(HostVersion) + + + $(HostVersion) + + + $(DebPackageName) + + + + + + + + + + + + + + $(SharedFxDebPkgName) - $(HostVersion) - $(SharedHostPublishRoot) - $(SharedHostInstallerFile) + $(SharedFrameworkNugetVersion) + $(SharedFrameworkPublishRoot) + $(SharedFrameworkInstallerFile) dotnet-sharedframework-debian_config.json $(debPackaginfConfigPath)$(ConfigJsonName) $(PackagesIntermediateDir)$(DebPackageName)/$(DebPackageVersion) @@ -165,38 +223,72 @@ - + - - + - - + - - - - - - - + + $(HostFxrDebPkgName) + + + $(SharedFxDebPkgName) + + + $(SharedFrameworkName) + + + $(SharedFrameworkNugetVersion) + + + $(SharedFrameworkBrandName) + - - + + + + + + + + + + + + + + + + + + + + false + true + + + + + \ No newline at end of file diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index 0a60817b..c096fdfc 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -24,12 +24,11 @@ - dotnet-$(ProductMoniker)$(CombinedInstallerExtension) - dotnet-$(ProductMoniker)-engine.exe - dotnet-host-$(ProductMoniker)$(InstallerExtension) - dotnet-hostfxr-$(ProductMoniker)$(InstallerExtension) - dotnet-sharedframework-$(ProductMoniker)$(InstallerExtension) - dotnet-sharedframework-$(ProductMoniker)-engine.exe + $(PackagesOutDir)dotnet-$(ProductMoniker)$(CombinedInstallerExtension) + $(PackagesOutDir)dotnet-$(ProductMoniker)-engine.exe + $(PackagesOutDir)dotnet-host-$(ProductMoniker)$(InstallerExtension) + $(PackagesOutDir)dotnet-hostfxr-$(ProductMoniker)$(InstallerExtension) + $(PackagesOutDir)dotnet-sharedframework-$(ProductMoniker)$(InstallerExtension) diff --git a/src/pkg/packaging/osx/package.targets b/src/pkg/packaging/osx/package.targets index 9e4ebb11..f952d1fa 100644 --- a/src/pkg/packaging/osx/package.targets +++ b/src/pkg/packaging/osx/package.targets @@ -19,21 +19,21 @@ $(SharedFrameworkPublishRoot) $(PackagesIntermediateDir)$(SharedFxComponentId).pkg - $(PackagesOutDir)$(SharedFrameworkInstallerFile) + $(SharedFrameworkInstallerFile) $(SharedHostComponentId) $(SharedHostPublishRoot) $(PackagesIntermediateDir)$(SharedHostComponentId).pkg - $(PackagesOutDir)$(SharedHostInstallerFile) + $(SharedHostInstallerFile) $(HostFxrComponentId) $(HostFxrPublishRoot) $(PackagesIntermediateDir)$(HostFxrComponentId).pkg - $(PackagesOutDir)$(HostFxrInstallerFile) + $(HostFxrInstallerFile) @@ -50,7 +50,7 @@ $(OSXScriptRoot)sharedframework/ $(SharedFxScriptRoot)resources - $(PackagesOutDir)$(CombinedInstallerFile) + $(CombinedInstallerFile) shared-framework-distribution-template.xml $(PackagesIntermediateDir)$(TemplateFile) diff --git a/src/pkg/packaging/windows/package.targets b/src/pkg/packaging/windows/package.targets index e8a90098..b65c4c97 100644 --- a/src/pkg/packaging/windows/package.targets +++ b/src/pkg/packaging/windows/package.targets @@ -28,11 +28,11 @@ DestinationDirectory="$(WixToolsDir)" OverwriteDestination="false" /> - + - + @@ -40,20 +40,20 @@ $(SharedHostPublishRoot) $(SharedHostBrandName) - $(PackagesOutDir)$(SharedHostInstallerFile) + $(SharedHostInstallerFile) $(SharedHostUpgradeCode) $(HostFxrPublishRoot) $(HostFxrBrandName) - $(PackagesOutDir)$(HostFxrInstallerFile) + $(HostFxrInstallerFile) $(HostFxrUpgradeCode) $(SharedFrameworkPublishRoot) $(SharedFrameworkBrandName) - $(PackagesOutDir)$(SharedFrameworkInstallerFile) + $(SharedFrameworkInstallerFile) @@ -69,7 +69,7 @@ - + @@ -89,10 +89,10 @@ Condition="'$(OSGroup)' == 'Windows_NT'"> $(WindowsScriptRoot)sharedframework\generatebundle.ps1 - $(PackagesOutDir)$(SharedFrameworkInstallerFile) - $(PackagesOutDir)$(SharedHostInstallerFile) - $(PackagesOutDir)$(HostFxrInstallerFile) - $(PackagesOutDir)$(CombinedInstallerFile) + $(SharedFrameworkInstallerFile) + $(SharedHostInstallerFile) + $(HostFxrInstallerFile) + $(CombinedInstallerFile) 'Microsoft .NET Core $(ProductionVersion) - Runtime' "$(MsiArch)" "$(TargetArchitecture)" @@ -109,11 +109,11 @@ - + - + \ No newline at end of file diff --git a/tools-local/setuptools/dotnet-deb-tool/Program.cs b/tools-local/setuptools/dotnet-deb-tool/Program.cs index b0fa878b..3c08c8ee 100644 --- a/tools-local/setuptools/dotnet-deb-tool/Program.cs +++ b/tools-local/setuptools/dotnet-deb-tool/Program.cs @@ -1,10 +1,11 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Copyright (c) .NET Foundation and contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. using System; using System.Diagnostics; using System.IO; using System.Reflection; +using System.Runtime.InteropServices; using Microsoft.DotNet.Cli.Build.Framework; namespace Microsoft.DotNet.Deb.Tool @@ -13,9 +14,12 @@ namespace Microsoft.DotNet.Deb.Tool { public static int Main(string[] args) { + string packageToolPath = Path.Combine(Path.GetDirectoryName(typeof(Program).GetTypeInfo().Assembly.Location), "tool", "package_tool"); + EnsureExecutable(packageToolPath); + var processInfo = new ProcessStartInfo() { - FileName = Path.Combine(Path.GetDirectoryName(typeof(Program).GetTypeInfo().Assembly.Location), "tool", "package_tool"), + FileName = packageToolPath, Arguments = ArgumentEscaper.EscapeAndConcatenateArgArrayForProcessStart(args), UseShellExecute = false }; @@ -32,5 +36,27 @@ namespace Microsoft.DotNet.Deb.Tool return process.ExitCode; } + + private static void EnsureExecutable(string filePath) + { + if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) + { + return; + } + // Executable files are don't get the 'x' permission when restored from + // NuGet packages. + // See (https://github.com/NuGet/Home/issues/4424) + // On .NET Core 1.x, all extracted files had default permissions of 766. + // The default on .NET Core 2.x has changed to 666. + // We force the .NET Core 1.x default permissions, to ensure we can execute the files. + try + { + chmod(filePath, 0x1f6); // 0766 + } + catch {} // if we can't set the permssion, just ignore it and try to run the file + } + + [DllImport("libc", SetLastError = true)] + private static extern int chmod(string pathname, int mode); } } diff --git a/tools-local/setuptools/dotnet-deb-tool/tool/package_tool b/tools-local/setuptools/dotnet-deb-tool/tool/package_tool index 58e8a17b..6bd678c8 100644 --- a/tools-local/setuptools/dotnet-deb-tool/tool/package_tool +++ b/tools-local/setuptools/dotnet-deb-tool/tool/package_tool @@ -172,7 +172,7 @@ copy_files_to_output(){ # .deb, .dsc, etc.. Already in output dir # Copy Test files - cp $SCRIPT_DIR/src/test/integration_tests/test_package.bats $OUTPUT_DIR + cp $SCRIPT_DIR/test/integration_tests/test_package.bats $OUTPUT_DIR } ## Packaging Functions ## From 70548e45801ae3af48b11cc43498bd2c7e8a9a51 Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Thu, 4 May 2017 14:27:59 -0700 Subject: [PATCH 306/625] Update branding for Installer packages (#2276) --- dir.props | 1 + src/pkg/packaging/dir.props | 8 +++++--- src/pkg/packaging/windows/package.targets | 2 +- src/pkg/packaging/windows/sharedframework/bundle.wxl | 2 +- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/dir.props b/dir.props index 03a10f35..5a6f1113 100644 --- a/dir.props +++ b/dir.props @@ -13,6 +13,7 @@ false preview2 $(PreReleaseLabel) + Preview 2 master master diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index c096fdfc..02a69552 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -32,8 +32,10 @@ - 'Microsoft .NET Core $(ProductionVersion) - Host' - 'Microsoft .NET Core $(ProductionVersion) - Host FX Resolver' - 'Microsoft .NET Core $(ProductionVersion) - Runtime' + Microsoft .NET Core $(ProductionVersion) + Microsoft .NET Core $(ProductionVersion) $(ReleaseBrandSuffix) + '$(ProductBrandPrefix) Host' + '$(ProductBrandPrefix) Host FX Resolver' + '$(ProductBrandPrefix) Runtime' \ No newline at end of file diff --git a/src/pkg/packaging/windows/package.targets b/src/pkg/packaging/windows/package.targets index b65c4c97..8648dee9 100644 --- a/src/pkg/packaging/windows/package.targets +++ b/src/pkg/packaging/windows/package.targets @@ -93,7 +93,7 @@ $(SharedHostInstallerFile) $(HostFxrInstallerFile) $(CombinedInstallerFile) - 'Microsoft .NET Core $(ProductionVersion) - Runtime' + '$(ProductBrandPrefix) Runtime' "$(MsiArch)" "$(TargetArchitecture)" diff --git a/src/pkg/packaging/windows/sharedframework/bundle.wxl b/src/pkg/packaging/windows/sharedframework/bundle.wxl index c7ade785..243e8522 100644 --- a/src/pkg/packaging/windows/sharedframework/bundle.wxl +++ b/src/pkg/packaging/windows/sharedframework/bundle.wxl @@ -1,6 +1,6 @@ - [WixBundleName] Setup + [WixBundleName] Installer [BUNDLEMONIKER] You just need a shell, a text editor and 10 minutes of your time. From 13a91af37c7b072d3a9492d80b16fa6dbce02842 Mon Sep 17 00:00:00 2001 From: chcosta Date: Thu, 4 May 2017 16:21:10 -0700 Subject: [PATCH 307/625] Fix artifact name, replace '-' with '.' (#2282) --- README.md | 74 ++++++++++++++++++------------------- src/pkg/packaging/dir.props | 2 +- 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/README.md b/README.md index 0a1c7e26..de409202 100644 --- a/README.md +++ b/README.md @@ -60,9 +60,9 @@ Daily Builds [win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x64_Release_version_badge.svg [win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x64.version -[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64-latest.exe -[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64-latest.zip -[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64-latest.zip +[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64.latest.exe +[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest.zip +[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest.zip [win-x64-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x64_Release_version_badge.svg [win-x64-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x64.version @@ -76,9 +76,9 @@ Daily Builds [win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x86_Release_version_badge.svg [win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x86.version -[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86-latest.exe -[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86-latest.zip -[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86-latest.zip +[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86.latest.exe +[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest.zip +[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest.zip [win-x86-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x86_Release_version_badge.svg [win-x86-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x86.version @@ -92,19 +92,19 @@ Daily Builds [win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_arm_Release_version_badge.svg [win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm.version -[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm-latest.zip -[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm-latest.zip +[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm.latest.zip +[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm.latest.zip [win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_arm64_Release_version_badge.svg [win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm64.version -[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64-latest.zip -[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64-latest.zip +[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest.zip +[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest.zip [osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx-x64_Release_version_badge.svg [osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx-x64.version -[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64-latest.pkg -[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest-tar.gz -[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64-latest.tar.gz +[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64.latest.pkg +[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest.tar.gz +[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz [osx-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_OSX_x64_Release_version_badge.svg [osx-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.osx.x64.version @@ -119,21 +119,21 @@ Daily Builds [linux-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux-x64_Release_version_badge.svg [linux-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux-x64.version -[linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64-latest.tar.gz -[linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64-latest.tar.gz +[linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64.latest.tar.gz +[linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz [linux-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_arm_Release_version_badge.svg [linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux-arm.version -[linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-arm-latest.tar.gz -[linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm-latest.tar.gz +[linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-arm.latest.tar.gz +[linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm.latest.tar.gz [ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg [ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu-x64.version -[ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu-x64-latest.deb -[ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu-x64-latest.deb -[ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu-x64-latest.deb -[ubuntu-14.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu-x64-latest.tar.gz -[ubuntu-14.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu-x64-latest.tar.gz +[ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu-x64.latest.deb +[ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu-x64.latest.deb +[ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu-x64.latest.deb +[ubuntu-14.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu-x64.latest.tar.gz +[ubuntu-14.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu-x64.latest.tar.gz [ubuntu-14.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_x64_Release_version_badge.svg [ubuntu-14.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.x64.version @@ -152,11 +152,11 @@ Daily Builds [ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg [ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04-x64.version -[ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.04-x64-latest.deb -[ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.04-x64-latest.deb -[ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.04-x64-latest.deb -[ubuntu-16.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu.16.04-x64-latest.tar.gz -[ubuntu-16.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu.16.04-x64-latest.tar.gz +[ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.04-x64.latest.deb +[ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb +[ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb +[ubuntu-16.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu.16.04-x64.latest.tar.gz +[ubuntu-16.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu.16.04-x64.latest.tar.gz [ubuntu-16.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_04_x64_Release_version_badge.svg [ubuntu-16.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.04.x64.version @@ -175,11 +175,11 @@ Daily Builds [ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg [ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.10-x64.version -[ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.10-x64-latest.deb -[ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.10-x64-latest.deb -[ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.10-x64-latest.deb -[ubuntu-16.10-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu.16.10-x64-latest.tar.gz -[ubuntu-16.10-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu.16.10-x64-latest.tar.gz +[ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.10-x64.latest.deb +[ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb +[ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb +[ubuntu-16.10-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu.16.10-x64.latest.tar.gz +[ubuntu-16.10-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu.16.10-x64.latest.tar.gz [ubuntu-16.10-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_10_x64_Release_version_badge.svg [ubuntu-16.10-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.10.x64.version @@ -191,11 +191,11 @@ Daily Builds [debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_debian.8-x64_Release_version_badge.svg [debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.debian.8-x64.version -[debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-debian-x64-latest.deb -[debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-debian-x64-latest.deb -[debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-debian-x64-latest.deb -[debian-8.2-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-debian-x64-latest.tar.gz -[debian-8.2-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-debian-x64-latest.tar.gz +[debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-debian-x64.latest.deb +[debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-debian-x64.latest.deb +[debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-debian-x64.latest.deb +[debian-8.2-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-debian-x64.latest.tar.gz +[debian-8.2-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-debian-x64.latest.tar.gz [debian-8.2-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Debian_x64_Release_version_badge.svg [debian-8.2-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.debian.x64.version diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index 02a69552..65b4c9ca 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -13,7 +13,7 @@ - $(PackageTargetRid)-$(HostFullVersion) + $(PackageTargetRid).$(HostFullVersion) From 0362e52414d842658ed9308079bb34186b826d0c Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Thu, 4 May 2017 17:45:50 -0700 Subject: [PATCH 308/625] remove version info from apphost.exe --- src/corehost/build.proj | 4 ++-- src/corehost/cli/exe/apphost/CMakeLists.txt | 1 + src/corehost/cli/exe/exe.cmake | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/corehost/build.proj b/src/corehost/build.proj index d1713d2e..f9d74cf6 100644 --- a/src/corehost/build.proj +++ b/src/corehost/build.proj @@ -36,7 +36,7 @@ - + - \ No newline at end of file + diff --git a/src/corehost/cli/exe/apphost/CMakeLists.txt b/src/corehost/cli/exe/apphost/CMakeLists.txt index 76448440..196ac38a 100644 --- a/src/corehost/cli/exe/apphost/CMakeLists.txt +++ b/src/corehost/cli/exe/apphost/CMakeLists.txt @@ -14,6 +14,7 @@ if (NOT CMAKE_SYSTEM_NAME STREQUAL Darwin) set(CMAKE_INSTALL_RPATH "\$ORIGIN/netcoredeps") endif() +set(SKIP_VERSIONING 1) include(../exe.cmake) set(SOURCES) add_definitions(-DFEATURE_APPHOST=1) diff --git a/src/corehost/cli/exe/exe.cmake b/src/corehost/cli/exe/exe.cmake index 99a51f3b..16919644 100644 --- a/src/corehost/cli/exe/exe.cmake +++ b/src/corehost/cli/exe/exe.cmake @@ -34,7 +34,7 @@ else() endif() set(RESOURCES) -if(WIN32) +if(WIN32 AND NOT SKIP_VERSIONING) list(APPEND RESOURCES ../../native.rc) endif() From 178a65ac0dab65228aa2034b8db2c8ecd28ffbcb Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 4 May 2017 21:16:32 -0500 Subject: [PATCH 309/625] Fix restoring the dotnet-deb-tool. --- src/pkg/packaging/deb/package.targets | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pkg/packaging/deb/package.targets b/src/pkg/packaging/deb/package.targets index e1e1063e..fe6fb3d3 100644 --- a/src/pkg/packaging/deb/package.targets +++ b/src/pkg/packaging/deb/package.targets @@ -12,7 +12,7 @@ - + @@ -34,7 +34,7 @@ - From 8065629d6a4f82c03050f2be91c51c8bea2e61b4 Mon Sep 17 00:00:00 2001 From: chcosta Date: Thu, 4 May 2017 23:19:32 -0700 Subject: [PATCH 310/625] Fix combinedinstallerfile path (#2286) --- src/pkg/packaging/windows/package.targets | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pkg/packaging/windows/package.targets b/src/pkg/packaging/windows/package.targets index 8648dee9..ed28888b 100644 --- a/src/pkg/packaging/windows/package.targets +++ b/src/pkg/packaging/windows/package.targets @@ -109,11 +109,11 @@ - + - + \ No newline at end of file From 90340ada23af84268c9292be79503085652877ad Mon Sep 17 00:00:00 2001 From: chcosta Date: Thu, 4 May 2017 23:28:18 -0700 Subject: [PATCH 311/625] Fix publish build break, remove static creation of debinstallerfile (#2290) --- publish/dir.props | 1 - 1 file changed, 1 deletion(-) diff --git a/publish/dir.props b/publish/dir.props index 0e163e50..11d0b5bc 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -8,7 +8,6 @@ - From 8e35e691f5c1fc2b02712fdc5931785bb5a7b297 Mon Sep 17 00:00:00 2001 From: chcosta Date: Fri, 5 May 2017 00:28:55 -0700 Subject: [PATCH 312/625] Fix image tag for ubuntu 16.04 (#2291) --- buildpipeline/pipeline.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index e84f321c..5c9e647c 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -51,7 +51,7 @@ "Name": "Core-Setup-Linux-BT", "Parameters": { "PB_DistroRid": "ubuntu.16.04-x64", - "PB_DockerTag": "ubuntu-16.04-debpkg-e5cf912-2017470302472", + "PB_DockerTag": "ubuntu-16.04-debpkg-e5cf912-20174703024721", "REPO_ID": "575f40f3797ef7280505232f", "REPO_USER": "dotnet", "REPO_SERVER": "azure-apt-cat.cloudapp.net" From f0fed403e0f455ebaf37626a9561b7de5fdbb160 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Fri, 5 May 2017 09:31:00 -0700 Subject: [PATCH 313/625] Make Linux Arm build not fail (#2274) --- build.sh | 6 +++--- dir.props | 1 - src/corehost/build.proj | 3 ++- src/pkg/packaging/windows/package.props | 4 ++-- src/pkg/packaging/windows/package.targets | 8 ++++---- .../src/Microsoft.NETCore.App.depproj | 4 ++-- .../Microsoft.NETCore.UniversalWindowsPlatform.builds | 2 +- .../Microsoft.NETCore.UniversalWindowsPlatform.builds | 6 +++++- src/pkg/projects/dir.props | 11 ++++++----- 9 files changed, 25 insertions(+), 20 deletions(-) diff --git a/build.sh b/build.sh index 97a99b03..7c685cb3 100755 --- a/build.sh +++ b/build.sh @@ -151,7 +151,7 @@ esac __BuildType=Debug __BuildArch=x64 -__IncludeTests=Include_Tests +__SkipTests=false __VerboseBuild=0 __CrossBuild=0 __PortableBuild=0 @@ -209,7 +209,7 @@ while :; do ;; skiptests) - __IncludeTests= + __SkipTests=true ;; esac @@ -222,7 +222,7 @@ initHostDistroRid # init the target distro name initTargetDistroRid -__RunArgs="-TargetArchitecture=$__BuildArch -ConfigurationGroup=$__BuildType -OSGroup=$__HostOS -DistroRid=$__DistroRid" +__RunArgs="-TargetArchitecture=$__BuildArch -ConfigurationGroup=$__BuildType -OSGroup=$__HostOS -DistroRid=$__DistroRid -SkipTests=$__SkipTests" if [ $__PortableBuild == 1 ]; then __RunArgs="$__RunArgs -PortableBuild=True" diff --git a/dir.props b/dir.props index 5a6f1113..5a9b46ed 100644 --- a/dir.props +++ b/dir.props @@ -223,7 +223,6 @@ netcoreapp2.0 - netcoreapp1.1 diff --git a/src/corehost/build.proj b/src/corehost/build.proj index f9d74cf6..07de95ba 100644 --- a/src/corehost/build.proj +++ b/src/corehost/build.proj @@ -43,11 +43,12 @@ Targets="GenerateVersionHeader" /> $(ConfigurationGroup) $(TargetArchitecture) version $(HostVersion) commit $(LatestCommit) rid $(TargetRid) + toolsetdir $(NativeToolsetDir) - + diff --git a/src/pkg/packaging/windows/package.props b/src/pkg/packaging/windows/package.props index 813217e3..fb61f619 100644 --- a/src/pkg/packaging/windows/package.props +++ b/src/pkg/packaging/windows/package.props @@ -7,8 +7,8 @@ $(IntermediateOutputRootPath)WixTools.$(WixVersion) $(IntermediateOutputRootPath)wix/ $(TargetArchitecture) - x86 - x64 + true + false $(WixToolsDir)\insignia.exe \ No newline at end of file diff --git a/src/pkg/packaging/windows/package.targets b/src/pkg/packaging/windows/package.targets index ed28888b..8974d529 100644 --- a/src/pkg/packaging/windows/package.targets +++ b/src/pkg/packaging/windows/package.targets @@ -7,7 +7,7 @@ + Condition="'$(OSGroup)' == 'Windows_NT' and '$(GenerateMSI)' == 'true'"> 3.10.2 @@ -86,7 +86,7 @@ + Condition="'$(OSGroup)' == 'Windows_NT' and '$(GenerateMSI)' == 'true'"> $(WindowsScriptRoot)sharedframework\generatebundle.ps1 $(SharedFrameworkInstallerFile) @@ -108,11 +108,11 @@ - + - + diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index 85dd5ab4..e8368bf9 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -36,8 +36,8 @@ - <_crossDir Condition="'$(NuGetRuntimeIdentifier)' == 'win8-arm'">/x86_arm - <_crossDir Condition="'$(NuGetRuntimeIdentifier)' == 'win10-arm64'">/x64_arm64 + <_crossDir Condition="'$(NuGetRuntimeIdentifier)' == 'win8-arm' or '$(NuGetRuntimeIdentifier)' == 'win-arm'">/x86_arm + <_crossDir Condition="'$(NuGetRuntimeIdentifier)' == 'win10-arm64' or '$(NuGetRuntimeIdentifier)' == 'win-arm64'">/x64_arm64 diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds index df002a8a..944562a8 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.builds @@ -3,7 +3,7 @@ - + diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.builds b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.builds index ac67eddb..0286e74b 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.builds +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.builds @@ -1,9 +1,13 @@ + + false + + - + diff --git a/src/pkg/projects/dir.props b/src/pkg/projects/dir.props index 0ff644e3..18771745 100644 --- a/src/pkg/projects/dir.props +++ b/src/pkg/projects/dir.props @@ -73,15 +73,16 @@ + <_buildingOnRID Include="$(PackageRID)" Condition="'$(BuildOnUnknownPlatforms)' != 'false'"> + $(Platform) + - + - + true - - $(Platform) - + From 3901ef955ac4a990129068ea7f2575cf8770c99a Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Fri, 5 May 2017 11:45:56 -0500 Subject: [PATCH 314/625] Ensure DOTNET_SKIP_FIRST_TIME_EXPERIENCE is on no matter how the tests are executed. --- src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs b/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs index 6a061e0c..baf2ce34 100644 --- a/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs +++ b/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs @@ -32,7 +32,8 @@ namespace Microsoft.DotNet.Cli.Build newArgs.Insert(0, "-v"); } - return Command.Create(Path.Combine(BinPath, $"dotnet{Constants.ExeSuffix}"), newArgs); + return Command.Create(Path.Combine(BinPath, $"dotnet{Constants.ExeSuffix}"), newArgs) + .EnvironmentVariable("DOTNET_SKIP_FIRST_TIME_EXPERIENCE", "1"); } public Command Restore(params string[] args) => Exec("restore", args); From a4f0d4ac4bc1c7c9ad9ec1ac6a854881eb750116 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 5 May 2017 13:13:49 -0700 Subject: [PATCH 315/625] Fix finalization, use sharedframeworknugetversion and sharedhostnugetversion --- publish/publish.proj | 2 ++ tools-local/tasks/FinalizeBuild.cs | 18 ++++++++++++++---- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/publish/publish.proj b/publish/publish.proj index 7d111a0f..24b1ab2c 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -59,6 +59,8 @@ SemaphoreBlob="$(Channel)/Binaries/sharedFxPublishSemaphore" Channel="$(Channel)" Version="$(SharedFrameworkNugetVersion)" + SharedFrameworkNugetVersion="$(SharedFrameworkNugetVersion)" + SharedHostNuGetVersion="$(HostVersion)" PublishRids="@(PublishRid)" FinalizeContainer="$(Channel)/Binaries/$(SharedFrameworkNugetVersion)" ForcePublish="true" diff --git a/tools-local/tasks/FinalizeBuild.cs b/tools-local/tasks/FinalizeBuild.cs index 9d7bebd5..226d342b 100644 --- a/tools-local/tasks/FinalizeBuild.cs +++ b/tools-local/tasks/FinalizeBuild.cs @@ -31,6 +31,10 @@ namespace Microsoft.DotNet.Build.Tasks [Required] public string Channel { get; set; } [Required] + public string SharedFrameworkNugetVersion { get; set; } + [Required] + public string SharedHostNugetVersion { get; set; } + [Required] public string Version { get; set; } [Required] public ITaskItem [] PublishRids { get; set; } @@ -41,6 +45,8 @@ namespace Microsoft.DotNet.Build.Tasks public override bool Execute() { + Console.WriteLine("Attach for finalization"); + Console.ReadLine(); ParseConnectionString(); if (Log.HasLoggedErrors) @@ -87,9 +93,11 @@ namespace Microsoft.DotNet.Build.Tasks try { - CopyBlobs($"{Channel}/Binaries/{Version}", $"{Channel}/Binaries/Latest/"); + CopyBlobs($"{Channel}/Binaries/{SharedFrameworkNugetVersion}", $"{Channel}/Binaries/Latest/"); - CopyBlobs($"{Channel}/Installers/{Version}", $"{Channel}/Installers/Latest/"); + CopyBlobs($"{Channel}/Installers/{SharedFrameworkNugetVersion}", $"{Channel}/Installers/Latest/"); + + CopyBlobs($"{Channel}/Installers/{SharedHostNugetVersion}", $"{Channel}/Installers/Latest/"); // Generate the Sharedfx Version text files List versionFiles = PublishRids.Select(p => $"{p.ItemSpec}.version").ToList(); @@ -115,7 +123,7 @@ namespace Microsoft.DotNet.Build.Tasks { returnString += $"{CommitHash}{Environment.NewLine}"; } - returnString += $"{Version}{Environment.NewLine}"; + returnString += $"{SharedFrameworkNugetVersion}{Environment.NewLine}"; return returnString; } @@ -126,7 +134,9 @@ namespace Microsoft.DotNet.Build.Tasks string[] blobs = GetBlobList(sourceFolder); foreach (string blob in blobs) { - string targetName = _versionRegex.Replace(Path.GetFileName(blob), "latest"); + string targetName = Path.GetFileName(blob) + .Replace(SharedFrameworkNugetVersion, "latest") + .Replace(SharedHostNugetVersion, "latest"); string sourceBlob = blob.Replace($"/{ContainerName}/", ""); string destinationBlob = $"{destinationFolder}{targetName}"; Log.LogMessage($"Copying blob '{sourceBlob}' to '{destinationBlob}'"); From 7b10d9076b02025362fc62b31092c83580b03366 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 5 May 2017 13:17:55 -0700 Subject: [PATCH 316/625] Remove debug stuff --- tools-local/tasks/FinalizeBuild.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/tools-local/tasks/FinalizeBuild.cs b/tools-local/tasks/FinalizeBuild.cs index 226d342b..2eaf0d7e 100644 --- a/tools-local/tasks/FinalizeBuild.cs +++ b/tools-local/tasks/FinalizeBuild.cs @@ -45,8 +45,6 @@ namespace Microsoft.DotNet.Build.Tasks public override bool Execute() { - Console.WriteLine("Attach for finalization"); - Console.ReadLine(); ParseConnectionString(); if (Log.HasLoggedErrors) From 348b8ccd8b94b75dede2d6ef2988826da3dd1c6d Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Fri, 5 May 2017 18:58:10 -0500 Subject: [PATCH 317/625] Fixing 3 problems with our publish assets: 1. we are using a `-` when we used to use a `.` 2. We are not putting the commit hash in the version file 3. We are not setting the ContentType to 'text/plain' on the .version file. Fix https://github.com/dotnet/cli/issues/6517 --- publish/dir.props | 32 +++++++++---------- publish/publish.proj | 9 ++++-- .../PublishStringToAzureBlob.cs | 10 ++++++ tools-local/tasks/FinalizeBuild.cs | 16 ++++------ 4 files changed, 39 insertions(+), 28 deletions(-) diff --git a/publish/dir.props b/publish/dir.props index 11d0b5bc..29b40b54 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -18,23 +18,23 @@ - - - - - - - - + + + + + + + + \ No newline at end of file diff --git a/publish/publish.proj b/publish/publish.proj index 7d111a0f..a9b219c6 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -45,11 +45,13 @@ + DependsOnTargets="CheckIfAllBuildsHavePublished; + GetLatestCommitHash"> - + + @@ -59,7 +61,8 @@ SemaphoreBlob="$(Channel)/Binaries/sharedFxPublishSemaphore" Channel="$(Channel)" Version="$(SharedFrameworkNugetVersion)" - PublishRids="@(PublishRid)" + PublishVersionFiles="@(PublishVersionFile)" + CommitHash="$(LatestCommit)" FinalizeContainer="$(Channel)/Binaries/$(SharedFrameworkNugetVersion)" ForcePublish="true" Condition="'@(_MissingBlobNames)' == ''" /> diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/PublishStringToAzureBlob.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/PublishStringToAzureBlob.cs index 502bccac..a3e8b2c2 100644 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/PublishStringToAzureBlob.cs +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/PublishStringToAzureBlob.cs @@ -1,4 +1,5 @@ using Microsoft.Build.Framework; +using Microsoft.DotNet.Build.Tasks.Utility; using System; using System.Collections.Generic; using System.Net.Http; @@ -13,6 +14,7 @@ namespace Microsoft.DotNet.Build.Tasks public string ContainerName { get; set; } [Required] public string Content { get; set; } + public string ContentType { get; set; } public override bool Execute() { @@ -25,6 +27,12 @@ namespace Microsoft.DotNet.Build.Tasks { Tuple headerBlobType = new Tuple("x-ms-blob-type", "BlockBlob"); List> additionalHeaders = new List>() { headerBlobType }; + + if (!string.IsNullOrEmpty(ContentType)) + { + additionalHeaders.Add(new Tuple(AzureHelper.ContentTypeString, ContentType)); + } + var request = Utility.AzureHelper.RequestMessage("PUT", blobUrl, AccountName, AccountKey, additionalHeaders, Content); Utility.AzureHelper.RequestWithRetry(Log, client, request).GetAwaiter().GetResult(); @@ -44,6 +52,7 @@ namespace Microsoft.DotNet.Build.Tasks string containerName, string blobName, string content, + string contentType, IBuildEngine buildengine, ITaskHost taskHost) { @@ -54,6 +63,7 @@ namespace Microsoft.DotNet.Build.Tasks ContainerName = containerName, BlobName = blobName, Content = content, + ContentType = contentType, BuildEngine = buildengine, HostObject = taskHost }; diff --git a/tools-local/tasks/FinalizeBuild.cs b/tools-local/tasks/FinalizeBuild.cs index 9d7bebd5..4c15f8e1 100644 --- a/tools-local/tasks/FinalizeBuild.cs +++ b/tools-local/tasks/FinalizeBuild.cs @@ -33,7 +33,8 @@ namespace Microsoft.DotNet.Build.Tasks [Required] public string Version { get; set; } [Required] - public ITaskItem [] PublishRids { get; set; } + public ITaskItem [] PublishVersionFiles { get; set; } + [Required] public string CommitHash { get; set; } public bool ForcePublish { get; set; } @@ -92,12 +93,12 @@ namespace Microsoft.DotNet.Build.Tasks CopyBlobs($"{Channel}/Installers/{Version}", $"{Channel}/Installers/Latest/"); // Generate the Sharedfx Version text files - List versionFiles = PublishRids.Select(p => $"{p.ItemSpec}.version").ToList(); + List versionFiles = PublishVersionFiles.Select(p => $"{p.ItemSpec}.version").ToList(); string sfxVersion = GetSharedFrameworkVersionFileContent(); foreach(string version in versionFiles) { - PublishStringToBlob(ContainerName, $"{Channel}/dnvm/latest.sharedfx.{version}", sfxVersion); + PublishStringToBlob(ContainerName, $"{Channel}/dnvm/latest.sharedfx.{version}", sfxVersion, "text/plain"); } } finally @@ -110,11 +111,7 @@ namespace Microsoft.DotNet.Build.Tasks private string GetSharedFrameworkVersionFileContent() { - string returnString = string.Empty; - if(!string.IsNullOrWhiteSpace(CommitHash)) - { - returnString += $"{CommitHash}{Environment.NewLine}"; - } + string returnString = $"{CommitHash}{Environment.NewLine}"; returnString += $"{Version}{Environment.NewLine}"; return returnString; } @@ -191,7 +188,7 @@ namespace Microsoft.DotNet.Build.Tasks HostObject); } - public bool PublishStringToBlob(string container, string blob, string contents) + public bool PublishStringToBlob(string container, string blob, string contents, string contentType = null) { return PublishStringToAzureBlob.Execute(AccountName, AccountKey, @@ -199,6 +196,7 @@ namespace Microsoft.DotNet.Build.Tasks container, blob, contents, + contentType, BuildEngine, HostObject); } From 24277910e631fd78e514b6a0e022350c2b7e5d34 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Fri, 5 May 2017 22:34:37 -0500 Subject: [PATCH 318/625] Fix publish by importing the targets file that has GetLatestCommitHash. --- publish/dir.targets | 2 ++ 1 file changed, 2 insertions(+) diff --git a/publish/dir.targets b/publish/dir.targets index 9b65c811..775fe0c1 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -65,4 +65,6 @@ Exclude="@(_FoundBlobNames)" /> + + \ No newline at end of file From b7dc832b3ba5a4e6a50d5564926052a4cfea2ebe Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 5 May 2017 23:07:45 -0700 Subject: [PATCH 319/625] Remove references to core-dev-emg --- buildpipeline/Core-Setup-Linux-BT.json | 4 ++-- buildpipeline/pipeline.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index e1997de0..b8b9393a 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -298,7 +298,7 @@ "allowOverride": true }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core-dev-eng/api/v2/package" + "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": null, @@ -321,7 +321,7 @@ "value": "$(PB_DockerHost_Sandbox)/Tools" }, "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core-dev-eng/symbols/api/v2/package" + "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" }, "PB_DockerImageName": { "value": "$(PB_DockerRepository):$(PB_DockerTag)" diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 5c9e647c..35c33fad 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -38,8 +38,8 @@ "REPO_ID": "562fbfe0b2d7d0e0a43780c4", "REPO_USER": "dotnet", "REPO_SERVER": "azure-apt-cat.cloudapp.net", - "CLI_NUGET_FEED_URL": "https://dotnet.myget.org/F/dotnet-core-dev-eng/api/v2/package", - "CLI_NUGET_SYMBOLS_FEED_URL": "https://dotnet.myget.org/F/dotnet-core-dev-eng/symbols/api/v2/package" + "CLI_NUGET_FEED_URL": "https://dotnet.myget.org/F/dotnet-core/api/v2/package", + "CLI_NUGET_SYMBOLS_FEED_URL": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" }, "ReportingParameters": { "OperatingSystem": "Ubuntu 14.04", From 7e12236b7a5f6b8485cea068b56faf3dfe23fc32 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 5 May 2017 23:17:20 -0700 Subject: [PATCH 320/625] ascii escape myget url --- buildpipeline/Core-Setup-CrossBuild.json | 4 ++-- buildpipeline/Core-Setup-Linux-BT.json | 4 ++-- buildpipeline/Core-Setup-OSX-BT.json | 4 ++-- buildpipeline/Core-Setup-PortableLinux-x64.json | 4 ++-- buildpipeline/Core-Setup-Signing-Windows-BT.json | 4 ++-- buildpipeline/Core-Setup-Windows-BT.json | 4 ++-- buildpipeline/pipeline.json | 4 ++-- 7 files changed, 14 insertions(+), 14 deletions(-) diff --git a/buildpipeline/Core-Setup-CrossBuild.json b/buildpipeline/Core-Setup-CrossBuild.json index 84c624c7..ae85317e 100644 --- a/buildpipeline/Core-Setup-CrossBuild.json +++ b/buildpipeline/Core-Setup-CrossBuild.json @@ -267,7 +267,7 @@ "value": "azure-apt-cat.cloudapp.net" }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -327,7 +327,7 @@ "value": "true" }, "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index b8b9393a..61853199 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -298,7 +298,7 @@ "allowOverride": true }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": null, @@ -321,7 +321,7 @@ "value": "$(PB_DockerHost_Sandbox)/Tools" }, "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" }, "PB_DockerImageName": { "value": "$(PB_DockerRepository):$(PB_DockerTag)" diff --git a/buildpipeline/Core-Setup-OSX-BT.json b/buildpipeline/Core-Setup-OSX-BT.json index 5b7a2ec5..723dbb32 100644 --- a/buildpipeline/Core-Setup-OSX-BT.json +++ b/buildpipeline/Core-Setup-OSX-BT.json @@ -205,7 +205,7 @@ "allowOverride": true }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -214,7 +214,7 @@ "value": "PassedViaPipeBuild" }, "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" }, "PB_CleanAgent": { "value": "true" diff --git a/buildpipeline/Core-Setup-PortableLinux-x64.json b/buildpipeline/Core-Setup-PortableLinux-x64.json index 5626f166..a8bb4cae 100644 --- a/buildpipeline/Core-Setup-PortableLinux-x64.json +++ b/buildpipeline/Core-Setup-PortableLinux-x64.json @@ -218,7 +218,7 @@ "allowOverride": true }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -240,7 +240,7 @@ "value": "$(DockerHost_Sandbox)/Tools" }, "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index cb040098..cfdabc3b 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -578,7 +578,7 @@ "value": "true" }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -616,7 +616,7 @@ "allowOverride": true }, "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" }, "PB_SourcesDirectory": { "value": "$(Build.SourcesDirectory)\\core-setup" diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index b263ea21..14448e21 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -219,7 +219,7 @@ ], "variables": { "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { "value": "PassedViaPipeBuild" @@ -244,7 +244,7 @@ "allowOverride": true }, "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" }, "BuildConfiguration": { "value": "Release" diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 35c33fad..22cf6332 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -38,8 +38,8 @@ "REPO_ID": "562fbfe0b2d7d0e0a43780c4", "REPO_USER": "dotnet", "REPO_SERVER": "azure-apt-cat.cloudapp.net", - "CLI_NUGET_FEED_URL": "https://dotnet.myget.org/F/dotnet-core/api/v2/package", - "CLI_NUGET_SYMBOLS_FEED_URL": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + "CLI_NUGET_FEED_URL": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package", + "CLI_NUGET_SYMBOLS_FEED_URL": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" }, "ReportingParameters": { "OperatingSystem": "Ubuntu 14.04", From 46779f1b54d003ab39c04c24a4e99c95f0784085 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 5 May 2017 23:47:14 -0700 Subject: [PATCH 321/625] Fix build finalization so it doesn't run on every leg --- publish/dir.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/publish/dir.targets b/publish/dir.targets index 775fe0c1..b77cd331 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -61,7 +61,7 @@ <_FoundBlobNames Include="%(_BlobNames.FileName)%(_BlobNames.Extension)" Condition="'%(_BlobNames.Extension)' == '.svg'" /> - <_MissingBlobNames Include="@(PublishRid->'sharedfx_%(Identity)_$(ConfigurationGroup)_version_badge.svg')" + <_MissingBlobNames Include="@(PublishVersionFile->'sharedfx_%(Identity)_$(ConfigurationGroup)_version_badge.svg')" Exclude="@(_FoundBlobNames)" /> From b46f05aaaefea709448ec0297b93eed088248b1a Mon Sep 17 00:00:00 2001 From: chcosta Date: Sat, 6 May 2017 00:41:02 -0700 Subject: [PATCH 322/625] Build PlatformAbstractions and DependencyModel nupkgs (#2298) * Fix managed build * Serialize build steps --- publish/publish.proj | 4 ++-- src/pkg/packaging/dir.proj | 4 ++-- src/src.builds | 5 +++++ 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/publish/publish.proj b/publish/publish.proj index 03f13f75..f9e3da5c 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -111,8 +111,8 @@ - $(DotnetSdkToolCommand) nuget push --source $(NuGetFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) - $(DotnetSdkToolCommand) nuget push --source $(NuGetSymbolsFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) + $(DnuRestorePrefix)$(DotnetSdkToolCommand) nuget push --source $(NuGetFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) + $(DnuRestorePrefix)$(DotnetSdkToolCommand) nuget push --source $(NuGetSymbolsFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 3cf620b2..37e1c2e9 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -160,8 +160,8 @@ - - + + diff --git a/src/src.builds b/src/src.builds index 8d9d3039..f1a5bd9f 100644 --- a/src/src.builds +++ b/src/src.builds @@ -2,6 +2,11 @@ + + + true + + From 0d5cdc929d0a5a100034afcda36484566e852396 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Sat, 6 May 2017 08:44:43 -0500 Subject: [PATCH 323/625] Fix finalize build by using RIDs for the .svg file, but the same legacy monikers for the .version files. --- publish/dir.props | 72 +++++++++++++++++++++--------- publish/dir.targets | 2 +- publish/publish.proj | 4 +- tools-local/tasks/FinalizeBuild.cs | 4 +- 4 files changed, 57 insertions(+), 25 deletions(-) diff --git a/publish/dir.props b/publish/dir.props index 29b40b54..f359b58d 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -6,7 +6,7 @@ dotnet 3600 - + @@ -18,23 +18,55 @@ - - - - - - - - - + + ubuntu.x64 + + + ubuntu.16.04.x64 + + + ubuntu.16.10.x64 + + + debian.x64 + + + linux.x64 + + + win.x86 + + + win.x64 + + + osx.x64 + + - \ No newline at end of file + diff --git a/publish/dir.targets b/publish/dir.targets index b77cd331..775fe0c1 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -61,7 +61,7 @@ <_FoundBlobNames Include="%(_BlobNames.FileName)%(_BlobNames.Extension)" Condition="'%(_BlobNames.Extension)' == '.svg'" /> - <_MissingBlobNames Include="@(PublishVersionFile->'sharedfx_%(Identity)_$(ConfigurationGroup)_version_badge.svg')" + <_MissingBlobNames Include="@(PublishRid->'sharedfx_%(Identity)_$(ConfigurationGroup)_version_badge.svg')" Exclude="@(_FoundBlobNames)" /> diff --git a/publish/publish.proj b/publish/publish.proj index f9e3da5c..9bfe7c32 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -51,7 +51,7 @@ - + @@ -63,7 +63,7 @@ Version="$(SharedFrameworkNugetVersion)" SharedFrameworkNugetVersion="$(SharedFrameworkNugetVersion)" SharedHostNuGetVersion="$(HostVersion)" - PublishVersionFiles="@(PublishVersionFile)" + PublishRids="@(PublishRid)" CommitHash="$(LatestCommit)" FinalizeContainer="$(Channel)/Binaries/$(SharedFrameworkNugetVersion)" ForcePublish="true" diff --git a/tools-local/tasks/FinalizeBuild.cs b/tools-local/tasks/FinalizeBuild.cs index db6320ea..e57aa5a8 100644 --- a/tools-local/tasks/FinalizeBuild.cs +++ b/tools-local/tasks/FinalizeBuild.cs @@ -37,7 +37,7 @@ namespace Microsoft.DotNet.Build.Tasks [Required] public string Version { get; set; } [Required] - public ITaskItem [] PublishVersionFiles { get; set; } + public ITaskItem [] PublishRids { get; set; } [Required] public string CommitHash { get; set; } public bool ForcePublish { get; set; } @@ -99,7 +99,7 @@ namespace Microsoft.DotNet.Build.Tasks CopyBlobs($"{Channel}/Installers/{SharedHostNugetVersion}", $"{Channel}/Installers/Latest/"); // Generate the Sharedfx Version text files - List versionFiles = PublishVersionFiles.Select(p => $"{p.ItemSpec}.version").ToList(); + List versionFiles = PublishRids.Select(p => $"{p.GetMetadata("VersionFileName")}.version").ToList(); string sfxVersion = GetSharedFrameworkVersionFileContent(); foreach(string version in versionFiles) From 9b780b01080e985f5238075be87354e6c0e0178f Mon Sep 17 00:00:00 2001 From: chcosta Date: Sat, 6 May 2017 13:24:33 -0700 Subject: [PATCH 324/625] Enable arm official builds (#2300) --- .../Core-Setup-PortableLinux-x64.json | 310 ------------------ buildpipeline/Core-Setup-Windows-BT.json | 45 --- buildpipeline/pipeline.json | 46 ++- publish/dir.props | 17 - 4 files changed, 45 insertions(+), 373 deletions(-) delete mode 100644 buildpipeline/Core-Setup-PortableLinux-x64.json diff --git a/buildpipeline/Core-Setup-PortableLinux-x64.json b/buildpipeline/Core-Setup-PortableLinux-x64.json deleted file mode 100644 index a8bb4cae..00000000 --- a/buildpipeline/Core-Setup-PortableLinux-x64.json +++ /dev/null @@ -1,310 +0,0 @@ -{ - "build": [ - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "git checkout", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "git", - "arguments": "checkout $(SourceVersion)", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Create host machine tools sandbox", - "timeoutInMinutes": 0, - "task": { - "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "SourceFolder": "pkg", - "Contents": "**", - "TargetFolder": "$(DockerHost_Sandbox)", - "CleanTargetFolder": "false", - "OverWrite": "false", - "flattenFolders": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Initialize tools for host machine", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "$(DockerHost_Sandbox)/init-tools.sh", - "args": "", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Initialize Docker", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "$(DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", - "args": "$(DockerImageName)", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Run build in Docker container", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "scripts/dockerrun-as-current-user.sh", - "args": "-t --rm --sig-proxy=true --name $(DockerContainerName) -v $(Build.SourcesDirectory):/opt/code -w /opt/code -e CONNECTION_STRING -e PUBLISH_TO_AZURE_BLOB $(DockerImageName) /bin/bash -c \"HOME=/opt/code; git clean -X -d -f; ./build.sh $(BuildArguments)\"", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Cleanup Docker", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "perl", - "arguments": "$(DockerHost_ToolsDirectory)/scripts/docker/cleanup-docker.sh", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Copy Publish Artifact: Build Logs", - "timeoutInMinutes": 0, - "task": { - "id": "1d341bb0-2106-458c-8422-d00bcea6512a", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "CopyRoot": "", - "Contents": "**/*.log", - "ArtifactName": "Build Logs", - "ArtifactType": "Container", - "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Cleanup VSTS Agent", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "$(DockerHost_ToolsDirectory)/msbuild.sh", - "arguments": "cleanupagent.proj /p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", - "workingFolder": "$(DockerHost_ToolsDirectory)/scripts/vstsagent/", - "failOnStandardError": "false" - } - } - ], - "options": [ - { - "enabled": false, - "definition": { - "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" - }, - "inputs": { - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "7c555368-ca64-4199-add6-9ebaf0b0137d" - }, - "inputs": { - "multipliers": "[]", - "parallel": "false", - "continueOnError": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "a9db38f9-9fdc-478c-b0f9-464221e58316" - }, - "inputs": { - "workItemType": "4777", - "assignToRequestor": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "57578776-4c22-4526-aeb0-86b6da17ee9c" - }, - "inputs": { - "additionalFields": "{}" - } - } - ], - "variables": { - "BuildConfiguration": { - "value": "Release", - "allowOverride": true - }, - "BuildArguments": { - "value": "--skip-prereqs --configuration $(BuildConfiguration) --targets Default $(PB_PortableBuild)", - "allowOverride": true - }, - "DockerImageName": { - "value": "microsoft/dotnet-buildtools-prereqs:rhel7_prereqs_2" - }, - "DockerContainerName": { - "value": "core-setup-portablelinux-$(Build.BuildId)", - "allowOverride": true - }, - "CONNECTION_STRING": { - "value": "PassedViaPipeBuild" - }, - "PUBLISH_TO_AZURE_BLOB": { - "value": "true", - "allowOverride": true - }, - "NUGET_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" - }, - "NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, - "GITHUB_PASSWORD": { - "value": "PassedViaPipeBuild" - }, - "PB_CleanAgent": { - "value": "true" - }, - "PB_PortableBuild": { - "value": "", - "allowOverride": true - }, - "DockerHost_Sandbox": { - "value": "$(Build.StagingDirectory)/HostSandbox" - }, - "DockerHost_ToolsDirectory": { - "value": "$(DockerHost_Sandbox)/Tools" - }, - "NUGET_SYMBOLS_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" - } - }, - "demands": [ - "Agent.OS -equals linux" - ], - "retentionRules": [ - { - "branches": [ - "+refs/heads/*" - ], - "artifacts": [], - "artifactTypesToDelete": [ - "FilePath", - "SymbolStore" - ], - "daysToKeep": 7, - "minimumToKeep": 1, - "deleteBuildRecord": true, - "deleteTestResults": true - } - ], - "buildNumberFormat": "$(Date:yyyMMdd)$(Rev:.r)", - "jobAuthorizationScope": "projectCollection", - "jobTimeoutInMinutes": 90, - "badgeEnabled": true, - "repository": { - "properties": { - "connectedServiceId": "f4c31735-42d2-4c3a-bc47-7ac06fd0dccc", - "apiUrl": "https://api.github.com/repos/dotnet/core-setup", - "branchesUrl": "https://api.github.com/repos/dotnet/core-setup/branches", - "cloneUrl": "https://github.com/dotnet/core-setup.git", - "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", - "gitLfsSupport": "false", - "skipSyncSource": "false", - "fetchDepth": "0", - "cleanOptions": "0" - }, - "id": "https://github.com/dotnet/core-setup.git", - "type": "GitHub", - "name": "dotnet/core-setup", - "url": "https://github.com/dotnet/core-setup.git", - "defaultBranch": "master", - "clean": "true", - "checkoutSubmodules": false - }, - "quality": "definition", - "queue": { - "pool": { - "id": 39, - "name": "DotNet-Build" - }, - "id": 36, - "name": "DotNet-Build" - }, - "path": "\\", - "type": "build", - "id": 4573, - "name": "Core-Setup-PortableLinux-x64", - "project": { - "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "name": "DevDiv", - "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", - "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "state": "wellFormed", - "revision": 418097620 - } -} \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 14448e21..7351fd58 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -56,51 +56,6 @@ "failOnStandardError": "false" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Init tools", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "$(PB_SourcesDirectory)\\init-tools.cmd", - "arguments": "", - "workingFolder": "$(PB_SourcesDirectory)", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Generate version assets", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\build.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, { "enabled": true, "continueOnError": false, diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 22cf6332..da9d255e 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -82,7 +82,7 @@ "Parameters": { "PB_DistroRid": "rhel.7.2-x64", "PB_DockerTag": "rhel7_prereqs_2", - "PB_PortableBuildArg": "-portable", + "PB_AdditionalBuildArgs":"-portable", "PB_PortableBuild": "true" }, "ReportingParameters": { @@ -92,6 +92,22 @@ "Platform": "x64" } }, + { + "Name": "Core-Setup-Linux-BT", + "Parameters": { + "PB_DistroRid": "ubuntu.14.04-arm", + "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", + "PB_TargetArchitecture": "arm", + "PB_AdditionalBuildArgs":"arm cross -portable skiptests", + "PB_PortableBuild": "true" + }, + "ReportingParameters": { + "SubType": "PortableBuild", + "OperatingSystem": "Ubuntu 14.04", + "Type": "build/product/", + "Platform": "arm" + } + }, { "Name": "Core-Setup-OSX-BT", "Parameters": { @@ -105,6 +121,34 @@ "Platform": "x64" } }, + { + "Name": "Core-Setup-Windows-BT", + "Parameters": { + "PB_AdditionalBuildArgs": "-PortableBuild=true -SkipTests=true", + "PB_TargetArchitecture": "arm", + "PB_PortableBuild": "true" + }, + "ReportingParameters": { + "SubType": "PortableBuild", + "OperatingSystem": "Windows", + "Type": "build/product/", + "Platform": "arm" + } + }, + { + "Name": "Core-Setup-Windows-BT", + "Parameters": { + "PB_AdditionalBuildArgs": "-PortableBuild=true -SkipTests=true -- /p:NativeToolSetDir=C:\\tools\\clr", + "PB_TargetArchitecture": "arm64", + "PB_PortableBuild": "true" + }, + "ReportingParameters": { + "SubType": "PortableBuild", + "OperatingSystem": "Windows", + "Type": "build/product/", + "Platform": "arm64" + } + }, { "Name": "Core-Setup-Signing-Windows-BT", "Parameters": { diff --git a/publish/dir.props b/publish/dir.props index f359b58d..d15690e1 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -42,7 +42,6 @@ osx.x64 - From f983a1ba635f85190f96ea4d2cf730986e97e984 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Sat, 6 May 2017 14:12:42 -0700 Subject: [PATCH 325/625] Fix arm build arguments --- buildpipeline/Core-Setup-Linux-BT.json | 4 ++-- buildpipeline/Core-Setup-Windows-BT.json | 4 ++-- buildpipeline/pipeline.json | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 61853199..8e1e8e1a 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -287,7 +287,7 @@ "allowOverride": true }, "PB_BuildArguments": { - "value": "--skip-prereqs --configuration $(BuildConfiguration) $(PB_PortableBuildArg)", + "value": "--skip-prereqs --configuration $(BuildConfiguration) $(PB_AdditionalBuildArguments)", "allowOverride": true }, "CONNECTION_STRING": { @@ -379,7 +379,7 @@ "PB_TargetArchitecture": { "value": "x64" }, - "PB_PortableBuildArg": { + "PB_AdditionalBuildArguments": { "value": "" }, "PB_PortableBuild": { diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 7351fd58..45f8ee34 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -89,7 +89,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration)", + "msbuildArguments": "$(PB_BuildArguments) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -205,7 +205,7 @@ "value": "Release" }, "PB_BuildArguments": { - "value": "-ConfigurationGroup=$(BuildConfiguration) $(PB_AdditionalBuildArguments)" + "value": "-- /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) $(PB_AdditionalBuildArguments)" }, "PB_CleanAgent": { "value": "true" diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index da9d255e..f7ad3ce2 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -82,7 +82,7 @@ "Parameters": { "PB_DistroRid": "rhel.7.2-x64", "PB_DockerTag": "rhel7_prereqs_2", - "PB_AdditionalBuildArgs":"-portable", + "PB_AdditionalBuildArguments":"-portable", "PB_PortableBuild": "true" }, "ReportingParameters": { @@ -98,7 +98,7 @@ "PB_DistroRid": "ubuntu.14.04-arm", "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", "PB_TargetArchitecture": "arm", - "PB_AdditionalBuildArgs":"arm cross -portable skiptests", + "PB_AdditionalBuildArguments":"arm cross -portable skiptests", "PB_PortableBuild": "true" }, "ReportingParameters": { @@ -124,7 +124,7 @@ { "Name": "Core-Setup-Windows-BT", "Parameters": { - "PB_AdditionalBuildArgs": "-PortableBuild=true -SkipTests=true", + "PB_AdditionalBuildArguments": "/p:PortableBuild=true /p:SkipTests=true", "PB_TargetArchitecture": "arm", "PB_PortableBuild": "true" }, @@ -138,7 +138,7 @@ { "Name": "Core-Setup-Windows-BT", "Parameters": { - "PB_AdditionalBuildArgs": "-PortableBuild=true -SkipTests=true -- /p:NativeToolSetDir=C:\\tools\\clr", + "PB_AdditionalBuildArguments": "/p:PortableBuild=true /p:SkipTests=true /p:NativeToolSetDir=C:\\tools\\clr", "PB_TargetArchitecture": "arm64", "PB_PortableBuild": "true" }, From b301c9ac513b0b4860921ce75cba420d577349ff Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Sat, 6 May 2017 15:46:16 -0700 Subject: [PATCH 326/625] Remove linux arm --- buildpipeline/Core-Setup-Windows-BT.json | 4 ++-- buildpipeline/pipeline.json | 16 ---------------- 2 files changed, 2 insertions(+), 18 deletions(-) diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 45f8ee34..f97b62f0 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -69,7 +69,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)\\build.cmd", - "arguments": "$(PB_BuildArguments)", + "arguments": "-- $(PB_BuildArguments)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -205,7 +205,7 @@ "value": "Release" }, "PB_BuildArguments": { - "value": "-- /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) $(PB_AdditionalBuildArguments)" + "value": "/p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) $(PB_AdditionalBuildArguments)" }, "PB_CleanAgent": { "value": "true" diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index f7ad3ce2..677e3e4a 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -92,22 +92,6 @@ "Platform": "x64" } }, - { - "Name": "Core-Setup-Linux-BT", - "Parameters": { - "PB_DistroRid": "ubuntu.14.04-arm", - "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", - "PB_TargetArchitecture": "arm", - "PB_AdditionalBuildArguments":"arm cross -portable skiptests", - "PB_PortableBuild": "true" - }, - "ReportingParameters": { - "SubType": "PortableBuild", - "OperatingSystem": "Ubuntu 14.04", - "Type": "build/product/", - "Platform": "arm" - } - }, { "Name": "Core-Setup-OSX-BT", "Parameters": { From 3cc6d025d630b3d0ef8188f425814dbbf6ff540f Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Sat, 6 May 2017 16:03:32 -0700 Subject: [PATCH 327/625] Enable disabling crossgen for arm builds --- build.sh | 9 ++++++++- config.json | 12 ++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/build.sh b/build.sh index 7c685cb3..94a4253f 100755 --- a/build.sh +++ b/build.sh @@ -152,6 +152,7 @@ esac __BuildType=Debug __BuildArch=x64 __SkipTests=false +__DisableCrossgen=false __VerboseBuild=0 __CrossBuild=0 __PortableBuild=0 @@ -178,14 +179,17 @@ while :; do arm) __BuildArch=arm + __DisableCrossgen=true ;; armel) __BuildArch=armel + __DisableCrossgen=true ;; arm64) __BuildArch=arm64 + __DisableCrossgen=true ;; debug) @@ -211,6 +215,9 @@ while :; do skiptests) __SkipTests=true ;; + disablecrossgen) + __DisableCrossgen=true + ;; esac shift @@ -222,7 +229,7 @@ initHostDistroRid # init the target distro name initTargetDistroRid -__RunArgs="-TargetArchitecture=$__BuildArch -ConfigurationGroup=$__BuildType -OSGroup=$__HostOS -DistroRid=$__DistroRid -SkipTests=$__SkipTests" +__RunArgs="-TargetArchitecture=$__BuildArch -ConfigurationGroup=$__BuildType -OSGroup=$__HostOS -DistroRid=$__DistroRid -SkipTests=$__SkipTests -DisableCrossgen=$__DisableCrossgen" if [ $__PortableBuild == 1 ]; then __RunArgs="$__RunArgs -PortableBuild=True" diff --git a/config.json b/config.json index 700d99a4..7805ebe4 100644 --- a/config.json +++ b/config.json @@ -137,6 +137,12 @@ "valueType": "property", "values": ["true", "false"], "defaultValue":false + }, + "DisableCrossgen": { + "description": "Disable crossgen during the build", + "valueType": "property", + "values": ["true", "false"], + "defaultValue":false } }, "commands": { @@ -220,6 +226,12 @@ "settings":{ "SkipTests": "true" } + }, + "disableCrossgen":{ + "description": "Disable crossgen during the build", + "settings":{ + "DisableCrossgen": "true" + } } }, "defaultValues":{ From 05576f462d63bba2110f611515558eea4ac9a317 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Sat, 6 May 2017 17:11:29 -0700 Subject: [PATCH 328/625] Add back arm to official build --- buildpipeline/pipeline.json | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 677e3e4a..5458ce86 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -92,6 +92,22 @@ "Platform": "x64" } }, + { + "Name": "Core-Setup-Linux-BT", + "Parameters": { + "PB_DistroRid": "ubuntu.14.04-arm", + "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", + "PB_TargetArchitecture": "arm", + "PB_AdditionalBuildArguments":"arm cross -portable skiptests", + "PB_PortableBuild": "true" + }, + "ReportingParameters": { + "SubType": "PortableBuild", + "OperatingSystem": "Ubuntu 14.04", + "Type": "build/product/", + "Platform": "arm" + } + }, { "Name": "Core-Setup-OSX-BT", "Parameters": { From fc5bbbb73c22cdea72cea57990facb1fd374d8e7 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Sat, 6 May 2017 17:40:15 -0700 Subject: [PATCH 329/625] Arm support cleanup, fix readme links, remove disablecrossgen as a default for arm --- README.md | 27 +++++++++++++++------------ build.sh | 3 --- buildpipeline/pipeline.json | 2 +- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index de409202..12fbf4e1 100644 --- a/README.md +++ b/README.md @@ -34,8 +34,11 @@ Daily Builds |---------|:----------:|:----------:|:----------:| | **Windows (x64)** | [![][win-x64-badge-master]][win-x64-version-master]
[Installer][win-x64-installer-master]
[zip][win-x64-zip-master]
[Symbols (zip)][win-x64-symbols-zip-master] | [![][win-x64-badge-1.1.X]][win-x64-version-1.1.X]
[Installer][win-x64-installer-1.1.X]
[zip][win-x64-zip-1.1.X] | [![][win-x64-badge-preview]][win-x64-version-preview]
[Installer][win-x64-installer-preview]
[zip][win-x64-zip-preview] | | **Windows (x86)** | [![][win-x86-badge-master]][win-x86-version-master]
[Installer][win-x86-installer-master]
[zip][win-x86-zip-master]
[Symbols (zip)][win-x86-symbols-zip-master] | [![][win-x86-badge-1.1.X]][win-x86-version-1.1.X]
[Installer][win-x86-installer-1.1.X]
[zip][win-x86-zip-1.1.X] | [![][win-x86-badge-preview]][win-x86-version-preview]
[Installer][win-x86-installer-preview]
[zip][win-x86-zip-preview] | +| **Windows (arm32)** | [![][win-arm-badge-master]][win-arm-version-master]
[zip][win-arm-zip-master]
[Symbols (zip)][win-arm-symbols-zip-master] | N/A | N/A | +| **Windows (arm64)** | [![][win-arm64-badge-master]][win-arm64-version-master]
[zip][win-arm64-zip-master]
[Symbols (zip)][win-arm64-symbols-zip-master] | N/A | N/A | | **Mac OS X (x64)** | [![][osx-badge-master]][osx-version-master]
[Installer][osx-installer-master]
[tar.gz][osx-targz-master]
[Symbols (tar.gz)][osx-symbols-targz-master] | [![][osx-badge-1.1.X]][osx-version-1.1.X]
[Installer][osx-installer-1.1.X]
[tar.gz][osx-targz-1.1.X] | [![][osx-badge-preview]][osx-version-preview]
[Installer][osx-installer-preview]
[tar.gz][osx-targz-preview] | | **Linux (x64)** (for glibc based OS) | [![][linux-x64-badge-master]][linux-x64-version-master]
[tar.gz][linux-x64-targz-master]
[Symbols (tar.gz)][linux-x64-symbols-targz-master] | N/A | N/A | +| **Linux (arm)** (for glibc based OS) | [![][linux-arm-badge-master]][linux-arm-version-master]
[tar.gz][linux-arm-targz-master]
[Symbols (tar.gz)][linux-arm-symbols-targz-master] | N/A | N/A | | **Ubuntu 14.04 (x64)** | [![][ubuntu-14.04-badge-master]][ubuntu-14.04-version-master]
[Host][ubuntu-14.04-host-master]
[Host FX Resolver][ubuntu-14.04-hostfxr-master]
[Shared Framework][ubuntu-14.04-sharedfx-master]
[tar.gz][ubuntu-14.04-targz-master]
[Symbols (tar.gz)][ubuntu-14.04-symbols-targz-master] | [![][ubuntu-14.04-badge-1.1.X]][ubuntu-14.04-version-1.1.X]
[Host][ubuntu-14.04-host-1.1.X]
[Host FX Resolver][ubuntu-14.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-14.04-sharedfx-1.1.X]
[tar.gz][ubuntu-14.04-targz-1.1.X] | [![][ubuntu-14.04-badge-preview]][ubuntu-14.04-version-preview]
[Host][ubuntu-14.04-host-preview]
[Host FX Resolver][ubuntu-14.04-hostfxr-preview]
[Shared Framework][ubuntu-14.04-sharedfx-preview]
[tar.gz][ubuntu-14.04-targz-preview] | | **Ubuntu 16.04 (x64)** | [![][ubuntu-16.04-badge-master]][ubuntu-16.04-version-master]
[Host][ubuntu-16.04-host-master]
[Host FX Resolver][ubuntu-16.04-hostfxr-master]
[Shared Framework][ubuntu-16.04-sharedfx-master]
[tar.gz][ubuntu-16.04-targz-master]
[Symbols (tar.gz)][ubuntu-16.04-symbols-targz-master] | [![][ubuntu-16.04-badge-1.1.X]][ubuntu-16.04-version-1.1.X]
[Host][ubuntu-16.04-host-1.1.X]
[Host FX Resolver][ubuntu-16.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.04-sharedfx-1.1.X]
[tar.gz][ubuntu-16.04-targz-1.1.X] | [![][ubuntu-16.04-badge-preview]][ubuntu-16.04-version-preview]
[Host][ubuntu-16.04-host-preview]
[Host FX Resolver][ubuntu-16.04-hostfxr-preview]
[Shared Framework][ubuntu-16.04-sharedfx-preview]
[tar.gz][ubuntu-16.04-targz-preview] | | **Ubuntu 16.10 (x64)** | [![][ubuntu-16.10-badge-master]][ubuntu-16.10-version-master]
[Host][ubuntu-16.10-host-master]
[Host FX Resolver][ubuntu-16.10-hostfxr-master]
[Shared Framework][ubuntu-16.10-sharedfx-master]
[tar.gz][ubuntu-16.10-targz-master]
[Symbols (tar.gz)][ubuntu-16.10-symbols-targz-master] | [![][ubuntu-16.10-badge-1.1.X]][ubuntu-16.10-version-1.1.X]
[Host][ubuntu-16.10-host-1.1.X]
[Host FX Resolver][ubuntu-16.10-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.10-sharedfx-1.1.X]
[tar.gz][ubuntu-16.10-targz-1.1.X] | N/A | @@ -59,7 +62,7 @@ Daily Builds [win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x64_Release_version_badge.svg -[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x64.version +[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x64.version [win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64.latest.exe [win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest.zip [win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest.zip @@ -75,7 +78,7 @@ Daily Builds [win-x64-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x64.latest.zip [win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x86_Release_version_badge.svg -[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win-x86.version +[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x86.version [win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86.latest.exe [win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest.zip [win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest.zip @@ -90,18 +93,18 @@ Daily Builds [win-x86-installer-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-win-x86.latest.exe [win-x86-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x86.latest.zip -[win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_arm_Release_version_badge.svg +[win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-arm_Release_version_badge.svg [win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm.version [win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm.latest.zip [win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm.latest.zip -[win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win_arm64_Release_version_badge.svg +[win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-arm64_Release_version_badge.svg [win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm64.version [win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest.zip [win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest.zip [osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx-x64_Release_version_badge.svg -[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx-x64.version +[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx.x64.version [osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64.latest.pkg [osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest.tar.gz [osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz @@ -118,17 +121,17 @@ Daily Builds [linux-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux-x64_Release_version_badge.svg -[linux-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux-x64.version +[linux-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.x64.version [linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64.latest.tar.gz [linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz [linux-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_arm_Release_version_badge.svg -[linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux-arm.version +[linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.arm.version [linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-arm.latest.tar.gz [linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm.latest.tar.gz [ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg -[ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu-x64.version +[ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.x64.version [ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu-x64.latest.deb [ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu-x64.latest.deb [ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu-x64.latest.deb @@ -151,7 +154,7 @@ Daily Builds [ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg -[ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04-x64.version +[ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04.x64.version [ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb @@ -166,7 +169,7 @@ Daily Builds [ubuntu-16.04-targz-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/dotnet-ubuntu.16.04-x64.latest.tar.gz [ubuntu-16.04-badge-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/sharedfx_Ubuntu_16_04_x64_Release_version_badge.svg -[ubuntu-16.04-version-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/dnvm/latest.sharedfx.ubuntu.16.04-x64.version +[ubuntu-16.04-version-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/dnvm/latest.sharedfx.ubuntu.16.04.x64.version [ubuntu-16.04-host-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-host-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-hostfxr-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-sharedfx-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb @@ -174,7 +177,7 @@ Daily Builds [ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg -[ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.10-x64.version +[ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.10.x64.version [ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.10-x64.latest.deb [ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb [ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb @@ -190,7 +193,7 @@ Daily Builds [debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_debian.8-x64_Release_version_badge.svg -[debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.debian.8-x64.version +[debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.debian.8.x64.version [debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-debian-x64.latest.deb [debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-debian-x64.latest.deb [debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-debian-x64.latest.deb diff --git a/build.sh b/build.sh index 94a4253f..416b8459 100755 --- a/build.sh +++ b/build.sh @@ -179,17 +179,14 @@ while :; do arm) __BuildArch=arm - __DisableCrossgen=true ;; armel) __BuildArch=armel - __DisableCrossgen=true ;; arm64) __BuildArch=arm64 - __DisableCrossgen=true ;; debug) diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 5458ce86..7bae2fe0 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -98,7 +98,7 @@ "PB_DistroRid": "ubuntu.14.04-arm", "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", "PB_TargetArchitecture": "arm", - "PB_AdditionalBuildArguments":"arm cross -portable skiptests", + "PB_AdditionalBuildArguments":"arm cross disablecrossgen -portable skiptests", "PB_PortableBuild": "true" }, "ReportingParameters": { From 2864a433a363489acabc52b06991dd99b2de2e78 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Sat, 6 May 2017 17:49:19 -0700 Subject: [PATCH 330/625] Fix linux arm graphic --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 12fbf4e1..685f481d 100644 --- a/README.md +++ b/README.md @@ -125,7 +125,7 @@ Daily Builds [linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64.latest.tar.gz [linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz -[linux-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux_arm_Release_version_badge.svg +[linux-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux-arm_Release_version_badge.svg [linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.arm.version [linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-arm.latest.tar.gz [linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm.latest.tar.gz From 20ed9f2a233cba7807732ec13938d632942e41b7 Mon Sep 17 00:00:00 2001 From: Jiyoung Giuliana Yun Date: Tue, 9 May 2017 00:06:23 +0900 Subject: [PATCH 331/625] Do not exit when unmount fails during rootfs builds (#2278) --- cross/build-rootfs.sh | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/cross/build-rootfs.sh b/cross/build-rootfs.sh index 10405b26..39a36081 100755 --- a/cross/build-rootfs.sh +++ b/cross/build-rootfs.sh @@ -128,10 +128,6 @@ fi if [ -d "$__RootfsDir" ]; then if [ $__SkipUnmount == 0 ]; then umount $__RootfsDir/* - if [ $? -ne 0 ]; then - echo "Failed to unmount RootfsDir." - exit 1 - fi fi rm -rf $__RootfsDir fi @@ -187,4 +183,4 @@ install_Failed() { echo "Failed to install/symlink packages." exit 1 -} \ No newline at end of file +} From a8c14a7252e730e59b69b68bcb9949df0644aa58 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Wed, 3 May 2017 11:14:14 -0700 Subject: [PATCH 332/625] Add Publish step to build --- publish/dir.targets | 2 ++ publish/publish.proj | 6 ++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/publish/dir.targets b/publish/dir.targets index 775fe0c1..48c63bae 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -64,6 +64,8 @@ <_MissingBlobNames Include="@(PublishRid->'sharedfx_%(Identity)_$(ConfigurationGroup)_version_badge.svg')" Exclude="@(_FoundBlobNames)" />
+ diff --git a/publish/publish.proj b/publish/publish.proj index 9bfe7c32..0de04e45 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -6,9 +6,11 @@ - + DependsOnTargets="PublishToAzure;PublishDebFilesToDebianRepo;" /> + + From 9e2fcb456223bb9b5b7a25f7a4602e8d84c7b145 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Thu, 4 May 2017 15:18:33 -0700 Subject: [PATCH 333/625] Fix getazurebloblist --- publish/dir.targets | 6 +++--- publish/publish.proj | 13 ++++++++++++- .../AzureHelper.cs | 2 +- .../GetAzureBlobList.cs | 6 ++++-- 4 files changed, 20 insertions(+), 7 deletions(-) diff --git a/publish/dir.targets b/publish/dir.targets index 48c63bae..b35d665a 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -62,10 +62,10 @@ <_FoundBlobNames Include="%(_BlobNames.FileName)%(_BlobNames.Extension)" Condition="'%(_BlobNames.Extension)' == '.svg'" /> <_MissingBlobNames Include="@(PublishRid->'sharedfx_%(Identity)_$(ConfigurationGroup)_version_badge.svg')" - Exclude="@(_FoundBlobNames)" /> + Exclude="@(_FoundBlobNames)" /> - + diff --git a/publish/publish.proj b/publish/publish.proj index 0de04e45..8eebf49c 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -8,9 +8,20 @@ - + + + + + + + + + + + diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs index f5e9d502..5ee50614 100644 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs @@ -201,7 +201,7 @@ namespace Microsoft.DotNet.Build.Tasks.Utility public static async Task RequestWithRetry(TaskLoggingHelper loggingHelper, HttpClient client, Func createRequest, Func validationCallback = null, int retryCount = 5, - int retryDelaySeconds = 5) + int retryDelaySeconds = 5, string url="") { if (loggingHelper == null) throw new ArgumentNullException(nameof(loggingHelper)); diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs index 2b3dd14e..c9c67c9f 100644 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs @@ -6,6 +6,7 @@ using System; using Microsoft.Build.Framework; using System.Collections.Generic; using System.Net.Http; +using System.Diagnostics; using System.Xml; using System.Threading.Tasks; using System.Linq; @@ -94,10 +95,11 @@ namespace Microsoft.DotNet.Build.Tasks while (!string.IsNullOrEmpty(nextMarker)) { urlListBlobs = string.Format($"https://{AccountName}.blob.core.windows.net/{ContainerName}?restype=container&comp=list&marker={nextMarker}"); - using (HttpResponseMessage response = Utility.AzureHelper.RequestWithRetry(Log, client, createRequest).GetAwaiter().GetResult()) + var nextRequest = Utility.AzureHelper.RequestMessage("GET", urlListBlobs, AccountName, AccountKey); + using (HttpResponseMessage nextResponse = Utility.AzureHelper.RequestWithRetry(Log, client, nextRequest).GetAwaiter().GetResult()) { responseFile = new XmlDocument(); - responseFile.LoadXml(response.Content.ReadAsStringAsync().GetAwaiter().GetResult()); + responseFile.LoadXml(await nextResponse.Content.ReadAsStringAsync()); XmlNodeList elemList = responseFile.GetElementsByTagName("Name"); blobsNames.AddRange(elemList.Cast() From fd6321cae0e26b4baf81f6ea6ddf9b60351eed85 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Thu, 4 May 2017 15:52:09 -0700 Subject: [PATCH 334/625] Add Build pipeline steps --- buildpipeline/Core-Setup-Publish.json | 413 ++++++++++++++++++++++++++ buildpipeline/pipeline.json | 27 ++ 2 files changed, 440 insertions(+) create mode 100644 buildpipeline/Core-Setup-Publish.json diff --git a/buildpipeline/Core-Setup-Publish.json b/buildpipeline/Core-Setup-Publish.json new file mode 100644 index 00000000..cf41c1ec --- /dev/null +++ b/buildpipeline/Core-Setup-Publish.json @@ -0,0 +1,413 @@ +{ + "build": [ + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup previous build if present", + "timeoutInMinutes": 0, + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "-path $(PB_SourcesDirectory)", + "workingFolder": "", + "inlineScript": "param($path)\n\nif (Test-Path $path){\n # this will print out an error each time a file can't be deleted.\n Remove-Item -Recurse -Force $path\n }", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Clone repo", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "git", + "arguments": "clone $(PB_VsoRepoUrl) $(PB_SourcesDirectory)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "git checkout", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "git", + "arguments": "checkout $(SourceVersion)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Run init-tools.cmd", + "timeoutInMinutes": 0, + "task": { + "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_SourcesDirectory)\\init-tools.cmd", + "arguments": "", + "modifyEnvironment": "false", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize tooling", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\build.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:BatchRestorePackages;BuildCustomTasks", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "15.0", + "msbuildArchitecture": "x86", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Publish", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:PublishFinalOutput /p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ContainerName=$(STORAGE_CONTAINER) /p:GitHubUser=$(GITHUB_USER) /p:GitHubEmail=$(GITHUB_EMAIL) /p:GitHubAuthToken=$(GITHUB_AUTH_TOKEN) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_VersionsRepo)/$(PB_Branch) /p:ShippedNuGetPackageGlobPath=$(PB_SourcesDirectory)\\Bin\\publishpackages\\$(PB_FilesToPublish)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "15.0", + "msbuildArchitecture": "x86", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": true, + "displayName": "Clean Up Agent", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\Tools\\scripts\\vstsagent\\cleanupagent.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Perform Cleanup Tasks", + "timeoutInMinutes": 0, + "task": { + "id": "521a94ea-9e68-468a-8167-6dcf361ea776", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": {} + }, + { + "enabled": false, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Publish Build Artifacts", + "timeoutInMinutes": 0, + "task": { + "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "build.cmd", + "arguments": "-Configuration $(BuildConfiguration) -Targets Prepare,Publish", + "modifyEnvironment": "false", + "workingFolder": "", + "failOnStandardError": "false" + } + } + ], + "options": [ + { + "enabled": false, + "definition": { + "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" + }, + "inputs": { + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "7c555368-ca64-4199-add6-9ebaf0b0137d" + }, + "inputs": { + "multipliers": "[]", + "parallel": "false", + "continueOnError": "true", + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "a9db38f9-9fdc-478c-b0f9-464221e58316" + }, + "inputs": { + "workItemType": "4777", + "assignToRequestor": "true", + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "57578776-4c22-4526-aeb0-86b6da17ee9c" + }, + "inputs": { + "additionalFields": "{}" + } + } + ], + "variables": { + "BuildConfiguration": { + "value": "Release", + "allowOverride": true + }, + "COREHOST_TRACE": { + "value": "0", + "allowOverride": true + }, + "STORAGE_ACCOUNT": { + "value": "karajascli" + }, + "STORAGE_CONTAINER": { + "value": "core-setup" + }, + "CONNECTION_STRING": { + "value": "PassedViaPipeBuild" + }, + "PUBLISH_TO_AZURE_BLOB": { + "value": "true" + }, + "NUGET_FEED_URL": { + "value": "https://dotnet.myget.org/F/dotnet-core-dev-eng/api/v2/package " + }, + "NUGET_API_KEY": { + "value": null, + "isSecret": true + }, + "GITHUB_PASSWORD": { + "value": "PassedViaPipeBuild" + }, + "SIGNED_PACKAGES": { + "value": "true" + }, + "CertificateId": { + "value": "400" + }, + "PB_DistroRid": { + "value": "win7-x64" + }, + "MsbuildSigningArguments": { + "value": "/p:CertificateId=$(CertificateId) /v:detailed" + }, + "TeamName": { + "value": "DotNetCore" + }, + "system.debug": { + "value": "false" + }, + "NUGET_SYMBOLS_FEED_URL": { + "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + }, + "PB_SourcesDirectory": { + "value": "$(Build.SourcesDirectory)\\core-setup" + }, + "PB_VsoRepoUrl": { + "value": "--branch addPublish https://github.com/karajas/core-setup.git" + }, + "PB_AzureAccountName": { + "value": "karajascli" + }, + "PB_AzureAccessToken": { + "value": null, + "isSecret": true + }, + "PB_VsoAccountName": { + "value": "dn-bot" + }, + "PB_VsoPassword": { + "value": null, + "isSecret": true + }, + "PB_Branch": { + "value": "master" + }, + "SourceVersion": { + "value": "HEAD" + }, + "PB_SignType": { + "value": "real" + }, + "PB_CommonMSBuildArgs": { + "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture)" + }, + "OfficialBuildId": { + "value": "20170503.01" + }, + "PB_TargetArchitecture": { + "value": "x64", + "allowOverride": true + }, + "GITHUB_USER": { + "value": "karajas" + }, + "GITHUB_AUTH_TOKEN": { + "value": null, + "isSecret": true + }, + "PB_VersionsRepoOwner": { + "value": "karajas" + }, + "PB_VersionsRepo": { + "value": "core-setup" + }, + "GITHUB_EMAIL": { + "value": null, + "isSecret": true + }, + "PB_FilesToPublish": { + "value": "*.nupkg" + } + }, + "demands": [ + "Agent.OS -equals Windows_NT" + ], + "retentionRules": [ + { + "branches": [ + "+refs/heads/*" + ], + "artifacts": [], + "artifactTypesToDelete": [ + "FilePath", + "SymbolStore" + ], + "daysToKeep": 2, + "minimumToKeep": 1, + "deleteBuildRecord": true, + "deleteTestResults": true + } + ], + "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)", + "jobAuthorizationScope": "projectCollection", + "jobTimeoutInMinutes": 120, + "jobCancelTimeoutInMinutes": 5, + "badgeEnabled": true, + "repository": { + "properties": { + "labelSources": "0", + "reportBuildStatus": "true", + "fetchDepth": "0", + "gitLfsSupport": "false", + "skipSyncSource": "true", + "cleanOptions": "3", + "labelSourcesFormat": "$(build.buildNumber)", + "checkoutNestedSubmodules": "false" + }, + "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", + "type": "TfsGit", + "name": "DotNet-Core-Setup-Trusted", + "url": "https://devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted", + "defaultBranch": "refs/heads/master", + "clean": "false", + "checkoutSubmodules": false + }, + "processParameters": {}, + "quality": "definition", + "queue": { + "id": 36, + "name": "DotNet-Build", + "pool": { + "id": 39, + "name": "DotNet-Build" + } + }, + "id": 6301, + "name": "Core-Setup-Publish", + "url": "https://devdiv.visualstudio.com/DefaultCollection/0bdbc590-a062-4c3f-b0f6-9383f67865ee/_apis/build/Definitions/6301", + "path": "\\", + "type": "build", + "project": { + "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", + "name": "DevDiv", + "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", + "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", + "state": "wellFormed", + "revision": 418097676 + } +} \ No newline at end of file diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 7bae2fe0..a2e568e5 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -180,6 +180,33 @@ } } ] + }, + { + "Name": "Publish finalized build", + "Parameters": { + "TreatWarningsAsErrors": "false" + }, + "BuildParameters": { + "BuildConfiguration": "Release" + }, + "Definitions": [ + { + "Name": "Core-Setup-Publish", + "Parameters": { + "PB_DistroRid": "win7-x86", + "PB_TargetArchitecture": "x64", + }, + "ReportingParameters": { + "OperatingSystem": "Windows", + "SubType": "Publish", + "Type": "build/product/", + "Platform": "x64" + } + } + ], + "DependsOn": [ + "Trusted-All-Release" + ] } ] } \ No newline at end of file From 1b2df4e45d34cad13997f8e1e38df9f88e1eb15d Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Thu, 4 May 2017 15:54:57 -0700 Subject: [PATCH 335/625] Refactor --- tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs | 2 +- .../Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs index 5ee50614..f5e9d502 100644 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs @@ -201,7 +201,7 @@ namespace Microsoft.DotNet.Build.Tasks.Utility public static async Task RequestWithRetry(TaskLoggingHelper loggingHelper, HttpClient client, Func createRequest, Func validationCallback = null, int retryCount = 5, - int retryDelaySeconds = 5, string url="") + int retryDelaySeconds = 5) { if (loggingHelper == null) throw new ArgumentNullException(nameof(loggingHelper)); diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs index c9c67c9f..5a95893a 100644 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs @@ -6,7 +6,6 @@ using System; using Microsoft.Build.Framework; using System.Collections.Generic; using System.Net.Http; -using System.Diagnostics; using System.Xml; using System.Threading.Tasks; using System.Linq; From 91541a829156c92ad070fbe220c370bbfdf888fb Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 4 May 2017 13:39:43 -0500 Subject: [PATCH 336/625] DependencyModel continue on on file not found Now that we have runtime package stores, there are package paths that don't contain all of the reference assemblies. Runtime package stores actually don't have any reference assemblies. When DependencyModel is given a runtime package store and a NuGet cache directory (in that order), it needs to keep looking in all the package paths it is given before throwing an exception. --- .../PackageCompilationAssemblyResolver.cs | 31 ++++++++++++++++-- .../Resolution/ResolverUtils.cs | 15 --------- .../PackageResolverTest.cs | 32 ++++++++++++++++--- 3 files changed, 56 insertions(+), 22 deletions(-) diff --git a/src/managed/Microsoft.Extensions.DependencyModel/Resolution/PackageCompilationAssemblyResolver.cs b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/PackageCompilationAssemblyResolver.cs index 11ac57bb..82976ae6 100644 --- a/src/managed/Microsoft.Extensions.DependencyModel/Resolution/PackageCompilationAssemblyResolver.cs +++ b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/PackageCompilationAssemblyResolver.cs @@ -95,11 +95,38 @@ namespace Microsoft.Extensions.DependencyModel.Resolution if (ResolverUtils.TryResolvePackagePath(_fileSystem, library, directory, out packagePath)) { - assemblies.AddRange(ResolverUtils.ResolveFromPackagePath(_fileSystem, library, packagePath)); - return true; + IEnumerable fullPathsFromPackage; + if (TryResolveFromPackagePath(_fileSystem, library, packagePath, out fullPathsFromPackage)) + { + assemblies.AddRange(fullPathsFromPackage); + return true; + } } } return false; } + + private static bool TryResolveFromPackagePath(IFileSystem fileSystem, CompilationLibrary library, string basePath, out IEnumerable results) + { + var paths = new List(); + + foreach (var assembly in library.Assemblies) + { + string fullName; + if (!ResolverUtils.TryResolveAssemblyFile(fileSystem, basePath, assembly, out fullName)) + { + // if one of the files can't be found, skip this package path completely. + // there are package paths that don't include all of the "ref" assemblies + // (ex. ones created by 'dotnet store') + results = null; + return false; + } + + paths.Add(fullName); + } + + results = paths; + return true; + } } } diff --git a/src/managed/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs index db4d7b19..084b915b 100644 --- a/src/managed/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs +++ b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/ResolverUtils.cs @@ -1,8 +1,6 @@ // Copyright (c) .NET Foundation and contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. -using System; -using System.Collections.Generic; using System.IO; namespace Microsoft.Extensions.DependencyModel.Resolution @@ -26,19 +24,6 @@ namespace Microsoft.Extensions.DependencyModel.Resolution return false; } - internal static IEnumerable ResolveFromPackagePath(IFileSystem fileSystem, CompilationLibrary library, string basePath) - { - foreach (var assembly in library.Assemblies) - { - string fullName; - if (!TryResolveAssemblyFile(fileSystem, basePath, assembly, out fullName)) - { - throw new InvalidOperationException($"Cannot find assembly file for package {library.Name} at '{fullName}'"); - } - yield return fullName; - } - } - internal static bool TryResolveAssemblyFile(IFileSystem fileSystem, string basePath, string assemblyPath, out string fullName) { fullName = Path.Combine(basePath, assemblyPath); diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs index 65519232..fbf3e0eb 100644 --- a/src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/PackageResolverTest.cs @@ -76,7 +76,6 @@ namespace Microsoft.Extensions.DependencyModel.Tests assemblies.Should().Contain(Path.Combine(packagePath, F.SecondAssemblyPath)); } - [Fact] public void FailsWhenOneOfAssembliesNotFound() { @@ -89,10 +88,33 @@ namespace Microsoft.Extensions.DependencyModel.Tests var resolver = new PackageCompilationAssemblyResolver(fileSystem, new string[] { PackagesPath }); var assemblies = new List(); - var exception = Assert.Throws(() => resolver.TryResolveAssemblyPaths(library, assemblies)); - exception.Message.Should() - .Contain(F.SecondAssemblyPath) - .And.Contain(library.Name); + resolver.TryResolveAssemblyPaths(library, assemblies) + .Should().BeFalse(); + + assemblies.Should().BeEmpty(); + } + + [Fact] + public void KeepsLookingWhenOneOfAssembliesNotFound() + { + var packagePath1 = GetPackagesPath(F.DefaultPackageName, F.DefaultVersion); + var secondPath = "secondPath"; + var packagePath2 = GetPackagesPath(secondPath, F.DefaultPackageName, F.DefaultVersion); + var fileSystem = FileSystemMockBuilder.Create() + .AddFiles(packagePath1, F.DefaultAssemblyPath) + .AddFiles(packagePath2, F.DefaultAssemblyPath, F.SecondAssemblyPath) + .Build(); + var library = F.Create(assemblies: F.TwoAssemblies); + + var resolver = new PackageCompilationAssemblyResolver(fileSystem, new string[] { PackagesPath, secondPath }); + var assemblies = new List(); + + resolver.TryResolveAssemblyPaths(library, assemblies) + .Should().BeTrue(); + + assemblies.Should().HaveCount(2); + assemblies.Should().Contain(Path.Combine(packagePath2, F.DefaultAssemblyPath)); + assemblies.Should().Contain(Path.Combine(packagePath2, F.SecondAssemblyPath)); } private static string GetPackagesPath(string id, string version) From aed7afda15ed4bd0acda122e0c1201f7cf9416dc Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Fri, 5 May 2017 16:23:10 -0700 Subject: [PATCH 337/625] Remove unnecessary publish varibles from definition --- buildpipeline/Core-Setup-CrossBuild.json | 11 +--- buildpipeline/Core-Setup-Linux-BT.json | 12 +---- buildpipeline/Core-Setup-OSX-BT.json | 11 +--- buildpipeline/Core-Setup-Publish.json | 53 +++---------------- .../Core-Setup-Signing-Windows-BT.json | 11 +--- buildpipeline/Core-Setup-Windows-BT.json | 11 +--- buildpipeline/pipeline.json | 2 +- publish/publish.proj | 9 ++-- 8 files changed, 18 insertions(+), 102 deletions(-) diff --git a/buildpipeline/Core-Setup-CrossBuild.json b/buildpipeline/Core-Setup-CrossBuild.json index ae85317e..986b2935 100644 --- a/buildpipeline/Core-Setup-CrossBuild.json +++ b/buildpipeline/Core-Setup-CrossBuild.json @@ -125,7 +125,7 @@ }, "inputs": { "scriptPath": "$(PB_RepoName)/scripts/docker-as-current-user.sh", - "args": "run --name $(PB_DockerContainerName) --rm --privileged -v $(System.DefaultWorkingDirectory)/$(PB_RepoName):$(PB_GitDirectory) -w $(PB_GitDirectory) -e HOME -e ROOTFS_DIR -e PUBLISH_TO_AZURE_BLOB -e CONNECTION_STRING -e CLI_NUGET_FEED_URL -e CLI_NUGET_SYMBOLS_FEED_URL -e CLI_NUGET_API_KEY -e NUGET_FEED_URL -e NUGET_SYMBOLS_FEED_URL -e NUGET_API_KEY -e GITHUB_PASSWORD $(PB_DockerImageName) ./build.sh $(CommonArguments) $(BuildArguments) $(PB_PortableBuild) --env-vars \"DISABLE_CROSSGEN=1,TARGETPLATFORM=$(PB_Architecture),TARGETRID=$(TargetRid),CROSS=1\"", + "args": "run --name $(PB_DockerContainerName) --rm --privileged -v $(System.DefaultWorkingDirectory)/$(PB_RepoName):$(PB_GitDirectory) -w $(PB_GitDirectory) -e HOME -e ROOTFS_DIR -e PUBLISH_TO_AZURE_BLOB -e CONNECTION_STRING -e GITHUB_PASSWORD $(PB_DockerImageName) ./build.sh $(CommonArguments) $(BuildArguments) $(PB_PortableBuild) --env-vars \"DISABLE_CROSSGEN=1,TARGETPLATFORM=$(PB_Architecture),TARGETRID=$(TargetRid),CROSS=1\"", "disableAutoCwd": "false", "cwd": "", "failOnStandardError": "false" @@ -266,12 +266,6 @@ "REPO_SERVER": { "value": "azure-apt-cat.cloudapp.net" }, - "NUGET_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" - }, - "NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, "GITHUB_PASSWORD": { "value": "PassedViaPipeBuild" }, @@ -325,9 +319,6 @@ }, "PB_CleanAgent": { "value": "true" - }, - "NUGET_SYMBOLS_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 8e1e8e1a..9129525b 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -177,7 +177,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux", + "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -297,13 +297,6 @@ "value": "true", "allowOverride": true }, - "NUGET_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" - }, - "NUGET_API_KEY": { - "value": null, - "isSecret": true - }, "GITHUB_PASSWORD": { "value": "PassedViaPipeBuild" }, @@ -320,9 +313,6 @@ "PB_DockerHost_ToolsDirectory": { "value": "$(PB_DockerHost_Sandbox)/Tools" }, - "NUGET_SYMBOLS_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" - }, "PB_DockerImageName": { "value": "$(PB_DockerRepository):$(PB_DockerTag)" }, diff --git a/buildpipeline/Core-Setup-OSX-BT.json b/buildpipeline/Core-Setup-OSX-BT.json index 723dbb32..e252d577 100644 --- a/buildpipeline/Core-Setup-OSX-BT.json +++ b/buildpipeline/Core-Setup-OSX-BT.json @@ -121,7 +121,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)/Tools/msbuild.sh", - "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=OSX", + "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=OSX", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -204,18 +204,9 @@ "value": "true", "allowOverride": true }, - "NUGET_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" - }, - "NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, "GITHUB_PASSWORD": { "value": "PassedViaPipeBuild" }, - "NUGET_SYMBOLS_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" - }, "PB_CleanAgent": { "value": "true" }, diff --git a/buildpipeline/Core-Setup-Publish.json b/buildpipeline/Core-Setup-Publish.json index cf41c1ec..abdfbdd4 100644 --- a/buildpipeline/Core-Setup-Publish.json +++ b/buildpipeline/Core-Setup-Publish.json @@ -117,7 +117,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:PublishFinalOutput /p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ContainerName=$(STORAGE_CONTAINER) /p:GitHubUser=$(GITHUB_USER) /p:GitHubEmail=$(GITHUB_EMAIL) /p:GitHubAuthToken=$(GITHUB_AUTH_TOKEN) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_VersionsRepo)/$(PB_Branch) /p:ShippedNuGetPackageGlobPath=$(PB_SourcesDirectory)\\Bin\\publishpackages\\$(PB_FilesToPublish)", + "msbuildArguments": "/t:PublishFinalOutput /p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ContainerName=$(STORAGE_CONTAINER) /p:GitHubUser=$(GITHUB_USER) /p:GitHubEmail=$(GITHUB_EMAIL) /p:GitHubAuthToken=$(GITHUB_AUTH_TOKEN) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(PB_Branch)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -237,22 +237,6 @@ "value": "Release", "allowOverride": true }, - "COREHOST_TRACE": { - "value": "0", - "allowOverride": true - }, - "STORAGE_ACCOUNT": { - "value": "karajascli" - }, - "STORAGE_CONTAINER": { - "value": "core-setup" - }, - "CONNECTION_STRING": { - "value": "PassedViaPipeBuild" - }, - "PUBLISH_TO_AZURE_BLOB": { - "value": "true" - }, "NUGET_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core-dev-eng/api/v2/package " }, @@ -260,27 +244,9 @@ "value": null, "isSecret": true }, - "GITHUB_PASSWORD": { - "value": "PassedViaPipeBuild" - }, - "SIGNED_PACKAGES": { - "value": "true" - }, - "CertificateId": { - "value": "400" - }, "PB_DistroRid": { "value": "win7-x64" }, - "MsbuildSigningArguments": { - "value": "/p:CertificateId=$(CertificateId) /v:detailed" - }, - "TeamName": { - "value": "DotNetCore" - }, - "system.debug": { - "value": "false" - }, "NUGET_SYMBOLS_FEED_URL": { "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" }, @@ -291,7 +257,7 @@ "value": "--branch addPublish https://github.com/karajas/core-setup.git" }, "PB_AzureAccountName": { - "value": "karajascli" + "value": "dotnetcli" }, "PB_AzureAccessToken": { "value": null, @@ -310,38 +276,35 @@ "SourceVersion": { "value": "HEAD" }, - "PB_SignType": { - "value": "real" - }, "PB_CommonMSBuildArgs": { "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture)" }, "OfficialBuildId": { - "value": "20170503.01" + "value": "$(Build.BuildNumber)" }, "PB_TargetArchitecture": { "value": "x64", "allowOverride": true }, "GITHUB_USER": { - "value": "karajas" + "value": "dotnetbot" }, "GITHUB_AUTH_TOKEN": { "value": null, "isSecret": true }, "PB_VersionsRepoOwner": { - "value": "karajas" + "value": "dotnet" }, "PB_VersionsRepo": { + "value": "versions" + }, + "PB_RepoName": { "value": "core-setup" }, "GITHUB_EMAIL": { "value": null, "isSecret": true - }, - "PB_FilesToPublish": { - "value": "*.nupkg" } }, "demands": [ diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index cfdabc3b..13872df7 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -441,7 +441,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -577,12 +577,6 @@ "PUBLISH_TO_AZURE_BLOB": { "value": "true" }, - "NUGET_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" - }, - "NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, "GITHUB_PASSWORD": { "value": "PassedViaPipeBuild" }, @@ -615,9 +609,6 @@ "value": "false", "allowOverride": true }, - "NUGET_SYMBOLS_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" - }, "PB_SourcesDirectory": { "value": "$(Build.SourcesDirectory)\\core-setup" }, diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index f97b62f0..d83921ed 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -89,7 +89,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_BuildArguments) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken)", + "msbuildArguments": "/p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -173,12 +173,6 @@ } ], "variables": { - "NUGET_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" - }, - "NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, "GITHUB_PASSWORD": { "value": "PassedViaPipeBuild" }, @@ -198,9 +192,6 @@ "value": "true", "allowOverride": true }, - "NUGET_SYMBOLS_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" - }, "BuildConfiguration": { "value": "Release" }, diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index a2e568e5..b850358e 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -193,8 +193,8 @@ { "Name": "Core-Setup-Publish", "Parameters": { - "PB_DistroRid": "win7-x86", "PB_TargetArchitecture": "x64", + "PB_PublishLocation": "Bin\\publishpackages", }, "ReportingParameters": { "OperatingSystem": "Windows", diff --git a/publish/publish.proj b/publish/publish.proj index 8eebf49c..09d7fd24 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -9,18 +9,16 @@ - - + + - - + + \ No newline at end of file From 2195c132c0c4b889556a725afe936ec20745db02 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Mon, 8 May 2017 10:54:38 -0700 Subject: [PATCH 338/625] Remove Crossbuild build definition --- buildpipeline/Core-Setup-CrossBuild.json | 388 ----------------------- 1 file changed, 388 deletions(-) delete mode 100644 buildpipeline/Core-Setup-CrossBuild.json diff --git a/buildpipeline/Core-Setup-CrossBuild.json b/buildpipeline/Core-Setup-CrossBuild.json deleted file mode 100644 index 986b2935..00000000 --- a/buildpipeline/Core-Setup-CrossBuild.json +++ /dev/null @@ -1,388 +0,0 @@ -{ - "build": [ - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Cleanup host machine", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "sudo", - "arguments": "rm -rf $(PB_RepoName)", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Clone Repository on host machine", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "git", - "arguments": "clone $(PB_RepoUrl) $(PB_RepoName)", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Checkout commit on host machine", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "git", - "arguments": "checkout $(SourceVersion)", - "workingFolder": "$(PB_RepoName)", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Create host machine tools sandbox", - "timeoutInMinutes": 0, - "task": { - "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "SourceFolder": "pkg", - "Contents": "**", - "TargetFolder": "$(DockerHost_Sandbox)", - "CleanTargetFolder": "false", - "OverWrite": "false", - "flattenFolders": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Initialize tools for host machine", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "$(DockerHost_Sandbox)/init-tools.sh", - "args": "", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Initialize Docker", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "$(DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", - "args": "$(PB_DockerImageName)", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Run build in Docker container", - "timeoutInMinutes": 0, - "task": { - "id": "6c731c3c-3c68-459a-a5c9-bde6e6595b5b", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "scriptPath": "$(PB_RepoName)/scripts/docker-as-current-user.sh", - "args": "run --name $(PB_DockerContainerName) --rm --privileged -v $(System.DefaultWorkingDirectory)/$(PB_RepoName):$(PB_GitDirectory) -w $(PB_GitDirectory) -e HOME -e ROOTFS_DIR -e PUBLISH_TO_AZURE_BLOB -e CONNECTION_STRING -e GITHUB_PASSWORD $(PB_DockerImageName) ./build.sh $(CommonArguments) $(BuildArguments) $(PB_PortableBuild) --env-vars \"DISABLE_CROSSGEN=1,TARGETPLATFORM=$(PB_Architecture),TARGETRID=$(TargetRid),CROSS=1\"", - "disableAutoCwd": "false", - "cwd": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Cleanup Docker", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "perl", - "arguments": "$(DockerHost_ToolsDirectory)/scripts/docker/cleanup-docker.sh", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Copy Publish Artifact: Build Logs", - "timeoutInMinutes": 0, - "task": { - "id": "1d341bb0-2106-458c-8422-d00bcea6512a", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "CopyRoot": "", - "Contents": "**/*.log", - "ArtifactName": "Build Logs", - "ArtifactType": "Container", - "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": true, - "displayName": "Cleanup VSTS Agent", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "$(DockerHost_ToolsDirectory)/msbuild.sh", - "arguments": "cleanupagent.proj /p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", - "workingFolder": "$(DockerHost_ToolsDirectory)/scripts/vstsagent/", - "failOnStandardError": "false" - } - } - ], - "options": [ - { - "enabled": false, - "definition": { - "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" - }, - "inputs": { - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "7c555368-ca64-4199-add6-9ebaf0b0137d" - }, - "inputs": { - "multipliers": "[]", - "parallel": "false", - "continueOnError": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "a9db38f9-9fdc-478c-b0f9-464221e58316" - }, - "inputs": { - "workItemType": "4777", - "assignToRequestor": "true", - "additionalFields": "{}" - } - }, - { - "enabled": false, - "definition": { - "id": "57578776-4c22-4526-aeb0-86b6da17ee9c" - }, - "inputs": { - "additionalFields": "{}" - } - } - ], - "variables": { - "BuildConfiguration": { - "value": "Release", - "allowOverride": true - }, - "CommonArguments": { - "value": "--skip-prereqs --configuration $(BuildConfiguration)", - "allowOverride": true - }, - "BuildArguments": { - "value": "--targets Default", - "allowOverride": true - }, - "PublishArguments": { - "value": "--targets FinalizeBuild", - "allowOverride": true - }, - "CONNECTION_STRING": { - "value": "PassedViaPipeBuild" - }, - "PUBLISH_TO_AZURE_BLOB": { - "value": "true", - "allowOverride": true - }, - "REPO_ID": { - "value": "562fbfe0b2d7d0e0a43780c4" - }, - "REPO_USER": { - "value": "dotnet" - }, - "REPO_PASS": { - "value": "PassedViaPipeBuild" - }, - "REPO_SERVER": { - "value": "azure-apt-cat.cloudapp.net" - }, - "GITHUB_PASSWORD": { - "value": "PassedViaPipeBuild" - }, - "PB_RepoName": { - "value": "core-setup" - }, - "PB_GitDirectory": { - "value": "/opt/code/core-setup" - }, - "PB_DockerContainerName": { - "value": "core-setup-cross-$(Build.BuildId)" - }, - "PB_DockerRepository": { - "value": "microsoft/dotnet-buildtools-prereqs" - }, - "PB_DockerTag": { - "value": "ubuntu1404_cross_prereqs_v2", - "allowOverride": true - }, - "PB_DockerImageName": { - "value": "$(PB_DockerRepository):$(PB_DockerTag)" - }, - "PB_Architecture": { - "value": "arm" - }, - "PB_PortableBuild": { - "value": "", - "allowOverride": true - }, - "ROOTFS_DIR": { - "value": "/crossrootfs/$(PB_Architecture)", - "allowOverride": true - }, - "TargetRid": { - "value": "ubuntu.14.04-arm", - "allowOverride": true - }, - "PB_RepoUrl": { - "value": "https://github.com/dotnet/core-setup.git", - "allowOverride": true - }, - "SourceVersion": { - "value": "", - "allowOverride": true - }, - "DockerHost_Sandbox": { - "value": "$(Build.StagingDirectory)/HostSandbox" - }, - "DockerHost_ToolsDirectory": { - "value": "$(DockerHost_Sandbox)/Tools" - }, - "PB_CleanAgent": { - "value": "true" - } - }, - "demands": [ - "Agent.OS -equals linux" - ], - "retentionRules": [ - { - "branches": [ - "+refs/heads/*" - ], - "artifacts": [], - "artifactTypesToDelete": [ - "FilePath", - "SymbolStore" - ], - "daysToKeep": 10, - "minimumToKeep": 1, - "deleteBuildRecord": true, - "deleteTestResults": true - } - ], - "buildNumberFormat": "$(Date:yyyMMdd)$(Rev:.r)", - "jobAuthorizationScope": "projectCollection", - "jobTimeoutInMinutes": 90, - "badgeEnabled": true, - "repository": { - "properties": { - "connectedServiceId": "f4c31735-42d2-4c3a-bc47-7ac06fd0dccc", - "apiUrl": "https://api.github.com/repos/dotnet/core-setup", - "branchesUrl": "https://api.github.com/repos/dotnet/core-setup/branches", - "cloneUrl": "https://github.com/dotnet/core-setup.git", - "refsUrl": "https://api.github.com/repos/dotnet/core-setup/git/refs", - "gitLfsSupport": "false", - "skipSyncSource": "false", - "fetchDepth": "0", - "cleanOptions": "0" - }, - "id": "https://github.com/dotnet/core-setup.git", - "type": "GitHub", - "name": "dotnet/core-setup", - "url": "https://github.com/dotnet/core-setup.git", - "defaultBranch": "master", - "clean": "true", - "checkoutSubmodules": false - }, - "quality": "definition", - "queue": { - "pool": { - "id": 39, - "name": "DotNet-Build" - }, - "id": 36, - "name": "DotNet-Build" - }, - "path": "\\", - "type": "build", - "id": 5272, - "name": "Core-Setup-CrossBuild", - "project": { - "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "name": "DevDiv", - "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", - "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", - "state": "wellFormed", - "revision": 418097620 - } -} \ No newline at end of file From 4b6f787f7ea0107621a4e2342027b6fe71302615 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Mon, 8 May 2017 10:59:33 -0700 Subject: [PATCH 339/625] Change OSX postinstall script permissions --- src/pkg/packaging/osx/hostfxr/scripts/postinstall | 0 src/pkg/packaging/osx/sharedframework/scripts/postinstall | 0 src/pkg/packaging/osx/sharedhost/scripts/postinstall | 0 3 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 src/pkg/packaging/osx/hostfxr/scripts/postinstall mode change 100644 => 100755 src/pkg/packaging/osx/sharedframework/scripts/postinstall mode change 100644 => 100755 src/pkg/packaging/osx/sharedhost/scripts/postinstall diff --git a/src/pkg/packaging/osx/hostfxr/scripts/postinstall b/src/pkg/packaging/osx/hostfxr/scripts/postinstall old mode 100644 new mode 100755 diff --git a/src/pkg/packaging/osx/sharedframework/scripts/postinstall b/src/pkg/packaging/osx/sharedframework/scripts/postinstall old mode 100644 new mode 100755 diff --git a/src/pkg/packaging/osx/sharedhost/scripts/postinstall b/src/pkg/packaging/osx/sharedhost/scripts/postinstall old mode 100644 new mode 100755 From 4ce758ffa5521cbcb1d2a961ddae09403cccc036 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 8 May 2017 13:42:24 -0500 Subject: [PATCH 340/625] Fix DependencyModel and PlatformAbstractions to not depend on NETStandard.Library. Also refactor their .csproj to have common properties. --- src/managed/CommonManaged.props | 29 +++++++++++++++++++ ...crosoft.DotNet.PlatformAbstractions.csproj | 12 +------- ...icrosoft.Extensions.DependencyModel.csproj | 13 +-------- 3 files changed, 31 insertions(+), 23 deletions(-) create mode 100644 src/managed/CommonManaged.props diff --git a/src/managed/CommonManaged.props b/src/managed/CommonManaged.props new file mode 100644 index 00000000..4361fd16 --- /dev/null +++ b/src/managed/CommonManaged.props @@ -0,0 +1,29 @@ + + + + + + + $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)../..'))/ + 2.0.0 + true + true + + + + $(RepoRoot)tools-local/setuptools/Key.snk + true + true + + + + git + git://github.com/dotnet/core-setup + + + + + + + + \ No newline at end of file diff --git a/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj b/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj index 2d640160..28426043 100644 --- a/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj +++ b/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj @@ -1,22 +1,12 @@  + Abstractions for making code that uses file system and environment testable. - 2.0.0 net45;netstandard1.3 - true true - ../../../tools-local/setuptools/Key.snk - true - true - git - git://github.com/dotnet/core-setup - - - - diff --git a/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj b/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj index 900c8120..e77ce0b9 100644 --- a/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj +++ b/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj @@ -1,16 +1,9 @@  + Abstractions for reading `.deps` files. - 2.0.0 net451;netstandard1.3;netstandard1.6 - true - ../../../tools-local/setuptools/Key.snk - true - true - git - git://github.com/dotnet/core-setup - $(PackageTargetFallback);portable-net45+wp80+win8+wpa81+dnxcore50 @@ -18,10 +11,6 @@ - - - - From 718ddb0695f5930cac72fb1a81702dcd8cb5444e Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 8 May 2017 14:33:14 -0500 Subject: [PATCH 341/625] Fix DependencyModel's dependency on PlatformAbstractions to use a pre-release version. Work around https://github.com/NuGet/Home/issues/4337 --- build.proj | 2 +- dir.props | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/build.proj b/build.proj index 53309f28..646de904 100644 --- a/build.proj +++ b/build.proj @@ -55,7 +55,7 @@ - + diff --git a/dir.props b/dir.props index 5a9b46ed..c717be69 100644 --- a/dir.props +++ b/dir.props @@ -123,7 +123,10 @@ - + + + /p:VersionSuffix=$(VersionSuffix) +
From 8a703493ad920ba931c61b99d4f88e2e8856cb13 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Mon, 8 May 2017 14:22:49 -0700 Subject: [PATCH 342/625] Address feedback --- buildpipeline/Core-Setup-Publish.json | 10 +++++----- buildpipeline/Core-Setup-Signing-Windows-BT.json | 2 +- buildpipeline/Core-Setup-Windows-BT.json | 2 +- buildpipeline/pipeline.json | 1 - publish/dir.targets | 1 + publish/publish.proj | 8 ++++---- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/buildpipeline/Core-Setup-Publish.json b/buildpipeline/Core-Setup-Publish.json index abdfbdd4..98286541 100644 --- a/buildpipeline/Core-Setup-Publish.json +++ b/buildpipeline/Core-Setup-Publish.json @@ -97,8 +97,8 @@ "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "x86", + "msbuildVersion": "Latest", + "msbuildArchitecture": "x64", "msbuildLocation": "" } }, @@ -117,15 +117,15 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:PublishFinalOutput /p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ContainerName=$(STORAGE_CONTAINER) /p:GitHubUser=$(GITHUB_USER) /p:GitHubEmail=$(GITHUB_EMAIL) /p:GitHubAuthToken=$(GITHUB_AUTH_TOKEN) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(PB_Branch)", + "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ContainerName=$(STORAGE_CONTAINER) /p:GitHubUser=$(GITHUB_USER) /p:GitHubEmail=$(GITHUB_EMAIL) /p:GitHubAuthToken=$(GITHUB_AUTH_TOKEN) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(PB_Branch) /p:Finalize=true /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", "createLogFile": "false", "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "x86", + "msbuildVersion": "Latest", + "msbuildArchitecture": "x64", "msbuildLocation": "" } }, diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index 13872df7..ce44b54f 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -441,7 +441,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index d83921ed..23a97672 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -89,7 +89,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration)", + "msbuildArguments": "/p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index b850358e..58d56a1b 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -194,7 +194,6 @@ "Name": "Core-Setup-Publish", "Parameters": { "PB_TargetArchitecture": "x64", - "PB_PublishLocation": "Bin\\publishpackages", }, "ReportingParameters": { "OperatingSystem": "Windows", diff --git a/publish/dir.targets b/publish/dir.targets index b35d665a..0d3ae1c6 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -65,6 +65,7 @@ Exclude="@(_FoundBlobNames)" /> diff --git a/publish/publish.proj b/publish/publish.proj index 09d7fd24..485fa0fb 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -7,13 +7,13 @@ + DependsOnTargets="PublishToAzure;PublishDebFilesToDebianRepo;PublishFinalOutput" /> - @@ -22,6 +22,7 @@ + Condition="'@(DebInstallerFile)' != '' AND '$(Finalize)' != 'true'"> @@ -79,7 +80,6 @@ FinalizeContainer="$(Channel)/Binaries/$(SharedFrameworkNugetVersion)" ForcePublish="true" Condition="'@(_MissingBlobNames)' == ''" /> - Date: Fri, 5 May 2017 16:06:21 -0700 Subject: [PATCH 343/625] only use lookup directories for pupulating PROBE_PATHS --- src/corehost/cli/args.h | 8 ++++++++ src/corehost/cli/deps_resolver.cpp | 9 ++++++--- src/corehost/cli/deps_resolver.h | 2 +- src/corehost/cli/hostpolicy.cpp | 2 +- 4 files changed, 16 insertions(+), 5 deletions(-) diff --git a/src/corehost/cli/args.h b/src/corehost/cli/args.h index d2a41cc1..6a994375 100644 --- a/src/corehost/cli/args.h +++ b/src/corehost/cli/args.h @@ -42,6 +42,14 @@ struct probe_config_t { } + bool is_lookup() const + { + return (probe_deps_json == nullptr) && + !only_runtime_assets && + !only_serviceable_assets && + !probe_publish_dir; + } + static probe_config_t svc_ni(const pal::string_t& dir) { return probe_config_t(dir, nullptr, true, true, false); diff --git a/src/corehost/cli/deps_resolver.cpp b/src/corehost/cli/deps_resolver.cpp index a1acb4e8..ed15f232 100644 --- a/src/corehost/cli/deps_resolver.cpp +++ b/src/corehost/cli/deps_resolver.cpp @@ -164,13 +164,16 @@ void deps_resolver_t::setup_shared_store_probes( } } -pal::string_t deps_resolver_t::get_probe_directories() +pal::string_t deps_resolver_t::get_lookup_probe_directories() { pal::string_t directories; for (const auto& pc : m_probes) { - directories.append(pc.probe_dir); - directories.push_back(PATH_SEPARATOR); + if (pc.is_lookup()) + { + directories.append(pc.probe_dir); + directories.push_back(PATH_SEPARATOR); + } } return directories; diff --git a/src/corehost/cli/deps_resolver.h b/src/corehost/cli/deps_resolver.h index c0e8b034..433596d8 100644 --- a/src/corehost/cli/deps_resolver.h +++ b/src/corehost/cli/deps_resolver.h @@ -80,7 +80,7 @@ public: const hostpolicy_init_t& init, const arguments_t& args); - pal::string_t get_probe_directories(); + pal::string_t get_lookup_probe_directories(); void setup_probe_config( const hostpolicy_init_t& init, diff --git a/src/corehost/cli/hostpolicy.cpp b/src/corehost/cli/hostpolicy.cpp index a63e3dfc..1045ac14 100644 --- a/src/corehost/cli/hostpolicy.cpp +++ b/src/corehost/cli/hostpolicy.cpp @@ -103,7 +103,7 @@ int run(const arguments_t& args) pal::pal_clrstring(resolver.get_fx_deps_file(), &fx_deps); pal::pal_clrstring(resolver.get_deps_file() + _X(";") + resolver.get_fx_deps_file(), &deps); - pal::pal_clrstring(resolver.get_probe_directories(), &probe_directories); + pal::pal_clrstring(resolver.get_lookup_probe_directories(), &probe_directories); std::vector property_values = { // TRUSTED_PLATFORM_ASSEMBLIES From 725b8843e83f4f6fecbe41fc8ee4f72ee16258e9 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Mon, 8 May 2017 17:08:01 -0700 Subject: [PATCH 344/625] Move debian publish to end Add clean up vbcs script to publish --- buildpipeline/Core-Setup-Publish.json | 4 ++-- publish/publish.proj | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/buildpipeline/Core-Setup-Publish.json b/buildpipeline/Core-Setup-Publish.json index 98286541..1f6ae320 100644 --- a/buildpipeline/Core-Setup-Publish.json +++ b/buildpipeline/Core-Setup-Publish.json @@ -16,7 +16,7 @@ "scriptName": "", "arguments": "-path $(PB_SourcesDirectory)", "workingFolder": "", - "inlineScript": "param($path)\n\nif (Test-Path $path){\n # this will print out an error each time a file can't be deleted.\n Remove-Item -Recurse -Force $path\n }", + "inlineScript": "param($path)\n\nif (Test-Path $path){\n # this will print out an error each time a file can't be deleted.\n Remove-Item -Recurse -Force $path\n }\n\nif (Test-Path $path){\n # in case vbcs is still alive\n $p = Get-Process -Name \"VBCS\"\n Stop-Process -InputObject $p\n }", "failOnStandardError": "true" } }, @@ -254,7 +254,7 @@ "value": "$(Build.SourcesDirectory)\\core-setup" }, "PB_VsoRepoUrl": { - "value": "--branch addPublish https://github.com/karajas/core-setup.git" + "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" }, "PB_AzureAccountName": { "value": "dotnetcli" diff --git a/publish/publish.proj b/publish/publish.proj index 485fa0fb..da72f27c 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -7,11 +7,11 @@ + DependsOnTargets="PublishToAzure;PublishFinalOutput" /> + DependsOnTargets="FinalizeBuildInAzure;PublishDebFilesToDebianRepo;PublishCoreHostPackagesToFeed;UpdatePublishedVersions" /> @@ -52,7 +52,7 @@ + Condition="'@(DebInstallerFile)' != ''"> From 6186962c2546713d521dcee2afeb481fa589ecd0 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Wed, 26 Apr 2017 20:17:52 -0700 Subject: [PATCH 345/625] Adds long path support in the host Add asserts for Normalized paths --- src/corehost/cli/coreclr.cpp | 2 +- src/corehost/cli/dll/CMakeLists.txt | 4 +- src/corehost/cli/exe/exe.cmake | 4 +- src/corehost/cli/fxr/CMakeLists.txt | 4 +- src/corehost/cli/fxr/hostfxr.cpp | 2 +- src/corehost/common/longfile.h | 26 +++++ src/corehost/common/longfile.windows.cpp | 126 +++++++++++++++++++++++ src/corehost/common/pal.h | 2 +- src/corehost/common/pal.unix.cpp | 28 ++++- src/corehost/common/pal.windows.cpp | 125 +++++++++++++++++++--- src/corehost/corehost.cpp | 2 +- 11 files changed, 297 insertions(+), 28 deletions(-) create mode 100644 src/corehost/common/longfile.h create mode 100644 src/corehost/common/longfile.windows.cpp diff --git a/src/corehost/cli/coreclr.cpp b/src/corehost/cli/coreclr.cpp index f7f9434d..21f99b65 100644 --- a/src/corehost/cli/coreclr.cpp +++ b/src/corehost/cli/coreclr.cpp @@ -44,7 +44,7 @@ bool coreclr::bind(const pal::string_t& libcoreclr_path) pal::string_t coreclr_dll_path(libcoreclr_path); append_path(&coreclr_dll_path, LIBCORECLR_NAME); - if (!pal::load_library(coreclr_dll_path.c_str(), &g_coreclr)) + if (!pal::load_library(&coreclr_dll_path, &g_coreclr)) { return false; } diff --git a/src/corehost/cli/dll/CMakeLists.txt b/src/corehost/cli/dll/CMakeLists.txt index 6a12f6f7..81d0ec6b 100644 --- a/src/corehost/cli/dll/CMakeLists.txt +++ b/src/corehost/cli/dll/CMakeLists.txt @@ -45,7 +45,9 @@ set(SOURCES if(WIN32) - list(APPEND SOURCES ../../common/pal.windows.cpp) + list(APPEND SOURCES + ../../common/pal.windows.cpp + ../../common/longfile.windows.cpp) else() list(APPEND SOURCES ../../common/pal.unix.cpp) endif() diff --git a/src/corehost/cli/exe/exe.cmake b/src/corehost/cli/exe/exe.cmake index 16919644..0ab20c87 100644 --- a/src/corehost/cli/exe/exe.cmake +++ b/src/corehost/cli/exe/exe.cmake @@ -28,7 +28,9 @@ list(APPEND SOURCES ../../../common/utils.cpp) if(WIN32) - list(APPEND SOURCES ../../../common/pal.windows.cpp) + list(APPEND SOURCES + ../../../common/pal.windows.cpp + ../../../common/longfile.windows.cpp) else() list(APPEND SOURCES ../../../common/pal.unix.cpp) endif() diff --git a/src/corehost/cli/fxr/CMakeLists.txt b/src/corehost/cli/fxr/CMakeLists.txt index 9838576a..235bd4b7 100644 --- a/src/corehost/cli/fxr/CMakeLists.txt +++ b/src/corehost/cli/fxr/CMakeLists.txt @@ -42,7 +42,9 @@ set(SOURCES if(WIN32) - list(APPEND SOURCES ../../common/pal.windows.cpp) + list(APPEND SOURCES + ../../common/pal.windows.cpp + ../../common/longfile.windows.cpp) else() list(APPEND SOURCES ../../common/pal.unix.cpp) endif() diff --git a/src/corehost/cli/fxr/hostfxr.cpp b/src/corehost/cli/fxr/hostfxr.cpp index 8eb7c4d0..cad1760d 100644 --- a/src/corehost/cli/fxr/hostfxr.cpp +++ b/src/corehost/cli/fxr/hostfxr.cpp @@ -29,7 +29,7 @@ int load_host_library( } // Load library - if (!pal::load_library(host_path.c_str(), h_host)) + if (!pal::load_library(&host_path, h_host)) { trace::info(_X("Load library of %s failed"), host_path.c_str()); return StatusCode::CoreHostLibLoadFailure; diff --git a/src/corehost/common/longfile.h b/src/corehost/common/longfile.h new file mode 100644 index 00000000..800317a0 --- /dev/null +++ b/src/corehost/common/longfile.h @@ -0,0 +1,26 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +#ifndef _LONG_FILE_SUPPORT +#define _LONG_FILE_SUPPORT + +class LongFile +{ +public: + static const pal::string_t ExtendedPrefix; + static const pal::string_t DevicePathPrefix; + static const pal::string_t UNCPathPrefix; + static const pal::string_t UNCExtendedPathPrefix; + static const pal::char_t VolumeSeparatorChar; + static const pal::char_t DirectorySeparatorChar; + static const pal::char_t AltDirectorySeparatorChar; +public: + static bool IsExtended(const pal::string_t& path); + static bool IsUNCExtended(const pal::string_t& path); + static bool ContainsDirectorySeparator(const pal::string_t & path); + static bool IsDirectorySeparator(const pal::char_t c); + static bool IsPathNotFullyQualified(const pal::string_t& path); + static bool IsDevice(const pal::string_t& path); + static bool ShouldNormalize(const pal::string_t& path); +}; +#endif //_LONG_FILE_SUPPORT diff --git a/src/corehost/common/longfile.windows.cpp b/src/corehost/common/longfile.windows.cpp new file mode 100644 index 00000000..7e51d726 --- /dev/null +++ b/src/corehost/common/longfile.windows.cpp @@ -0,0 +1,126 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +//The logic in this file was ported from https://github.com/dotnet/coreclr/blob/54891e0650e69f08832f75a40dc102efc6115d38/src/utilcode/longfilepathwrappers.cpp +//Please reflect any change here into the above file too! +#include "pal.h" +#include "trace.h" +#include "utils.h" +#include "longfile.h" + +const pal::char_t LongFile::DirectorySeparatorChar = _X('\\'); +const pal::char_t LongFile::AltDirectorySeparatorChar = _X('/'); +const pal::char_t LongFile::VolumeSeparatorChar = _X(':'); +const pal::string_t LongFile::ExtendedPrefix = _X("\\\\?\\"); +const pal::string_t LongFile::DevicePathPrefix = _X("\\\\.\\"); +const pal::string_t LongFile::UNCExtendedPathPrefix = _X("\\\\?\\UNC\\"); +const pal::string_t LongFile::UNCPathPrefix = _X("\\\\"); + +bool ShouldNormalizeWorker(const pal::string_t& path) +{ + if (path.empty() || LongFile::IsDevice(path) || LongFile::IsExtended(path) || LongFile::IsUNCExtended(path)) + return false; + + if (!LongFile::IsPathNotFullyQualified(path) && path.size() < MAX_PATH) + return false; + + return true; +} + +//For longpath names on windows, if the paths are normalized they are always prefixed with +//extended syntax, Windows does not do any more normalizations on this string and uses it as is +//So we should ensure that there are NO adjacent DirectorySeparatorChar +bool AssertRepeatingDirSeparator(const pal::string_t& path) +{ + if (path.empty()) + return true; + + pal::string_t path_to_check = path; + if (LongFile::IsDevice(path)) + { + path_to_check.erase(0, LongFile::DevicePathPrefix.length()); + } + else if (LongFile::IsExtended(path)) + { + path_to_check.erase(0, LongFile::ExtendedPrefix.length()); + } + else if (LongFile::IsUNCExtended(path)) + { + path_to_check.erase(0, LongFile::UNCExtendedPathPrefix.length()); + } + else if (path_to_check.compare(0, LongFile::UNCPathPrefix.length(), LongFile::UNCPathPrefix) == 0) + { + path_to_check.erase(0, LongFile::UNCPathPrefix.length()); + } + + pal::string_t dirSeparator; + dirSeparator.push_back(LongFile::DirectorySeparatorChar); + dirSeparator.push_back(LongFile::DirectorySeparatorChar); + + assert(path_to_check.find(dirSeparator) == pal::string_t::npos); + + pal::string_t altDirSeparator; + altDirSeparator.push_back(LongFile::AltDirectorySeparatorChar); + altDirSeparator.push_back(LongFile::AltDirectorySeparatorChar); + + assert(path_to_check.find(altDirSeparator) == pal::string_t::npos); + + return true; +} +bool LongFile::ShouldNormalize(const pal::string_t& path) +{ + bool retval = ShouldNormalizeWorker(path); + assert(retval || AssertRepeatingDirSeparator(path)); + return retval; +} + +bool LongFile::IsExtended(const pal::string_t& path) +{ + return path.compare(0, ExtendedPrefix.length(), ExtendedPrefix) == 0; +} + +bool LongFile::IsUNCExtended(const pal::string_t& path) +{ + return path.compare(0, UNCExtendedPathPrefix.length(), UNCExtendedPathPrefix) == 0; +} + +bool LongFile::IsDevice(const pal::string_t& path) +{ + return path.compare(0, DevicePathPrefix.length(), DevicePathPrefix) == 0; +} + +// Relative here means it could be relative to current directory on the relevant drive +// NOTE: Relative segments ( \..\) are not considered relative +// Returns true if the path specified is relative to the current drive or working directory. +// Returns false if the path is fixed to a specific drive or UNC path. This method does no +// validation of the path (URIs will be returned as relative as a result). +// Handles paths that use the alternate directory separator. It is a frequent mistake to +// assume that rooted paths (Path.IsPathRooted) are not relative. This isn't the case. + +bool LongFile::IsPathNotFullyQualified(const pal::string_t& path) +{ + if (path.length() < 2) + { + return true; // It isn't fixed, it must be relative. There is no way to specify a fixed path with one character (or less). + } + + if (IsDirectorySeparator(path[0])) + { + return !IsDirectorySeparator(path[1]); // There is no valid way to specify a relative path with two initial slashes + } + + return !((path.length() >= 3) //The only way to specify a fixed path that doesn't begin with two slashes is the drive, colon, slash format- "i.e. C:\" + && (path[1] == VolumeSeparatorChar) + && IsDirectorySeparator(path[2])); +} + +bool LongFile::ContainsDirectorySeparator(const pal::string_t & path) +{ + return path.find(DirectorySeparatorChar) != pal::string_t::npos || + path.find(AltDirectorySeparatorChar) != pal::string_t::npos; +} + +bool LongFile::IsDirectorySeparator(const pal::char_t c) +{ + return c == DirectorySeparatorChar || c == AltDirectorySeparatorChar; +} diff --git a/src/corehost/common/pal.h b/src/corehost/common/pal.h index 4edbc4fe..13f6f61a 100644 --- a/src/corehost/common/pal.h +++ b/src/corehost/common/pal.h @@ -217,7 +217,7 @@ namespace pal int xtoi(const char_t* input); - bool load_library(const char_t* path, dll_t* dll); + bool load_library(const string_t* path, dll_t* dll); proc_t get_symbol(dll_t library, const char* name); void unload_library(dll_t library); } diff --git a/src/corehost/common/pal.unix.cpp b/src/corehost/common/pal.unix.cpp index 6c3af3f5..2ae8aa01 100644 --- a/src/corehost/common/pal.unix.cpp +++ b/src/corehost/common/pal.unix.cpp @@ -51,7 +51,7 @@ bool pal::touch_file(const pal::string_t& path) bool pal::getcwd(pal::string_t* recv) { recv->clear(); - pal::char_t* buf = ::getcwd(nullptr, PATH_MAX + 1); + pal::char_t* buf = ::getcwd(nullptr, 0); if (buf == nullptr) { if (errno == ENOENT) @@ -66,9 +66,9 @@ bool pal::getcwd(pal::string_t* recv) return true; } -bool pal::load_library(const char_t* path, dll_t* dll) +bool pal::load_library(const string_t* path, dll_t* dll) { - *dll = dlopen(path, RTLD_LAZY); + *dll = dlopen(path->c_str(), RTLD_LAZY); if (*dll == nullptr) { trace::error(_X("Failed to load %s, error: %s"), path, dlerror()); @@ -442,12 +442,32 @@ bool pal::get_own_executable_path(pal::string_t* recv) mib[3] = -1; char buf[PATH_MAX]; size_t cb = sizeof(buf); - if (sysctl(mib, 4, buf, &cb, NULL, 0) == 0) + int error_code = 0; + error_code = sysctl(mib, 4, buf, &cb, NULL, 0); + if (error_code == 0) { recv->assign(buf); return true; } + // ENOMEM + if (error_code == ENOMEM) + { + size_t len = sysctl(mib, 4, NULL, NULL, NULL, 0); + std::unique_ptr buffer = new (std::nothrow) char[len]; + + if (buffer == NULL) + { + return false; + } + + error_code = sysctl(mib, 4, buffer, &len, NULL, 0); + if (error_code == 0) + { + recv->assign(buffer); + return true; + } + } return false; } #else diff --git a/src/corehost/common/pal.windows.cpp b/src/corehost/common/pal.windows.cpp index 984aa7f5..4fc45965 100644 --- a/src/corehost/common/pal.windows.cpp +++ b/src/corehost/common/pal.windows.cpp @@ -4,12 +4,34 @@ #include "pal.h" #include "trace.h" #include "utils.h" +#include "longfile.h" #include #include #include #include +bool GetModuleFileNameWrapper(HMODULE hModule, pal::string_t* recv) +{ + pal::string_t path; + DWORD dwModuleFileName = MAX_PATH / 2; + + do + { + path.resize(dwModuleFileName * 2); + dwModuleFileName = GetModuleFileNameW(hModule, (LPWSTR)path.data(), path.size()); + } while (dwModuleFileName == path.size()); + + if (dwModuleFileName != 0) + { + *recv = path; + return true; + } + + return false; + +} + pal::string_t pal::to_lower(const pal::string_t& in) { pal::string_t ret = in; @@ -62,12 +84,27 @@ bool pal::getcwd(pal::string_t* recv) return false; } -bool pal::load_library(const char_t* path, dll_t* dll) +bool pal::load_library(const string_t* in_path, dll_t* dll) { + string_t path = *in_path; + // LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR: // In portable apps, coreclr would come from another directory than the host, // so make sure coreclr dependencies can be resolved from coreclr.dll load dir. - *dll = ::LoadLibraryExW(path, NULL, LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR | LOAD_LIBRARY_SEARCH_DEFAULT_DIRS); + + if (LongFile::IsPathNotFullyQualified(path)) + { + if (!pal::realpath(&path)) + { + trace::error(_X("Failed to load the dll from [%s], HRESULT: 0x%X"), path, HRESULT_FROM_WIN32(GetLastError())); + return false; + } + } + + //Adding the assert to ensure relative paths which are not just filenames are not used for LoadLibrary Calls + assert(!LongFile::IsPathNotFullyQualified(path) || !LongFile::ContainsDirectorySeparator(path)); + + *dll = ::LoadLibraryExW(path.c_str(), NULL, LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR | LOAD_LIBRARY_SEARCH_DEFAULT_DIRS); if (*dll == nullptr) { trace::error(_X("Failed to load the dll from [%s], HRESULT: 0x%X"), path, HRESULT_FROM_WIN32(GetLastError())); @@ -76,7 +113,7 @@ bool pal::load_library(const char_t* path, dll_t* dll) // Pin the module HMODULE dummy_module; - if (!::GetModuleHandleExW(GET_MODULE_HANDLE_EX_FLAG_PIN, path, &dummy_module)) + if (!::GetModuleHandleExW(GET_MODULE_HANDLE_EX_FLAG_PIN, path.c_str(), &dummy_module)) { trace::error(_X("Failed to pin library [%s] in [%s]"), path, _STRINGIFY(__FUNCTION__)); return false; @@ -84,8 +121,8 @@ bool pal::load_library(const char_t* path, dll_t* dll) if (trace::is_enabled()) { - pal::char_t buf[PATH_MAX]; - ::GetModuleFileNameW(*dll, buf, PATH_MAX); + string_t buf; + GetModuleFileNameWrapper(*dll, &buf); trace::info(_X("Loaded library from %s"), buf); } @@ -293,13 +330,7 @@ int pal::xtoi(const char_t* input) bool pal::get_own_executable_path(string_t* recv) { - char_t program_path[MAX_PATH]; - DWORD dwModuleFileName = ::GetModuleFileNameW(NULL, program_path, MAX_PATH); - if (dwModuleFileName == 0 || dwModuleFileName >= MAX_PATH) { - return false; - } - recv->assign(program_path); - return true; + return GetModuleFileNameWrapper(NULL, recv); } static bool wchar_convert_helper(DWORD code_page, const char* cstr, int len, pal::string_t* out) @@ -347,14 +378,53 @@ bool pal::clr_palstring(const char* cstr, pal::string_t* out) bool pal::realpath(string_t* path) { + + if (!LongFile::ShouldNormalize(*path)) + { + return true; + } + char_t buf[MAX_PATH]; - auto res = ::GetFullPathNameW(path->c_str(), MAX_PATH, buf, nullptr); - if (res == 0 || res > MAX_PATH) + auto size = ::GetFullPathNameW(path->c_str(), MAX_PATH, buf, nullptr); + + if (size == 0) { trace::error(_X("Error resolving full path [%s]"), path->c_str()); return false; } - path->assign(buf); + + if (size < MAX_PATH) + { + path->assign(buf); + return true; + } + + string_t str; + str.resize(size + LongFile::UNCExtendedPathPrefix.length(), 0); + + size = ::GetFullPathNameW(path->c_str() , size, (LPWSTR)str.data() , nullptr); + assert(size <= str.size()); + + if (size == 0) + { + trace::error(_X("Error resolving full path [%s]"), path->c_str()); + return false; + } + + const string_t* prefix = &LongFile::ExtendedPrefix; + //Check if the resolved path is a UNC. By default we assume relative path to resolve to disk + if (str.compare(0, LongFile::UNCPathPrefix.length(), LongFile::UNCPathPrefix) == 0) + { + prefix = &LongFile::UNCExtendedPathPrefix; + str.erase(0, LongFile::UNCPathPrefix.length()); + size = size - LongFile::UNCPathPrefix.length(); + } + + str.insert(0, *prefix); + str.resize(size + prefix->length()); + str.shrink_to_fit(); + *path = str; + return true; } @@ -365,11 +435,22 @@ bool pal::file_exists(const string_t& path) return false; } + auto pathstring = path.c_str(); + string_t normalized_path; + if (LongFile::ShouldNormalize(path)) + { + normalized_path = path; + if (!pal::realpath(&normalized_path)) + { + return false; + } + pathstring = normalized_path.c_str(); + } // We will attempt to fetch attributes for the file or folder in question that are // returned only if they exist. WIN32_FILE_ATTRIBUTE_DATA data; - if (GetFileAttributesExW(path.c_str(), GetFileExInfoStandard, &data) != 0) { + if (GetFileAttributesExW(pathstring, GetFileExInfoStandard, &data) != 0) { return true; } @@ -381,11 +462,21 @@ void pal::readdir(const string_t& path, const string_t& pattern, std::vector& files = *list; + string_t normalized_path(path); - string_t search_string(path); + if (LongFile::ShouldNormalize(normalized_path)) + { + if (!pal::realpath(&normalized_path)) + { + return; + } + } + + string_t search_string(normalized_path); append_path(&search_string, pattern.c_str()); WIN32_FIND_DATAW data = { 0 }; + auto handle = ::FindFirstFileExW(search_string.c_str(), FindExInfoStandard, &data, FindExSearchNameMatch, NULL, 0); if (handle == INVALID_HANDLE_VALUE) { diff --git a/src/corehost/corehost.cpp b/src/corehost/corehost.cpp index 114ebcee..7e056e3a 100644 --- a/src/corehost/corehost.cpp +++ b/src/corehost/corehost.cpp @@ -183,7 +183,7 @@ int run(const int argc, const pal::char_t* argv[]) return StatusCode::CoreHostLibMissingFailure; } - if (!pal::load_library(fxr_path.c_str(), &fxr)) + if (!pal::load_library(&fxr_path, &fxr)) { trace::error(_X("The library %s was found, but loading it from %s failed"), LIBFXR_NAME, fxr_path.c_str()); trace::error(_X(" - Installing .NET Core prerequisites might help resolve this problem.")); From 3b8111f53a59e846ddcba363c3c5d0c0acfb7a2a Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Fri, 5 May 2017 20:58:10 -0700 Subject: [PATCH 346/625] removing extra DIR_SEPARATOR for normalized paths --- src/corehost/cli/args.cpp | 8 ++++++-- src/corehost/cli/deps_resolver.cpp | 8 +++++++- src/corehost/cli/fxr/fx_muxer.cpp | 10 ++++++++-- 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/src/corehost/cli/args.cpp b/src/corehost/cli/args.cpp index 681a2af3..5109e693 100644 --- a/src/corehost/cli/args.cpp +++ b/src/corehost/cli/args.cpp @@ -100,7 +100,7 @@ bool parse_arguments( { // coreconsole mode. Find the managed app in the same directory pal::string_t managed_app(own_dir); - managed_app.push_back(DIR_SEPARATOR); + managed_app.append(get_executable(own_name)); managed_app.append(_X(".dll")); args.managed_application = managed_app; @@ -132,7 +132,11 @@ bool parse_arguments( args.deps_path.reserve(app_base.length() + 1 + app_name.length() + 5); args.deps_path.append(app_base); - args.deps_path.push_back(DIR_SEPARATOR); + + if (!app_base.empty() && app_base.back() != DIR_SEPARATOR) + { + args.deps_path.push_back(DIR_SEPARATOR); + } args.deps_path.append(app_name, 0, app_name.find_last_of(_X("."))); args.deps_path.append(_X(".deps.json")); } diff --git a/src/corehost/cli/deps_resolver.cpp b/src/corehost/cli/deps_resolver.cpp index a1acb4e8..13a5ceee 100644 --- a/src/corehost/cli/deps_resolver.cpp +++ b/src/corehost/cli/deps_resolver.cpp @@ -126,7 +126,13 @@ void deps_resolver_t::get_dir_assemblies( } // Add entry for this asset - pal::string_t file_path = dir + DIR_SEPARATOR + file; + pal::string_t file_path = dir; + if (!file_path.empty() && file_path.back() != DIR_SEPARATOR) + { + file_path.push_back(DIR_SEPARATOR); + } + file_path.append(file); + trace::verbose(_X("Adding %s to %s assembly set from %s"), file_name.c_str(), dir_name.c_str(), file_path.c_str()); dir_assemblies->emplace(file_name, file_path); } diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index 0df45f16..b14b878b 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -171,7 +171,7 @@ pal::string_t get_deps_from_app_binary(const pal::string_t& app) // First append directory. pal::string_t deps_file; deps_file.assign(get_directory(app)); - deps_file.push_back(DIR_SEPARATOR); + // Then the app name and the file extension pal::string_t app_name = get_filename(app); @@ -222,8 +222,14 @@ pal::string_t get_deps_file( { if (config.get_portable()) { + pal::string_t deps_file = fx_dir; + + if (!deps_file.empty() && deps_file.back() != DIR_SEPARATOR) + { + deps_file.push_back(DIR_SEPARATOR); + } // Portable app's hostpolicy is resolved from FX deps - return fx_dir + DIR_SEPARATOR + config.get_fx_name() + _X(".deps.json"); + return deps_file + config.get_fx_name() + _X(".deps.json"); } else { From ab6172e2b08b31695771d6a04282877491fb3ef4 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Mon, 8 May 2017 18:15:19 -0700 Subject: [PATCH 347/625] Change PB_Branch to master in definitions --- buildpipeline/Core-Setup-Linux-BT.json | 2 +- buildpipeline/Core-Setup-OSX-BT.json | 2 +- buildpipeline/Core-Setup-Signing-Windows-BT.json | 2 +- buildpipeline/Core-Setup-Windows-BT.json | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 9129525b..6c1b6b1a 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -351,7 +351,7 @@ "value": "$(Build.SourcesDirectory)/core-setup" }, "PB_Branch": { - "value": "buildtools" + "value": "master" }, "PB_DockerHost_Sandbox": { "value": "$(Build.StagingDirectory)/HostSandbox" diff --git a/buildpipeline/Core-Setup-OSX-BT.json b/buildpipeline/Core-Setup-OSX-BT.json index e252d577..e5521940 100644 --- a/buildpipeline/Core-Setup-OSX-BT.json +++ b/buildpipeline/Core-Setup-OSX-BT.json @@ -214,7 +214,7 @@ "value": "$(Build.SourcesDirectory)/core-setup" }, "PB_Branch": { - "value": "buildtools" + "value": "master" }, "PB_AzureAccountName": { "value": "sourcebuild" diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index ce44b54f..889c02f3 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -630,7 +630,7 @@ "isSecret": true }, "PB_Branch": { - "value": "buildtools" + "value": "master" }, "SourceVersion": { "value": "HEAD" diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 23a97672..5f7e08d0 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -205,7 +205,7 @@ "value": "$(Build.SourcesDirectory)\\core-setup" }, "PB_Branch": { - "value": "buildtools" + "value": "master" }, "PB_AzureAccountName": { "value": "sourcebuild" From 37015a3264130edbbece36bf92ba63b885f1dd38 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Mon, 8 May 2017 18:18:33 -0700 Subject: [PATCH 348/625] Maintaining consistency of store locations for userprofile --- src/corehost/cli/args.cpp | 3 ++- src/corehost/cli/deps_resolver.cpp | 2 -- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/corehost/cli/args.cpp b/src/corehost/cli/args.cpp index 681a2af3..39b24421 100644 --- a/src/corehost/cli/args.cpp +++ b/src/corehost/cli/args.cpp @@ -22,7 +22,7 @@ arguments_t::arguments_t() : * Setup the shared store directories. * * o %DOTNET_SHARED_STORE% -- multiple delimited paths - * o $HOME/.dotnet/{x86|x64}/tfm or %USERPROFILE%\.dotnet\{x86|x64}\ + * o $HOME/.dotnet/{x86|x64}/store/arch/tfm or %USERPROFILE%\.dotnet\{x86|x64}\store\\ * o dotnet.exe relative shared store\\ * o Global location * Windows: C:\Program Files (x86) or @@ -43,6 +43,7 @@ void setup_shared_store_paths(const hostpolicy_init_t& init, const pal::string_t pal::string_t local_shared_store; if (get_local_shared_store_dir(&local_shared_store)) { + append_path(&local_shared_store, get_arch()); append_path(&local_shared_store, init.tfm.c_str()); args->local_shared_store = local_shared_store; } diff --git a/src/corehost/cli/deps_resolver.cpp b/src/corehost/cli/deps_resolver.cpp index a1acb4e8..09e89309 100644 --- a/src/corehost/cli/deps_resolver.cpp +++ b/src/corehost/cli/deps_resolver.cpp @@ -148,7 +148,6 @@ void deps_resolver_t::setup_shared_store_probes( if (pal::directory_exists(args.local_shared_store)) { - // Shared Store probe: $HOME/.dotnet/store or %USERPROFILE%\.dotnet\store m_probes.push_back(probe_config_t::lookup(args.local_shared_store)); } @@ -159,7 +158,6 @@ void deps_resolver_t::setup_shared_store_probes( if (args.global_shared_store != args.dotnet_shared_store && pal::directory_exists(args.global_shared_store)) { - // Shared Store probe: /usr/share/dotnet/store or C:\Program Files (x86)\dotnet\store m_probes.push_back(probe_config_t::lookup(args.global_shared_store)); } } From b92ddfcd8540c43e3e0f105cc105adb0769ddb89 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Mon, 8 May 2017 18:37:59 -0700 Subject: [PATCH 349/625] Escape publish logging paths --- buildpipeline/Core-Setup-Publish.json | 2 +- buildpipeline/Core-Setup-Signing-Windows-BT.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/buildpipeline/Core-Setup-Publish.json b/buildpipeline/Core-Setup-Publish.json index 1f6ae320..742c5b9d 100644 --- a/buildpipeline/Core-Setup-Publish.json +++ b/buildpipeline/Core-Setup-Publish.json @@ -117,7 +117,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ContainerName=$(STORAGE_CONTAINER) /p:GitHubUser=$(GITHUB_USER) /p:GitHubEmail=$(GITHUB_EMAIL) /p:GitHubAuthToken=$(GITHUB_AUTH_TOKEN) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(PB_Branch) /p:Finalize=true /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\publish.log", + "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ContainerName=$(STORAGE_CONTAINER) /p:GitHubUser=$(GITHUB_USER) /p:GitHubEmail=$(GITHUB_EMAIL) /p:GitHubAuthToken=$(GITHUB_AUTH_TOKEN) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(PB_Branch) /p:Finalize=true /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index 889c02f3..fe1f1b52 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -441,7 +441,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\publish.log", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", From 4e048275f02ea523eb3cf10006e98e77d283fd06 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 8 May 2017 21:45:03 -0500 Subject: [PATCH 350/625] Fix PlatformManifest.txt file to contain the full assets from all platforms. --- buildpipeline/Core-Setup-Signing-Windows-BT.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index fe1f1b52..e20b5d72 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -198,7 +198,7 @@ "solution": "$(PB_SourcesDirectory)\\src\\pkg\\dir.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/p:IncludeAllRuntimePackagesInPlatformManifest=false $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packages.log", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packages.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -252,7 +252,7 @@ "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packaging.log", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packaging.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", From 39df24a93269976c6bfcf710bbadf807e39e4b0c Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Tue, 9 May 2017 01:03:50 -0700 Subject: [PATCH 351/625] Pass in portable arm rids for publish --- buildpipeline/pipeline.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 58d56a1b..3c0a2db9 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -126,7 +126,8 @@ "Parameters": { "PB_AdditionalBuildArguments": "/p:PortableBuild=true /p:SkipTests=true", "PB_TargetArchitecture": "arm", - "PB_PortableBuild": "true" + "PB_PortableBuild": "true", + "PB_DistroRid": "win-arm" }, "ReportingParameters": { "SubType": "PortableBuild", @@ -140,7 +141,8 @@ "Parameters": { "PB_AdditionalBuildArguments": "/p:PortableBuild=true /p:SkipTests=true /p:NativeToolSetDir=C:\\tools\\clr", "PB_TargetArchitecture": "arm64", - "PB_PortableBuild": "true" + "PB_PortableBuild": "true", + "PB_DistroRid": "win-arm64" }, "ReportingParameters": { "SubType": "PortableBuild", From 0034e96e197c38358c21db5f1e4c3642f64a0467 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Wed, 3 May 2017 16:45:27 -0500 Subject: [PATCH 352/625] Move shared framework publish to MSBuild and off project.json --- .gitignore | 4 - build.proj | 6 + dir.props | 5 +- src/dir.props | 1 - .../framework/framework.csproj | 7 ++ .../framework/project.json.template | 15 --- src/sharedFramework/sharedFramework.proj | 71 ++++------- .../independent/DepsProcessor/Program.cs | 115 ------------------ .../DepsProcessor/RuntimeGraphGenerator.xproj | 19 --- .../independent/DepsProcessor/project.json | 24 ---- .../DepsProcessor/project.json.template | 28 ----- .../setuptools/independent/global.json | 3 - .../tasks/ProcessSharedFrameworkDeps.cs | 68 +++++++++++ .../RuntimeGraphManager.cs | 30 +++-- .../RuntimeReference.cs | 12 +- tools-local/tasks/project.json | 6 +- 16 files changed, 129 insertions(+), 285 deletions(-) create mode 100644 src/sharedFramework/framework/framework.csproj delete mode 100644 src/sharedFramework/framework/project.json.template delete mode 100644 tools-local/setuptools/independent/DepsProcessor/Program.cs delete mode 100644 tools-local/setuptools/independent/DepsProcessor/RuntimeGraphGenerator.xproj delete mode 100644 tools-local/setuptools/independent/DepsProcessor/project.json delete mode 100644 tools-local/setuptools/independent/DepsProcessor/project.json.template delete mode 100644 tools-local/setuptools/independent/global.json create mode 100644 tools-local/tasks/ProcessSharedFrameworkDeps.cs rename tools-local/{setuptools/independent/DepsProcessor => tasks}/RuntimeGraphManager.cs (60%) rename tools-local/{setuptools/independent/DepsProcessor => tasks}/RuntimeReference.cs (92%) diff --git a/.gitignore b/.gitignore index 7b8c5b73..a9f37f5a 100644 --- a/.gitignore +++ b/.gitignore @@ -272,7 +272,3 @@ config.ps1 # VS generated files launchSettings.json -# Generated project.json files (the project.json.template file is the authoritative copy) -setuptools/independent/DepsProcessor/project.json -build_projects/dotnet-host-build/project.json -build_projects/update-dependencies/project.json diff --git a/build.proj b/build.proj index 646de904..38911069 100644 --- a/build.proj +++ b/build.proj @@ -39,9 +39,15 @@ + + netstandard1.3 + net451 + + + %(AdditionalArgs) --disable-parallel
- - %(AdditionalArgs) --disable-parallel --infer-runtimes - @@ -273,7 +270,7 @@ $(IntermediateOutputRootPath)sharedFrameworkPublish\ $(IntermediateOutputRootPath)sharedFrameworkPublish.symbols\ - $(SharedFrameworkPublishDir)shared\$(SharedFrameworkName)\$(HostVersion) + $(SharedFrameworkPublishDir)shared\$(SharedFrameworkName)\$(SharedFrameworkNugetVersion) diff --git a/src/dir.props b/src/dir.props index f7adb537..c7a9edd5 100644 --- a/src/dir.props +++ b/src/dir.props @@ -4,7 +4,6 @@ $(CoreHostOutputDir)locked\ - $(IntermediateOutputRootPath)sharedFramework\framework $(IntermediateOutputRootPath)forPackaging diff --git a/src/sharedFramework/framework/framework.csproj b/src/sharedFramework/framework/framework.csproj new file mode 100644 index 00000000..52e6553d --- /dev/null +++ b/src/sharedFramework/framework/framework.csproj @@ -0,0 +1,7 @@ + + + + Exe + + + diff --git a/src/sharedFramework/framework/project.json.template b/src/sharedFramework/framework/project.json.template deleted file mode 100644 index 8965197d..00000000 --- a/src/sharedFramework/framework/project.json.template +++ /dev/null @@ -1,15 +0,0 @@ -{ - "version": "1.0.0-*", - "compilationOptions": { - "emitEntryPoint": true - }, - "dependencies": { - "Microsoft.NETCore.App": "$(NetCoreAppVersion)" - }, - "runtimes": { - "$(RID)": {} - }, - "frameworks": { - "$(TargetFramework)": {} - } -} diff --git a/src/sharedFramework/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj index 5c4a7de5..818c1f91 100644 --- a/src/sharedFramework/sharedFramework.proj +++ b/src/sharedFramework/sharedFramework.proj @@ -5,6 +5,7 @@ + @@ -18,19 +19,23 @@ + DependsOnTargets="RestoreLockedCoreHost"> - --fallbacksource $(PackagesOutDir) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" + $(MSBuildThisFileDirectory)framework + + --source $(PackagesOutDir) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" + /p:TargetFramework=$(Framework) /p:RuntimeIdentifier=$(TargetRid) /p:RuntimeFrameworkVersion=$(SharedFrameworkNugetVersion) - - @@ -97,12 +102,8 @@ - DepsProcessor - $(ProjectDir)tools-local/setuptools/independent/$(runtimeGraphGeneratorName) - $(IntermediateOutputRootPath)setuptools/independent/$(runtimeGraphGeneratorName) - win - osx - linux + $(SharedFrameworkSourceRoot)/obj/project.assets.json + $(SharedFrameworkNameAndVersionRoot)\$(SharedFrameworkName).deps.json @@ -110,24 +111,16 @@ - + + + + - - - @(TrimPkgsFromDeps ->'--remove %(Identity)', ' ') - - - - - - $(runtimeGraphGeneratorOutput)/$(runtimeGraphGeneratorName)$(ExeSuffix) - $(SharedFrameworkNameAndVersionRoot)\$(SharedFrameworkName).deps.json - - - - + + @@ -176,26 +169,4 @@ EnvironmentVariables="NUGET_PACKAGES=$(PackagesDir)" /> - - - - - - - - - $(MSBuildThisFileDirectory)framework\project.json.template - - - - - - - - - + \ No newline at end of file diff --git a/tools-local/setuptools/independent/DepsProcessor/Program.cs b/tools-local/setuptools/independent/DepsProcessor/Program.cs deleted file mode 100644 index 00a532e9..00000000 --- a/tools-local/setuptools/independent/DepsProcessor/Program.cs +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using System; -using System.Collections.Generic; -using System.CommandLine; -using System.IO; -using System.Linq; -using Microsoft.DotNet.Cli.Utils; -using Microsoft.DotNet.ProjectModel; -using Microsoft.DotNet.ProjectModel.Graph; -using Microsoft.Extensions.DependencyModel; -using NuGet.Frameworks; - -namespace DepsProcessor -{ - public class Program - { - public static int Main(string[] args) - { - DebugHelper.HandleDebugSwitch(ref args); - - string projectDirectory = null; - string depsFile = null; - IReadOnlyList runtimes = null; - IReadOnlyList runtimepackagesToBeRemoved = null; - try - { - ArgumentSyntax.Parse(args, syntax => - { - syntax.ApplicationName = "Runtime GraphGenerator"; - - syntax.HandleHelp = false; - syntax.HandleErrors = false; - - syntax.DefineOption("p|project", ref projectDirectory, "Project location"); - syntax.DefineOption("d|deps", ref depsFile, "Deps file path"); - syntax.DefineOptionList("r|remove", ref runtimepackagesToBeRemoved, "Runtime packages to be removed"); - - syntax.DefineParameterList("runtimes", ref runtimes, "Runtimes"); - }); - } - catch (ArgumentSyntaxException exception) - { - Console.Error.WriteLine(exception.Message); - return 1; - } - - if (runtimes == null || runtimes.Count == 0) - { - Reporter.Error.WriteLine("No runtimes specified"); - return 1; - } - if (!File.Exists(depsFile)) - { - Reporter.Error.WriteLine($"Deps file not found: {depsFile}"); - return 1; - } - if (!Directory.Exists(projectDirectory)) - { - Reporter.Error.WriteLine($"Project directory not found: {projectDirectory}"); - return 1; - } - - try - { - DependencyContext context; - using (var depsStream = File.OpenRead(depsFile)) - { - context = new DependencyContextJsonReader().Read(depsStream); - } - var framework = NuGetFramework.Parse(context.Target.Framework); - var projectContext = ProjectContext.Create(projectDirectory, framework); - - // Configuration is used only for P2P dependencies so were don't care - var exporter = projectContext.CreateExporter("Debug"); - var manager = new RuntimeGraphManager(); - var graph = manager.Collect(exporter.GetDependencies(LibraryType.Package)); - var expandedGraph = manager.Expand(graph, runtimes); - - var trimmedRuntimeLibraries = context.RuntimeLibraries; - - if (runtimepackagesToBeRemoved != null && runtimepackagesToBeRemoved.Count > 0) - { - trimmedRuntimeLibraries = RuntimeReference.RemoveReferences(context.RuntimeLibraries, runtimepackagesToBeRemoved); - } - - context = new DependencyContext( - context.Target, - context.CompilationOptions, - context.CompileLibraries, - trimmedRuntimeLibraries, - expandedGraph - ); - - using (var depsStream = File.Create(depsFile)) - { - new DependencyContextWriter().Write(context, depsStream); - } - - return 0; - } - catch (Exception ex) - { -#if DEBUG - Reporter.Error.WriteLine(ex.ToString()); -#else - Reporter.Error.WriteLine(ex.Message); -#endif - return 1; - } - } - - } -} diff --git a/tools-local/setuptools/independent/DepsProcessor/RuntimeGraphGenerator.xproj b/tools-local/setuptools/independent/DepsProcessor/RuntimeGraphGenerator.xproj deleted file mode 100644 index a7d4058d..00000000 --- a/tools-local/setuptools/independent/DepsProcessor/RuntimeGraphGenerator.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0.25029 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - efc4fe68-83eb-40e4-bfa8-61d0b4626f25 - RuntimeGraphGenerator - ..\..\..\..\Bin\obj\$(MSBuildProjectName) - ..\..\..\..\Bin - - - - 2.0 - - - \ No newline at end of file diff --git a/tools-local/setuptools/independent/DepsProcessor/project.json b/tools-local/setuptools/independent/DepsProcessor/project.json deleted file mode 100644 index 1deb6182..00000000 --- a/tools-local/setuptools/independent/DepsProcessor/project.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "version": "1.0.0-*", - "buildOptions": { - "emitEntryPoint": true - }, - "dependencies": { - "NuGet.RuntimeModel": "3.5.0-rc-1285", - "NuGet.Versioning": "3.5.0-rc-1285", - "System.CommandLine": "0.1.0-e170322-6", - "System.Runtime.Serialization.Json": "4.0.2", - "Microsoft.DotNet.ProjectModel": "1.0.0-rc2-002794", - "Microsoft.DotNet.Cli.Utils": "1.0.0-preview2-002794", - "NETStandard.Library": "1.6.1-preview1-24508-08", - "Microsoft.NETCore.Runtime.CoreCLR": "1.1.0-beta-24509-04" - }, - "frameworks": { - "netcoreapp1.0": { - "imports": [ - "dnxcore50", - "portable-net45+wp80+win8+wpa81+dnxcore50" - ] - } - } -} diff --git a/tools-local/setuptools/independent/DepsProcessor/project.json.template b/tools-local/setuptools/independent/DepsProcessor/project.json.template deleted file mode 100644 index 915d5004..00000000 --- a/tools-local/setuptools/independent/DepsProcessor/project.json.template +++ /dev/null @@ -1,28 +0,0 @@ -{ - "version": "1.0.0-*", - "buildOptions": { - "emitEntryPoint": true - }, - "dependencies": { - "NuGet.RuntimeModel": "3.5.0-rc-1285", - "NuGet.Versioning": "3.5.0-rc-1285", - "System.CommandLine": "0.1.0-e170322-6", - "System.Runtime.Serialization.Json": "4.0.2", - "Microsoft.DotNet.ProjectModel": "1.0.0-rc2-002794", - "Microsoft.DotNet.Cli.Utils": "1.0.0-preview2-002794", - "NETStandard.Library": "2.0.0-preview2-25303-01", - "Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25303-02" - }, - "frameworks": { - "netcoreapp1.0": { - "imports": [ - "netstandard1.5", - "dnxcore50", - "portable-net45+wp80+win8+wpa81+dnxcore50" - ] - } - }, - "runtimes": { - "{RID}": {} - } -} diff --git a/tools-local/setuptools/independent/global.json b/tools-local/setuptools/independent/global.json deleted file mode 100644 index 0db3279e..00000000 --- a/tools-local/setuptools/independent/global.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - -} diff --git a/tools-local/tasks/ProcessSharedFrameworkDeps.cs b/tools-local/tasks/ProcessSharedFrameworkDeps.cs new file mode 100644 index 00000000..5ffe5c7f --- /dev/null +++ b/tools-local/tasks/ProcessSharedFrameworkDeps.cs @@ -0,0 +1,68 @@ +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Microsoft.Extensions.DependencyModel; +using NuGet.Common; +using NuGet.ProjectModel; +using System.IO; +using System.Linq; + +namespace Microsoft.DotNet.Build.Tasks +{ + public class ProcessSharedFrameworkDeps : Task + { + [Required] + public string AssetsFilePath { get; set; } + + [Required] + public string DepsFilePath { get; set; } + + [Required] + public ITaskItem[] PackagesToRemove { get; set; } + + [Required] + public ITaskItem[] Runtimes { get; set; } + + public override bool Execute() + { + DependencyContext context; + using (var depsStream = File.OpenRead(DepsFilePath)) + { + context = new DependencyContextJsonReader().Read(depsStream); + } + LockFile lockFile = LockFileUtilities.GetLockFile(AssetsFilePath, NullLogger.Instance); + + var manager = new RuntimeGraphManager(); + var graph = manager.Collect(lockFile); + var expandedGraph = manager.Expand(graph, ToStringArray(Runtimes)); + + var trimmedRuntimeLibraries = context.RuntimeLibraries; + + if (PackagesToRemove != null && PackagesToRemove.Any()) + { + trimmedRuntimeLibraries = RuntimeReference.RemoveReferences(context.RuntimeLibraries, ToStringArray(PackagesToRemove)); + } + + context = new DependencyContext( + context.Target, + context.CompilationOptions, + context.CompileLibraries, + trimmedRuntimeLibraries, + expandedGraph + ); + + using (var depsStream = File.Create(DepsFilePath)) + { + new DependencyContextWriter().Write(context, depsStream); + } + + return true; + } + + private static string[] ToStringArray(ITaskItem[] items) + { + return items + .Select(i => i.ItemSpec) + .ToArray(); + } + } +} diff --git a/tools-local/setuptools/independent/DepsProcessor/RuntimeGraphManager.cs b/tools-local/tasks/RuntimeGraphManager.cs similarity index 60% rename from tools-local/setuptools/independent/DepsProcessor/RuntimeGraphManager.cs rename to tools-local/tasks/RuntimeGraphManager.cs index df46857d..8bc6b6a5 100644 --- a/tools-local/setuptools/independent/DepsProcessor/RuntimeGraphManager.cs +++ b/tools-local/tasks/RuntimeGraphManager.cs @@ -1,29 +1,35 @@ -using System.Collections.Generic; +using Microsoft.Extensions.DependencyModel; +using NuGet.Frameworks; +using NuGet.Packaging; +using NuGet.ProjectModel; +using NuGet.RuntimeModel; +using System; +using System.Collections.Generic; using System.IO; using System.Linq; -using Microsoft.DotNet.ProjectModel.Compilation; -using Microsoft.DotNet.ProjectModel.Graph; -using Microsoft.Extensions.DependencyModel; -using NuGet.RuntimeModel; -namespace Microsoft.DotNet.ProjectModel +namespace Microsoft.DotNet.Build.Tasks { public class RuntimeGraphManager { private const string RuntimeJsonFileName = "runtime.json"; - public NuGet.RuntimeModel.RuntimeGraph Collect(IEnumerable exports) + public RuntimeGraph Collect(LockFile lockFile) { + string userPackageFolder = lockFile.PackageFolders.FirstOrDefault()?.Path; + var fallBackFolders = lockFile.PackageFolders.Skip(1).Select(f => f.Path); + var packageResolver = new FallbackPackagePathResolver(userPackageFolder, fallBackFolders); + var graph = RuntimeGraph.Empty; - foreach (var export in exports) + foreach (var library in lockFile.Libraries) { - if (export.Library.Identity.Type == LibraryType.Package) + if (string.Equals(library.Type, "package", StringComparison.OrdinalIgnoreCase)) { - PackageDescription description = (PackageDescription) export.Library; - var runtimeJson = description.PackageLibrary.Files.FirstOrDefault(f => f == RuntimeJsonFileName); + var runtimeJson = library.Files.FirstOrDefault(f => f == RuntimeJsonFileName); if (runtimeJson != null) { - var runtimeJsonFullName = Path.Combine(export.Library.Path, runtimeJson); + var libraryPath = packageResolver.GetPackageDirectory(library.Name, library.Version); + var runtimeJsonFullName = Path.Combine(libraryPath, runtimeJson); graph = RuntimeGraph.Merge(graph, JsonRuntimeFormat.ReadRuntimeGraph(runtimeJsonFullName)); } } diff --git a/tools-local/setuptools/independent/DepsProcessor/RuntimeReference.cs b/tools-local/tasks/RuntimeReference.cs similarity index 92% rename from tools-local/setuptools/independent/DepsProcessor/RuntimeReference.cs rename to tools-local/tasks/RuntimeReference.cs index 87107056..7119e014 100644 --- a/tools-local/setuptools/independent/DepsProcessor/RuntimeReference.cs +++ b/tools-local/tasks/RuntimeReference.cs @@ -1,19 +1,16 @@ // Copyright (c) .NET Foundation and contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. +using Microsoft.Extensions.DependencyModel; using System; using System.Collections.Generic; using System.Linq; -using Microsoft.DotNet.ProjectModel; -using Microsoft.DotNet.ProjectModel.Graph; -using Microsoft.Extensions.DependencyModel; -using NuGet.Frameworks; -namespace DepsProcessor +namespace Microsoft.DotNet.Build.Tasks { public class RuntimeReference { - public static List RemoveReferences(IReadOnlyList runtimeLibraries, IReadOnlyList packages) + public static List RemoveReferences(IReadOnlyList runtimeLibraries, IEnumerable packages) { List result = new List(); @@ -61,6 +58,5 @@ namespace DepsProcessor } return result; } - } -} \ No newline at end of file +} diff --git a/tools-local/tasks/project.json b/tools-local/tasks/project.json index a6f81255..716262c1 100644 --- a/tools-local/tasks/project.json +++ b/tools-local/tasks/project.json @@ -1,7 +1,9 @@ { "dependencies": { "System.Reflection.Metadata": "1.3.0", - "Newtonsoft.Json": "9.0.1" + "Newtonsoft.Json": "9.0.1", + "NuGet.ProjectModel": "3.5.0", + "Microsoft.Extensions.DependencyModel": "1.1.1" }, "frameworks": { "netstandard1.5": { @@ -22,7 +24,7 @@ "portable-net45+win8+wpa81" ] }, - "net45": { + "net451": { "dependencies": { "Microsoft.TargetingPack.NETFramework.v4.5": "1.0.1" } From 893118db033ba8821b6bc1dbb698c68b95a64d38 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Wed, 3 May 2017 21:27:33 -0500 Subject: [PATCH 353/625] Fix shared framework restore on case-sensitive file systems by passing in all the necessary --source parameters. --- src/sharedFramework/sharedFramework.proj | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/sharedFramework/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj index 818c1f91..ed85f9ad 100644 --- a/src/sharedFramework/sharedFramework.proj +++ b/src/sharedFramework/sharedFramework.proj @@ -23,14 +23,12 @@ $(MSBuildThisFileDirectory)framework - - --source $(PackagesOutDir) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" /p:TargetFramework=$(Framework) /p:RuntimeIdentifier=$(TargetRid) /p:RuntimeFrameworkVersion=$(SharedFrameworkNugetVersion) - From 8720ffaa51191c7eb6e3020e5c1e62a0227353bb Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Tue, 9 May 2017 09:26:16 -0700 Subject: [PATCH 354/625] Add PortableBuild to PB_CommonMSBuildArgs --- buildpipeline/Core-Setup-Windows-BT.json | 12 ++++++++---- buildpipeline/pipeline.json | 10 ++++------ 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 5f7e08d0..fbdf1f6d 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -69,7 +69,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)\\build.cmd", - "arguments": "-- $(PB_BuildArguments)", + "arguments": "-- $(PB_CommonMSBuildArgs)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -89,7 +89,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken))", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -195,8 +195,12 @@ "BuildConfiguration": { "value": "Release" }, - "PB_BuildArguments": { - "value": "/p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) $(PB_AdditionalBuildArguments)" + "PB_CommonMSBuildArgs": { + "value": "/p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) $(PB_AdditionalBuildArguments)" + }, + "PB_PortableBuild": { + "value": "false", + "allowOverride": true }, "PB_CleanAgent": { "value": "true" diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 3c0a2db9..de5af714 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -124,10 +124,9 @@ { "Name": "Core-Setup-Windows-BT", "Parameters": { - "PB_AdditionalBuildArguments": "/p:PortableBuild=true /p:SkipTests=true", + "PB_AdditionalBuildArguments": "/p:SkipTests=true", "PB_TargetArchitecture": "arm", - "PB_PortableBuild": "true", - "PB_DistroRid": "win-arm" + "PB_PortableBuild": "true" }, "ReportingParameters": { "SubType": "PortableBuild", @@ -139,10 +138,9 @@ { "Name": "Core-Setup-Windows-BT", "Parameters": { - "PB_AdditionalBuildArguments": "/p:PortableBuild=true /p:SkipTests=true /p:NativeToolSetDir=C:\\tools\\clr", + "PB_AdditionalBuildArguments": "/p:SkipTests=true /p:NativeToolSetDir=C:\\tools\\clr", "PB_TargetArchitecture": "arm64", - "PB_PortableBuild": "true", - "PB_DistroRid": "win-arm64" + "PB_PortableBuild": "true" }, "ReportingParameters": { "SubType": "PortableBuild", From 433ee07e7b4be8798d1633610f5e38577bcaaf84 Mon Sep 17 00:00:00 2001 From: chcosta Date: Tue, 9 May 2017 10:18:40 -0700 Subject: [PATCH 355/625] /* DO NOT MERGE */ Enable arm / debian jenkins builds (#2305) * Enable arm / deb build in Jenkins * PR feedback * Add missing ')' * Fix casing --- netci.groovy | 50 ++++++++++++++++++++++++-------------------------- 1 file changed, 24 insertions(+), 26 deletions(-) diff --git a/netci.groovy b/netci.groovy index 3ce53737..29984b79 100644 --- a/netci.groovy +++ b/netci.groovy @@ -10,10 +10,7 @@ def project = GithubProject def branch = GithubBranchName def isPR = true -// Move these to the platform list when they are re-enabled -// [ 'Ubuntu:arm:Release', 'Ubuntu16.04:arm:Release', 'Windows_NT:arm:Debug', ] - -def platformList = ['Debian8.2:x64:Debug', 'PortableLinux:x64:Release', 'Ubuntu:x64:Release', 'Ubuntu16.04:x64:Release', 'Ubuntu16.10:x64:Release', 'OSX10.12:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Fedora24:x64:Debug', 'OpenSUSE42.1:x64:Debug'] +def platformList = ['Debian8.2:x64:Debug', 'PortableLinux:x64:Release', 'Ubuntu:x64:Release', 'Ubuntu16.04:x64:Release', 'Ubuntu16.10:x64:Release', 'Ubuntu:arm:Release', 'Ubuntu16.04:arm:Release', 'OSX10.12:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Windows_NT:arm:Debug', 'Fedora24:x64:Debug', 'OpenSUSE42.1:x64:Debug'] def static getBuildJobName(def configuration, def os, def architecture) { return configuration.toLowerCase() + '_' + os.toLowerCase() + '_' + architecture.toLowerCase() @@ -28,42 +25,43 @@ platformList.each { platform -> def buildCommand = ''; def osForGHTrigger = os def version = "latest-or-auto" + def dockerRepository = "microsoft/dotnet-buildtools-prereqs" + def dockerContainer = '' + def dockerWorkingDirectory = "/src/core-setup" + def dockerCommand = '' + def portableArgs = '' // Calculate build command if (os == 'Windows_NT') { buildCommand = ".\\build.cmd -ConfigurationGroup=${configuration} -TargetArchitecture=${architecture}" + if ((architecture == 'arm' || architecture == 'arm64')) { + buildCommand += " -PortableBuild=true -SkipTests=true" + } } -/* - else if ((os.startsWith("Ubuntu") || os.startsWith("Tizen")) && + else if ((os.startsWith("Ubuntu")) && (architecture == 'arm' || architecture == 'armel')) { - def linuxcodename = ''; if (os == 'Ubuntu') { - version = "arm-cross-latest" - linuxcodename = 'trusty' + dockerContainer = "ubuntu-14.04-cross-0cd4667-20172211042239" } else if (os == 'Ubuntu16.04') { - version = "latest-or-auto-docker" - linuxcodename = 'xenial' + dockerContainer = "ubuntu-16.04-cross-ef0ac75-20175511035548" } - - // Call the arm32_ci_script.sh script to perform the cross build by using docker - buildCommand = "./scripts/arm32_ci_script.sh --buildConfig=${configuration} --${architecture} --linuxCodeName=${linuxcodename} --verbose" + portableArgs = " -portable cross skiptests disablecrossgen" + dockerCommand = "docker run --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" + buildCommand = "${dockerCommand} ./build.sh ${configuration} ${architecture}${portableArgs}" } -*/ - else if (os == 'Ubuntu') { - buildCommand = "./build.sh --configuration ${configuration} --docker ubuntu.14.04" + else if (os == "Ubuntu") { + dockerContainer = "ubuntu-14.04-debpkg-e5cf912-20175003025046" + dockerCommand = "docker run --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" + buildCommand = "${dockerCommand} ./build.sh ${configuration} ${architecture}${portableArgs}" } else { // Jenkins non-Ubuntu CI machines don't have docker - buildCommand = "./build.sh ${configuration}" + buildCommand = "./build.sh ${configuration} -portable" - if (os == 'PortableLinux') { - - // Trigger a portable Linux build that runs on RHEL7.2 - buildCommand += " -portable" - osForGHTrigger = "PortableLinux" - os = "RHEL7.2" - } + // Trigger a portable Linux build that runs on RHEL7.2 + osForGHTrigger = "PortableLinux" + os = "RHEL7.2" } def newJob = job(Utilities.getFullJobName(project, jobName, isPR)) { @@ -83,7 +81,7 @@ platformList.each { platform -> Utilities.setMachineAffinity(newJob, os, version) Utilities.standardJobSetup(newJob, project, isPR, "*/${branch}") - if (!(os == 'Windows_NT' && architecture == 'arm')) { + if (!(architecture == 'arm')) { Utilities.addMSTestResults(newJob, '**/*-testResults.trx') } From 55100453e393d5fecf0f3bd5a52321e0544c7746 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Tue, 9 May 2017 10:31:46 -0700 Subject: [PATCH 356/625] Remove extra parenthesis from argument list in ARM build --- buildpipeline/Core-Setup-Windows-BT.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index fbdf1f6d..8c1b8db1 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -89,7 +89,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken))", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", From d1a2c4ae4882d70934833a07d50032fd8d0cd01b Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 9 May 2017 14:05:36 -0500 Subject: [PATCH 357/625] Respond to PR feedback. --- build.proj | 2 +- dir.props | 4 ++-- src/sharedFramework/sharedFramework.proj | 9 ++++----- .../project.json | 2 +- tools-local/tasks/ProcessSharedFrameworkDeps.cs | 15 ++++----------- tools-local/tasks/RuntimeGraphManager.cs | 15 ++++++--------- tools-local/tasks/RuntimeReference.cs | 2 +- tools-local/tasks/project.json | 2 +- 8 files changed, 20 insertions(+), 31 deletions(-) diff --git a/build.proj b/build.proj index 38911069..edc82c72 100644 --- a/build.proj +++ b/build.proj @@ -41,7 +41,7 @@ netstandard1.3 - net451 + net451 diff --git a/dir.props b/dir.props index 6ffeae90..1625bd5e 100644 --- a/dir.props +++ b/dir.props @@ -49,9 +49,9 @@ $(ToolRuntimePath) $(ProjectDir)Tools/ $(ToolRuntimePath) - $(ToolsDir)net46/ + $(ToolsDir)net46/ $(LocalToolRuntimePath) - $(LocalToolRuntimePath)net46/ + $(LocalToolRuntimePath)net46/ $(BuildToolsTaskDir) $(ToolsDir)dotnetcli/ $(ToolsDir)dotnetclisdk/ diff --git a/src/sharedFramework/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj index ed85f9ad..257d6d88 100644 --- a/src/sharedFramework/sharedFramework.proj +++ b/src/sharedFramework/sharedFramework.proj @@ -102,6 +102,9 @@ $(SharedFrameworkSourceRoot)/obj/project.assets.json $(SharedFrameworkNameAndVersionRoot)\$(SharedFrameworkName).deps.json + win + osx + linux @@ -109,16 +112,12 @@ - - - - + Runtime="$(RuntimeGraphGeneratorRuntime)" /> diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/project.json b/tools-local/Microsoft.DotNet.Build.Tasks.Local/project.json index e707e4b8..67fd805f 100644 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/project.json +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/project.json @@ -25,7 +25,7 @@ }, "net451": { "dependencies": { - "Microsoft.TargetingPack.NETFramework.v4.5": "1.0.1" + "Microsoft.TargetingPack.NETFramework.v4.5.1": "1.0.1" } } } diff --git a/tools-local/tasks/ProcessSharedFrameworkDeps.cs b/tools-local/tasks/ProcessSharedFrameworkDeps.cs index 5ffe5c7f..63db1936 100644 --- a/tools-local/tasks/ProcessSharedFrameworkDeps.cs +++ b/tools-local/tasks/ProcessSharedFrameworkDeps.cs @@ -17,10 +17,10 @@ namespace Microsoft.DotNet.Build.Tasks public string DepsFilePath { get; set; } [Required] - public ITaskItem[] PackagesToRemove { get; set; } + public string[] PackagesToRemove { get; set; } [Required] - public ITaskItem[] Runtimes { get; set; } + public string Runtime { get; set; } public override bool Execute() { @@ -33,13 +33,13 @@ namespace Microsoft.DotNet.Build.Tasks var manager = new RuntimeGraphManager(); var graph = manager.Collect(lockFile); - var expandedGraph = manager.Expand(graph, ToStringArray(Runtimes)); + var expandedGraph = manager.Expand(graph, Runtime); var trimmedRuntimeLibraries = context.RuntimeLibraries; if (PackagesToRemove != null && PackagesToRemove.Any()) { - trimmedRuntimeLibraries = RuntimeReference.RemoveReferences(context.RuntimeLibraries, ToStringArray(PackagesToRemove)); + trimmedRuntimeLibraries = RuntimeReference.RemoveReferences(context.RuntimeLibraries, PackagesToRemove); } context = new DependencyContext( @@ -57,12 +57,5 @@ namespace Microsoft.DotNet.Build.Tasks return true; } - - private static string[] ToStringArray(ITaskItem[] items) - { - return items - .Select(i => i.ItemSpec) - .ToArray(); - } } } diff --git a/tools-local/tasks/RuntimeGraphManager.cs b/tools-local/tasks/RuntimeGraphManager.cs index 8bc6b6a5..3cd1de52 100644 --- a/tools-local/tasks/RuntimeGraphManager.cs +++ b/tools-local/tasks/RuntimeGraphManager.cs @@ -10,7 +10,7 @@ using System.Linq; namespace Microsoft.DotNet.Build.Tasks { - public class RuntimeGraphManager + internal class RuntimeGraphManager { private const string RuntimeJsonFileName = "runtime.json"; @@ -37,16 +37,13 @@ namespace Microsoft.DotNet.Build.Tasks return graph; } - public IEnumerable Expand(RuntimeGraph runtimeGraph, IEnumerable runtimes) + public IEnumerable Expand(RuntimeGraph runtimeGraph, string runtime) { - foreach (var runtime in runtimes) + var importers = FindImporters(runtimeGraph, runtime); + foreach (var importer in importers) { - var importers = FindImporters(runtimeGraph, runtime); - foreach (var importer in importers) - { - // ExpandRuntime return runtime itself as first item so we are skiping it - yield return new RuntimeFallbacks(importer, runtimeGraph.ExpandRuntime(importer).Skip(1)); - } + // ExpandRuntime return runtime itself as first item so we are skiping it + yield return new RuntimeFallbacks(importer, runtimeGraph.ExpandRuntime(importer).Skip(1)); } } diff --git a/tools-local/tasks/RuntimeReference.cs b/tools-local/tasks/RuntimeReference.cs index 7119e014..a61d3cc6 100644 --- a/tools-local/tasks/RuntimeReference.cs +++ b/tools-local/tasks/RuntimeReference.cs @@ -8,7 +8,7 @@ using System.Linq; namespace Microsoft.DotNet.Build.Tasks { - public class RuntimeReference + internal class RuntimeReference { public static List RemoveReferences(IReadOnlyList runtimeLibraries, IEnumerable packages) { diff --git a/tools-local/tasks/project.json b/tools-local/tasks/project.json index 716262c1..6404cb85 100644 --- a/tools-local/tasks/project.json +++ b/tools-local/tasks/project.json @@ -26,7 +26,7 @@ }, "net451": { "dependencies": { - "Microsoft.TargetingPack.NETFramework.v4.5": "1.0.1" + "Microsoft.TargetingPack.NETFramework.v4.5.1": "1.0.1" } } } From 91fe73ce2ac47aa883458fddae7533ac8703d6c9 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Tue, 9 May 2017 11:57:22 -0700 Subject: [PATCH 358/625] Remove storage container name and use global parameters in core-setup-publish --- buildpipeline/Core-Setup-Publish.json | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/buildpipeline/Core-Setup-Publish.json b/buildpipeline/Core-Setup-Publish.json index 742c5b9d..fd083a2e 100644 --- a/buildpipeline/Core-Setup-Publish.json +++ b/buildpipeline/Core-Setup-Publish.json @@ -117,7 +117,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ContainerName=$(STORAGE_CONTAINER) /p:GitHubUser=$(GITHUB_USER) /p:GitHubEmail=$(GITHUB_EMAIL) /p:GitHubAuthToken=$(GITHUB_AUTH_TOKEN) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(PB_Branch) /p:Finalize=true /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", + "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:GitHubUser=$(PB_GitHubUser) /p:GitHubEmail=$(PB_GitHubEmail) /p:GitHubAuthToken=$(GITHUB_PASSWORD) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(PB_Branch) /p:Finalize=true /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -238,17 +238,16 @@ "allowOverride": true }, "NUGET_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core-dev-eng/api/v2/package " + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { - "value": null, - "isSecret": true + "value": "PassedViaPipeBuild" }, "PB_DistroRid": { "value": "win7-x64" }, "NUGET_SYMBOLS_FEED_URL": { - "value": "https://dotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" }, "PB_SourcesDirectory": { "value": "$(Build.SourcesDirectory)\\core-setup" @@ -286,12 +285,8 @@ "value": "x64", "allowOverride": true }, - "GITHUB_USER": { - "value": "dotnetbot" - }, - "GITHUB_AUTH_TOKEN": { - "value": null, - "isSecret": true + "PB_GitHubUser": { + "value": "dotnet-build-bot" }, "PB_VersionsRepoOwner": { "value": "dotnet" @@ -302,9 +297,8 @@ "PB_RepoName": { "value": "core-setup" }, - "GITHUB_EMAIL": { - "value": null, - "isSecret": true + "PB_GitHubEmail": { + "value": "dotnet-build-bot@microsoft.com" } }, "demands": [ From 86fafc1184d50b80efcbb6e2d1e65bc62c1633c0 Mon Sep 17 00:00:00 2001 From: chcosta Date: Tue, 9 May 2017 12:56:05 -0700 Subject: [PATCH 359/625] fix portablelinux in ci (#2324) --- netci.groovy | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/netci.groovy b/netci.groovy index 29984b79..464ab6b8 100644 --- a/netci.groovy +++ b/netci.groovy @@ -55,14 +55,18 @@ platformList.each { platform -> dockerCommand = "docker run --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" buildCommand = "${dockerCommand} ./build.sh ${configuration} ${architecture}${portableArgs}" } - else { + else if (os == "PortableLinux") { // Jenkins non-Ubuntu CI machines don't have docker - buildCommand = "./build.sh ${configuration} -portable" - + buildCommand = "./build.sh ${configuration} ${architecture} -portable" + // Trigger a portable Linux build that runs on RHEL7.2 osForGHTrigger = "PortableLinux" os = "RHEL7.2" } + else { + // Jenkins non-Ubuntu CI machines don't have docker + buildCommand = "./build.sh ${configuration} ${architecture}" + } def newJob = job(Utilities.getFullJobName(project, jobName, isPR)) { // Set the label. From b80b3acedb77a0bde7ddb1c3809c53f723528e3e Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Tue, 9 May 2017 13:48:59 -0700 Subject: [PATCH 360/625] Add PB_CleanAgent and TeamName and continueonerror for cleanup --- buildpipeline/Core-Setup-Publish.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/buildpipeline/Core-Setup-Publish.json b/buildpipeline/Core-Setup-Publish.json index fd083a2e..d6db420d 100644 --- a/buildpipeline/Core-Setup-Publish.json +++ b/buildpipeline/Core-Setup-Publish.json @@ -158,7 +158,7 @@ }, { "enabled": true, - "continueOnError": false, + "continueOnError": true, "alwaysRun": false, "displayName": "Perform Cleanup Tasks", "timeoutInMinutes": 0, @@ -299,6 +299,12 @@ }, "PB_GitHubEmail": { "value": "dotnet-build-bot@microsoft.com" + }, + "PB_CleanAgent": { + "value": "true" + }, + "TeamName": { + "value": "DotNetCore" } }, "demands": [ From d9caf9ab402c327e0093796ed9e1657e922af7fd Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Tue, 9 May 2017 16:20:15 -0700 Subject: [PATCH 361/625] Select repoid for publish to debian repo --- buildpipeline/Core-Setup-Linux-BT.json | 11 ++++++++++- publish/publish.proj | 24 ++++++++++++++++++++++-- 2 files changed, 32 insertions(+), 3 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 6c1b6b1a..fea4febc 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -177,7 +177,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux", + "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DistroRid) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) $(PB_DebianKeys)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -374,6 +374,15 @@ }, "PB_PortableBuild": { "value": "false" + }, + "PB_DebRepoUser": { + "value": "dotnet" + }, + "PB_DebRepoServer": { + "value": "azure-apt-cat.cloudapp.net" + }, + "PB_DebianKeys": { + "value": "/p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)" } }, "demands": [ diff --git a/publish/publish.proj b/publish/publish.proj index da72f27c..bcfa8e6b 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -7,11 +7,11 @@ + DependsOnTargets="PublishToAzure;PublishDebFilesToDebianRepo;PublishFinalOutput" /> + DependsOnTargets="FinalizeBuildInAzure;PublishCoreHostPackagesToFeed;UpdatePublishedVersions" /> @@ -53,6 +53,26 @@ + + + $(DebianId_ubuntu1404-x64) + + + $(DebianId_debian8-x64) + + + $(DebianId_ubuntu1604-x64) + + + $(DebianId_ubuntu1610-x64) + + + + $([System.String]::Copy($(DistroRid)).Replace('.', '')) + %(RepoIds.Key) + + From bf663a311a1a39e547e677692e279237f02c21f6 Mon Sep 17 00:00:00 2001 From: Tarek Mahmoud Sayed Date: Tue, 9 May 2017 16:51:55 -0700 Subject: [PATCH 362/625] Update the license to MIT for core-setup --- dir.props | 1 + src/pkg/projects/dir.targets | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/dir.props b/dir.props index 1625bd5e..68487e02 100644 --- a/dir.props +++ b/dir.props @@ -16,6 +16,7 @@ Preview 2 master master + https://github.com/dotnet/corefx/blob/master/LICENSE diff --git a/src/pkg/projects/dir.targets b/src/pkg/projects/dir.targets index 921733f4..f2ae3cd5 100644 --- a/src/pkg/projects/dir.targets +++ b/src/pkg/projects/dir.targets @@ -89,4 +89,12 @@ ItemName="Dependency" /> + + + + + https://github.com/dotnet/corefx/blob/master/LICENSE + + + \ No newline at end of file From af34ef3fe0e321f5dab48dde566cfaa849824189 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 9 May 2017 17:20:10 -0500 Subject: [PATCH 363/625] Fixing the build break by ensuring the build tools AssemblyResolver is enabled during ProcessSharedFrameworkDeps. --- src/sharedFramework/sharedFramework.proj | 3 ++- .../tasks/ProcessSharedFrameworkDeps.cs | 18 ++++++++++--- tools-local/tasks/core-setup.tasks.csproj | 1 + .../net45/ProcessSharedFrameworkDeps.net45.cs | 25 +++++++++++++++++++ 4 files changed, 43 insertions(+), 4 deletions(-) create mode 100644 tools-local/tasks/net45/ProcessSharedFrameworkDeps.net45.cs diff --git a/src/sharedFramework/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj index 257d6d88..f05e4e25 100644 --- a/src/sharedFramework/sharedFramework.proj +++ b/src/sharedFramework/sharedFramework.proj @@ -117,7 +117,8 @@ + Runtime="$(RuntimeGraphGeneratorRuntime)" + BuildToolsTaskDir="$(BuildToolsTaskDir)" /> diff --git a/tools-local/tasks/ProcessSharedFrameworkDeps.cs b/tools-local/tasks/ProcessSharedFrameworkDeps.cs index 63db1936..7b398112 100644 --- a/tools-local/tasks/ProcessSharedFrameworkDeps.cs +++ b/tools-local/tasks/ProcessSharedFrameworkDeps.cs @@ -8,7 +8,7 @@ using System.Linq; namespace Microsoft.DotNet.Build.Tasks { - public class ProcessSharedFrameworkDeps : Task + public partial class ProcessSharedFrameworkDeps : Task { [Required] public string AssetsFilePath { get; set; } @@ -22,7 +22,19 @@ namespace Microsoft.DotNet.Build.Tasks [Required] public string Runtime { get; set; } + [Required] + public string BuildToolsTaskDir { get; set; } + public override bool Execute() + { + EnsureInitialized(BuildToolsTaskDir); + + ExecuteCore(); + + return true; + } + + private void ExecuteCore() { DependencyContext context; using (var depsStream = File.OpenRead(DepsFilePath)) @@ -54,8 +66,8 @@ namespace Microsoft.DotNet.Build.Tasks { new DependencyContextWriter().Write(context, depsStream); } - - return true; } + + partial void EnsureInitialized(string buildToolsTaskDir); } } diff --git a/tools-local/tasks/core-setup.tasks.csproj b/tools-local/tasks/core-setup.tasks.csproj index 3c790f9c..c9b8d37e 100644 --- a/tools-local/tasks/core-setup.tasks.csproj +++ b/tools-local/tasks/core-setup.tasks.csproj @@ -25,6 +25,7 @@ + diff --git a/tools-local/tasks/net45/ProcessSharedFrameworkDeps.net45.cs b/tools-local/tasks/net45/ProcessSharedFrameworkDeps.net45.cs new file mode 100644 index 00000000..e9ab2093 --- /dev/null +++ b/tools-local/tasks/net45/ProcessSharedFrameworkDeps.net45.cs @@ -0,0 +1,25 @@ +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Microsoft.Extensions.DependencyModel; +using NuGet.Common; +using NuGet.ProjectModel; +using System; +using System.IO; +using System.Linq; +using System.Reflection; + +namespace Microsoft.DotNet.Build.Tasks +{ + public partial class ProcessSharedFrameworkDeps + { + partial void EnsureInitialized(string buildToolsTaskDir) + { + // ensure the build tools AssemblyResolver is enabled, so we get the correct assembly unification + // even if the build tools assembly hasn't been loaded yet. + string buildTasksPath = Path.Combine(buildToolsTaskDir, "Microsoft.DotNet.Build.Tasks.dll"); + Assembly buildTasksAssembly = Assembly.Load(AssemblyName.GetAssemblyName(buildTasksPath)); + Type assemblyResolver = buildTasksAssembly.GetType("Microsoft.DotNet.Build.Common.Desktop.AssemblyResolver"); + assemblyResolver.GetMethod("Enable").Invoke(null, new object[] { }); + } + } +} From 9bee305b70e09e1f82e845daeae0bbbb674396ca Mon Sep 17 00:00:00 2001 From: Rama krishnan Raghupathy Date: Tue, 9 May 2017 19:54:28 -0700 Subject: [PATCH 364/625] Give usage help when invoked via pre 2.0 muxer --- src/corehost/cli/fxr/fx_muxer.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index b14b878b..fc850328 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -1018,6 +1018,11 @@ int fx_muxer_t::execute(const int argc, const pal::char_t* argv[]) trace::verbose(_X("--- Executing in muxer mode...")); + if (argc <= 1) + { + return muxer_usage(!is_sdk_dir_present(own_dir)); + } + if (pal::strcasecmp(_X("exec"), argv[1]) == 0) { return parse_args_and_execute(own_dir, own_dll, 2, argc, argv, true, host_mode_t::muxer, &is_an_app); // arg offset 2 for dotnet, exec From 754164fa1bd54c57335819fe8467ec063c9c3b74 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Wed, 10 May 2017 06:28:52 -0700 Subject: [PATCH 365/625] Update CoreClr, CoreFx, Standard to preview2-25309-01, preview2-25310-01, preview2-25310-01, respectively --- dependencies.props | 10 +++++----- src/pkg/deps/project.json | 2 +- .../Microsoft.NETCore.App/src/project.json.template | 8 ++++---- .../src/project.json.template | 8 ++++---- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/dependencies.props b/dependencies.props index 3efa88f3..40129983 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,14 +9,14 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - e74aedf83ab127ce85c44b877eb4dc267c5b997f - e74aedf83ab127ce85c44b877eb4dc267c5b997f - e74aedf83ab127ce85c44b877eb4dc267c5b997f + a44d1158c8f2cf53d54cf35567f2ec59057b3093 + a44d1158c8f2cf53d54cf35567f2ec59057b3093 + a44d1158c8f2cf53d54cf35567f2ec59057b3093 - 2.0.0-preview2-25303-04 - 2.0.0-preview2-25303-02 + 2.0.0-preview2-25310-01 + 2.0.0-preview2-25309-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) diff --git a/src/pkg/deps/project.json b/src/pkg/deps/project.json index d66e5c64..6439d70c 100644 --- a/src/pkg/deps/project.json +++ b/src/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25303-04" + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25310-01" }, "frameworks": { "dnxcore50": { diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template b/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template index ece5c970..ea27d431 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template +++ b/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25303-04", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25303-02", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25310-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25309-01", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25303-04", - "NETStandard.Library": "2.0.0-preview2-25303-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25310-01", + "NETStandard.Library": "2.0.0-preview2-25310-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template index d54438ec..bbaee232 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template @@ -1,10 +1,10 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25303-04", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25303-02", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25303-04", - "NETStandard.Library": "2.0.0-preview2-25303-01", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25310-01", + "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25309-01", + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25310-01", + "NETStandard.Library": "2.0.0-preview2-25310-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From 6083ead8ed6c3cae92403423c8196ff924b4e818 Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Wed, 10 May 2017 11:29:48 -0700 Subject: [PATCH 366/625] Revert "Revert change to InitBaseDotnetCli" This reverts commit bd5f1ce852d98db0e8d34d9e7fa53387437f7f9f. --- src/test/dir.proj | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/test/dir.proj b/src/test/dir.proj index 0edc7a92..605dfaba 100644 --- a/src/test/dir.proj +++ b/src/test/dir.proj @@ -31,16 +31,18 @@ DependsOnTargets="DetermineTestOutputDirectory"> $(TestsOutputDir)Tools - powershell -NoProfile -ExecutionPolicy unrestricted -Command "$(MSBuildThisFileDirectory)bootstrap/bootstrap.ps1" -ToolsLocalPath $(TestToolsLocalPath) -Architecture $(TargetArchitecture) - $(MSBuildThisFileDirectory)bootstrap/bootstrap.sh --toolsLocalPath $(TestToolsLocalPath) $(TestToolsLocalPath)/dotnetcli/dotnet.exe $(TestToolsLocalPath)/dotnetcli/dotnet - + + + + + From 2f6340cbd9ac016c49f0880582c4d9405604dc85 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Sat, 6 May 2017 15:47:39 -0700 Subject: [PATCH 367/625] Refactor versioning --- dir.props | 56 +++++++++++++------ src/corehost/Windows/gen-buildsys-win.bat | 15 +++-- src/corehost/build.cmd | 9 ++- src/corehost/build.proj | 8 ++- src/pkg/dir.props | 5 +- src/pkg/packaging/deb/package.props | 2 +- src/pkg/packaging/deb/package.targets | 4 +- src/pkg/packaging/dir.proj | 2 +- src/pkg/packaging/dir.props | 6 +- src/pkg/packaging/osx/package.props | 6 +- src/pkg/packaging/osx/package.targets | 6 +- src/pkg/packaging/windows/package.targets | 6 +- .../Microsoft.NETCore.App.pkgproj | 4 +- ...Microsoft.NETCore.DotNetHostPolicy.pkgproj | 2 +- ...crosoft.NETCore.DotNetHostResolver.pkgproj | 2 +- src/sharedFramework/sharedFramework.proj | 16 ++++-- .../Utils/Crossgen.cs | 16 ++---- 17 files changed, 96 insertions(+), 69 deletions(-) diff --git a/dir.props b/dir.props index 68487e02..d3ad0883 100644 --- a/dir.props +++ b/dir.props @@ -9,8 +9,7 @@ 2 0 0 - false - false + false preview2 $(PreReleaseLabel) Preview 2 @@ -69,27 +68,52 @@ by setting the non-official build minor version to 9 --> 9 - false $(PreReleaseLabel)- $(VersionSuffix)$(BuildNumberMajor)-$(BuildNumberMinor) - - $(MajorVersion).$(MinorVersion).$(PatchVersion)-$(VersionSuffix) + -$(VersionSuffix) + $(MajorVersion).$(MinorVersion).$(PatchVersion)$(ProductVersionSuffix) $(MajorVersion).$(MinorVersion).$(PatchVersion) - $(ProductionVersion) - $(ProductVersion) + $(ProductVersion) $(SharedFrameworkNugetVersion) - $(SharedFrameworkNugetVersion) - $(SharedFrameworkNugetVersion) - $(SharedFrameworkNugetVersion) - $(SharedFrameworkNugetVersion) - $(SharedFrameworkNugetVersion) + + + + + false + $(ProductVersion) + 2.0.0 + + false + $(ProductVersion) + 2.0.0 - $(ProductVersion) - $(ProductVersion) - $(ProductVersion) - $(ProductVersion) + + false + $(ProductVersion) + 2.0.0 + + + false + $(ProductVersion) + 2.0.0 diff --git a/src/corehost/Windows/gen-buildsys-win.bat b/src/corehost/Windows/gen-buildsys-win.bat index 637e98ac..d5fdd98d 100644 --- a/src/corehost/Windows/gen-buildsys-win.bat +++ b/src/corehost/Windows/gen-buildsys-win.bat @@ -5,7 +5,7 @@ rem This file invokes cmake and generates the build system for windows. set argC=0 for %%x in (%*) do Set /A argC+=1 -if NOT %argC%==5 GOTO :USAGE +if NOT %argC%==8 GOTO :USAGE if %1=="/?" GOTO :USAGE setlocal @@ -19,8 +19,11 @@ if /i "%3" == "x64" (set cm_BaseRid=win7-x64&&set cm_Arch=AMD64&&set __VSStr if /i "%3" == "arm" (set cm_BaseRid=win8-arm&&set cm_Arch=ARM&&set __VSString=%__VSString% ARM) if /i "%3" == "arm64" (set cm_BaseRid=win10-arm64&&set cm_Arch=ARM64&&set __VSString=%__VSString% Win64) -set __HostVersion=%4 -set __LatestCommit=%5 +set __LatestCommit=%4 +set __HostVersion=%5 +set __AppHostVersion=%6 +set __HostResolverVersion=%7 +set __HostPolicyVersion=%8 if defined CMakePath goto DoGen @@ -30,8 +33,8 @@ for /f "delims=" %%a in ('powershell -NoProfile -ExecutionPolicy ByPass "& .\Win popd :DoGen -echo "%CMakePath%" %__sourceDir% %__SDKVersion% "-DCLI_CMAKE_RUNTIME_ID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_HOST_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_APPHOST_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_HOST_FXR_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_HOST_POLICY_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_PKG_RID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_COMMIT_HASH:STRING=%__LatestCommit%" "-DCLI_CMAKE_PLATFORM_ARCH_%cm_Arch%=1" "-DCMAKE_INSTALL_PREFIX=%__CMakeBinDir%" "-DCLI_CMAKE_RESOURCE_DIR:STRING=%__ResourcesDir%" -G "Visual Studio %__VSString%" -"%CMakePath%" %__sourceDir% %__SDKVersion% "-DCLI_CMAKE_RUNTIME_ID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_HOST_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_APPHOST_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_HOST_FXR_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_HOST_POLICY_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_PKG_RID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_COMMIT_HASH:STRING=%__LatestCommit%" "-DCLI_CMAKE_PLATFORM_ARCH_%cm_Arch%=1" "-DCMAKE_INSTALL_PREFIX=%__CMakeBinDir%" "-DCLI_CMAKE_RESOURCE_DIR:STRING=%__ResourcesDir%" -G "Visual Studio %__VSString%" +echo "%CMakePath%" %__sourceDir% %__SDKVersion% "-DCLI_CMAKE_RUNTIME_ID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_HOST_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_APPHOST_VER:STRING=%__AppHostVersion%" "-DCLI_CMAKE_HOST_FXR_VER:STRING=%__HostResolverVersion%" "-DCLI_CMAKE_HOST_POLICY_VER:STRING=%__HostPolicyVersion%" "-DCLI_CMAKE_PKG_RID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_COMMIT_HASH:STRING=%__LatestCommit%" "-DCLI_CMAKE_PLATFORM_ARCH_%cm_Arch%=1" "-DCMAKE_INSTALL_PREFIX=%__CMakeBinDir%" "-DCLI_CMAKE_RESOURCE_DIR:STRING=%__ResourcesDir%" -G "Visual Studio %__VSString%" +"%CMakePath%" %__sourceDir% %__SDKVersion% "-DCLI_CMAKE_RUNTIME_ID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_HOST_VER:STRING=%__HostVersion%" "-DCLI_CMAKE_APPHOST_VER:STRING=%__AppHostVersion%" "-DCLI_CMAKE_HOST_FXR_VER:STRING=%__HostResolverVersion%" "-DCLI_CMAKE_HOST_POLICY_VER:STRING=%__HostPolicyVersion%" "-DCLI_CMAKE_PKG_RID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_COMMIT_HASH:STRING=%__LatestCommit%" "-DCLI_CMAKE_PLATFORM_ARCH_%cm_Arch%=1" "-DCMAKE_INSTALL_PREFIX=%__CMakeBinDir%" "-DCLI_CMAKE_RESOURCE_DIR:STRING=%__ResourcesDir%" -G "Visual Studio %__VSString%" endlocal GOTO :DONE @@ -41,8 +44,8 @@ GOTO :DONE echo "Specify the path to the top level CMake file - /src/NDP" echo "Specify the VSVersion to be used - VS2013 or VS2015" echo "Specify the Target Architecture - x86, AnyCPU, ARM, or x64." - echo "Specify the host version" echo "Specify latest commit hash" + echo "Specify the host version, apphost version, hostresolver version, hostpolicy version" EXIT /B 1 :DONE diff --git a/src/corehost/build.cmd b/src/corehost/build.cmd index 092131fb..683b873a 100644 --- a/src/corehost/build.cmd +++ b/src/corehost/build.cmd @@ -29,7 +29,10 @@ if /i [%1] == [arm64] ( set __BuildArch=arm64&&set __VCBuildArch=arm64&&sh if /i [%1] == [rid] ( set __TargetRid=%2&&shift&&shift&goto Arg_Loop) if /i [%1] == [toolsetDir] ( set "__ToolsetDir=%2"&&shift&&shift&goto Arg_Loop) -if /i [%1] == [version] (set __HostVersion=%2&&shift&&shift&goto Arg_Loop) +if /i [%1] == [hostver] (set __HostVersion=%2&&shift&&shift&goto Arg_Loop) +if /i [%1] == [apphostver] (set __AppHostVersion=%2&&shift&&shift&goto Arg_Loop) +if /i [%1] == [fxrver] (set __HostResolverVersion=%2&&shift&&shift&goto Arg_Loop) +if /i [%1] == [policyver] (set __HostPolicyVersion=%2&&shift&&shift&goto Arg_Loop) if /i [%1] == [commit] (set __CommitSha=%2&&shift&&shift&goto Arg_Loop) shift @@ -103,9 +106,9 @@ if /i "%__BuildArch%" == "arm64" ( call :PrivateToolSet ) -echo Calling "%__nativeWindowsDir%\gen-buildsys-win.bat %~dp0 %__VSVersion% %__BuildArch% %__HostVersion% %__CommitSha%" +echo Calling "%__nativeWindowsDir%\gen-buildsys-win.bat %~dp0 %__VSVersion% %__BuildArch% %__CommitSha% %__HostVersion% %__AppHostVersion% %__HostResolverVersion% %__HostPolicyVersion%" pushd "%__IntermediatesDir%" -call "%__nativeWindowsDir%\gen-buildsys-win.bat" %~dp0 %__VSVersion% %__BuildArch% %__HostVersion% %__CommitSha% +call "%__nativeWindowsDir%\gen-buildsys-win.bat" %~dp0 %__VSVersion% %__BuildArch% %__CommitSha% %__HostVersion% %__AppHostVersion% %__HostResolverVersion% %__HostPolicyVersion% popd :CheckForProj diff --git a/src/corehost/build.proj b/src/corehost/build.proj index 07de95ba..47cee027 100644 --- a/src/corehost/build.proj +++ b/src/corehost/build.proj @@ -4,7 +4,9 @@ - + @@ -12,7 +14,7 @@ Condition="'$(OSGroup)' != 'Windows_NT'" DependsOnTargets="GetLatestCommitHash"> - --arch $(TargetArchitecture) --apphostver $(HostVersion) --hostver $(HostVersion) --fxrver $(HostVersion) --policyver $(HostVersion) --commithash $(LatestCommit) + --arch $(TargetArchitecture) --apphostver $(AppHostVersion) --hostver $(HostVersion) --fxrver $(HostResolverVersion) --policyver $(HostPolicyVersion) --commithash $(LatestCommit) $(BuildArgs) -portable @@ -42,7 +44,7 @@ Properties="GenerateNativeVersionInfo=true;AssemblyName=%(HostFiles.Identity);NativeVersionFileDir=$(IntermediateOutputRootPath)hostResourceFiles\%(HostFiles.Identity);NativeVersionHeaderFile=$(IntermediateOutputRootPath)hostResourceFiles\%(HostFiles.Identity)\version_info.h" Targets="GenerateVersionHeader" /> - $(ConfigurationGroup) $(TargetArchitecture) version $(HostVersion) commit $(LatestCommit) rid $(TargetRid) + $(ConfigurationGroup) $(TargetArchitecture) apphostver $(AppHostVersion) hostver $(HostVersion) fxrver $(HostResolverVersion) policyver $(HostPolicyVersion) commit $(LatestCommit) rid $(TargetRid) toolsetdir $(NativeToolsetDir) diff --git a/src/pkg/dir.props b/src/pkg/dir.props index cd9d3e55..ee2462b7 100644 --- a/src/pkg/dir.props +++ b/src/pkg/dir.props @@ -5,7 +5,6 @@ $(TargetArchitecture) $(BaseOutputRootPath)corehost - $(StabilizePackageVersion) @@ -35,13 +34,13 @@ - + - + diff --git a/src/pkg/packaging/deb/package.props b/src/pkg/packaging/deb/package.props index a2dfd3a2..e52aec35 100644 --- a/src/pkg/packaging/deb/package.props +++ b/src/pkg/packaging/deb/package.props @@ -10,7 +10,7 @@ dotnet-host $(SharedHostDebPkgName.ToLower()) - dotnet-hostfxr-$(HostVersion) + dotnet-hostfxr-$(HostResolverVersion) $(HostFxrDebPkgName.ToLower()) dotnet-sharedframework-$(SharedFrameworkName)-$(SharedFrameworkNugetVersion) diff --git a/src/pkg/packaging/deb/package.targets b/src/pkg/packaging/deb/package.targets index fe6fb3d3..5aa78990 100644 --- a/src/pkg/packaging/deb/package.targets +++ b/src/pkg/packaging/deb/package.targets @@ -121,7 +121,7 @@ $(HostFxrDebPkgName) - $(HostVersion) + $(HostResolverVersion) $(HostFxrPublishRoot) $(HostFxrInstallerFile) dotnet-hostfxr-debian_config.json @@ -164,7 +164,7 @@ $(HostVersion) - $(HostVersion) + $(HostResolverVersion) $(DebPackageName) diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 37e1c2e9..78d2e3f0 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -83,7 +83,7 @@ diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index 65b4c9ca..666d1595 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -13,12 +13,12 @@ - $(PackageTargetRid).$(HostFullVersion) + $(PackageTargetRid).$(SharedFrameworkNugetVersion) dotnet-$(ProductMoniker)$(CompressedFileExtension) - dotnet-hostfxr-$(ProductMoniker)$(CompressedFileExtension) + dotnet-hostfxr-$(PackageTargetRid).$(HostResolverVersion)$(CompressedFileExtension) dotnet-sharedframework-$(ProductMoniker)$(CompressedFileExtension) dotnet-sharedframework-symbols-$(ProductMoniker)$(CompressedFileExtension) @@ -27,7 +27,7 @@ $(PackagesOutDir)dotnet-$(ProductMoniker)$(CombinedInstallerExtension) $(PackagesOutDir)dotnet-$(ProductMoniker)-engine.exe $(PackagesOutDir)dotnet-host-$(ProductMoniker)$(InstallerExtension) - $(PackagesOutDir)dotnet-hostfxr-$(ProductMoniker)$(InstallerExtension) + $(PackagesOutDir)dotnet-hostfxr-$(PackageTargetRid).$(HostResolverVersion)$(InstallerExtension) $(PackagesOutDir)dotnet-sharedframework-$(ProductMoniker)$(InstallerExtension) diff --git a/src/pkg/packaging/osx/package.props b/src/pkg/packaging/osx/package.props index a3369be8..dcfd4d13 100644 --- a/src/pkg/packaging/osx/package.props +++ b/src/pkg/packaging/osx/package.props @@ -3,8 +3,8 @@ $(PackagingRoot)osx/ com.microsoft.dotnet.sharedhost.component.osx.x64 - com.microsoft.dotnet.hostfxr.$(HostVersion).component.osx.x64 - com.microsoft.dotnet.sharedframework.$(SharedFrameworkName).$(HostVersion).component.osx.x64 - com.microsoft.dotnet.$(SharedFrameworkName).$(HostVersion).osx.x64 + com.microsoft.dotnet.hostfxr.$(HostResolverVersion).component.osx.x64 + com.microsoft.dotnet.sharedframework.$(SharedFrameworkName).$(SharedFrameworkNugetVersion).component.osx.x64 + com.microsoft.dotnet.$(SharedFrameworkName).$(SharedFrameworkNugetVersion).osx.x64 \ No newline at end of file diff --git a/src/pkg/packaging/osx/package.targets b/src/pkg/packaging/osx/package.targets index f952d1fa..9164e684 100644 --- a/src/pkg/packaging/osx/package.targets +++ b/src/pkg/packaging/osx/package.targets @@ -39,7 +39,7 @@ /usr/local/share/dotnet - --version $(HostVersion) --install-location $(InstallLocation) + --version $(SharedFrameworkNugetVersion) --install-location $(InstallLocation) @@ -60,7 +60,7 @@ - + @@ -72,7 +72,7 @@ ReplacementPatterns="@(ConfigPattern)" ReplacementStrings="@(ConfigReplace)" /> - + \ No newline at end of file diff --git a/src/pkg/packaging/windows/package.targets b/src/pkg/packaging/windows/package.targets index 8974d529..9b7c2e70 100644 --- a/src/pkg/packaging/windows/package.targets +++ b/src/pkg/packaging/windows/package.targets @@ -75,8 +75,8 @@ "$(MsiArch)" "$(TargetArchitecture)" - $(MsiVersionString) $(HostVersion) $(ArchParams) - $(MsiVersionString) $(SharedFrameworkName) $(HostVersion) $(SharedFxUpgradeCode) $(ArchParams) + $(MsiVersionString) $(SharedFrameworkNugetVersion) $(ArchParams) + $(MsiVersionString) $(SharedFrameworkName) $(SharedFrameworkNugetVersion) $(SharedFxUpgradeCode) $(ArchParams) @@ -102,7 +102,7 @@ - $(ShareFXMsi) $(HostMsi) $(HostFxrMsi) $(SharedBundle) $(WixToolsDir) $(SharedBrandName) $(MsiVersionString) $(BundleDisplayVersion) $(SharedFrameworkName) $(HostVersion) $(SharedBundleCode) $(ArchParams) + $(ShareFXMsi) $(HostMsi) $(HostFxrMsi) $(SharedBundle) $(WixToolsDir) $(SharedBrandName) $(MsiVersionString) $(BundleDisplayVersion) $(SharedFrameworkName) $(SharedFrameworkNugetVersion) $(SharedBundleCode) $(ArchParams) diff --git a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index b38e310a..b3a78cfe 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -5,7 +5,7 @@ - $(NetCoreAppVersion) + $(SharedFrameworkNugetVersion) netcoreapp$([System.Version]::Parse('$(ProductionVersion)').ToString(2)) true true @@ -37,7 +37,7 @@ - $(HostPolicyFullVersion) + $(HostPolicyVersion) .NETCoreApp2.0 diff --git a/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj b/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj index 57b99724..46faf981 100644 --- a/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/Microsoft.NETCore.DotNetHostPolicy.pkgproj @@ -8,7 +8,7 @@ - $(HostResolverFullVersion) + $(HostResolverVersion) diff --git a/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj b/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj index f6803412..50707e4c 100644 --- a/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/Microsoft.NETCore.DotNetHostResolver.pkgproj @@ -8,7 +8,7 @@ - $(AppHostFullVersion) + $(AppHostVersion) diff --git a/src/sharedFramework/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj index f05e4e25..46ddd742 100644 --- a/src/sharedFramework/sharedFramework.proj +++ b/src/sharedFramework/sharedFramework.proj @@ -57,11 +57,11 @@ - + - - + + @@ -80,7 +80,7 @@ - + + @@ -125,8 +129,8 @@ - - + + diff --git a/src/test/build/shared-build-targets-utils/Utils/Crossgen.cs b/src/test/build/shared-build-targets-utils/Utils/Crossgen.cs index e7406b47..5009b1ea 100644 --- a/src/test/build/shared-build-targets-utils/Utils/Crossgen.cs +++ b/src/test/build/shared-build-targets-utils/Utils/Crossgen.cs @@ -49,15 +49,11 @@ namespace Microsoft.DotNet.Cli.Build // TODO-ARM-Crossgen: Add ubuntu.14.04-arm and ubuntu.16.04-arm if ((_targetRID == "win8-arm") || (_targetRID == "win-arm")) { - // workaround https://github.com/dotnet/coreclr/issues/9884 - // ridCrossgen = Path.Combine(crossgenPackagePath, "tools", "x86_arm", $"crossgen{Constants.ExeSuffix}"); - ridCrossgen = Path.Combine(crossgenPackagePath, "tools", "x86_AnyCPU", $"crossgen{Constants.ExeSuffix}"); + ridCrossgen = Path.Combine(crossgenPackagePath, "tools", "x86_arm", $"crossgen{Constants.ExeSuffix}"); } else if ((_targetRID == "win10-arm64") || (_targetRID == "win-arm64")) { - // workaround https://github.com/dotnet/coreclr/issues/9884 - // ridCrossgen = Path.Combine(crossgenPackagePath, "tools", "x64_arm", $"crossgen{Constants.ExeSuffix}"); - ridCrossgen = Path.Combine(crossgenPackagePath, "tools", "x64_AnyCPU", $"crossgen{Constants.ExeSuffix}"); + ridCrossgen = Path.Combine(crossgenPackagePath, "tools", "x64_arm", $"crossgen{Constants.ExeSuffix}"); } else { @@ -82,15 +78,11 @@ namespace Microsoft.DotNet.Cli.Build // TODO-ARM-Crossgen: Add ubuntu.14.04-arm and ubuntu.16.04-arm if ((_targetRID == "win8-arm") || (_targetRID == "win-arm")) { - // workaround https://github.com/dotnet/coreclr/issues/9884 - // jitPath = Path.Combine(jitPackagePath, "runtimes", "x86_arm", "native", $"{Constants.DynamicLibPrefix}clrjit{Constants.DynamicLibSuffix}"); - jitPath = Path.Combine(jitPackagePath, "runtimes", "x86_AnyCPU", "native", $"{Constants.DynamicLibPrefix}clrjit{Constants.DynamicLibSuffix}"); + jitPath = Path.Combine(jitPackagePath, "runtimes", "x86_arm", "native", $"{Constants.DynamicLibPrefix}clrjit{Constants.DynamicLibSuffix}"); } else if ((_targetRID == "win10-arm64") || (_targetRID == "win-arm64")) { - // workaround https://github.com/dotnet/coreclr/issues/9884 - // jitPath = Path.Combine(jitPackagePath, "runtimes", "x64_arm64", "native", $"{Constants.DynamicLibPrefix}clrjit{Constants.DynamicLibSuffix}"); - jitPath = Path.Combine(jitPackagePath, "runtimes", "x64_AnyCPU", "native", $"{Constants.DynamicLibPrefix}clrjit{Constants.DynamicLibSuffix}"); + jitPath = Path.Combine(jitPackagePath, "runtimes", "x64_arm64", "native", $"{Constants.DynamicLibPrefix}clrjit{Constants.DynamicLibSuffix}"); } return jitPath; From 27bbf20dc4f413a86c8036fdd1a05c4c8f1fcb27 Mon Sep 17 00:00:00 2001 From: wtgodbe Date: Mon, 8 May 2017 14:27:43 -0700 Subject: [PATCH 368/625] Sign arm binaries in pipeline --- ...BT.json => Core-Setup-Windows-Arm-BT.json} | 191 +------ buildpipeline/Core-Setup-Windows-BT.json | 483 ++++++++++++++++-- buildpipeline/pipeline.json | 10 +- 3 files changed, 474 insertions(+), 210 deletions(-) rename buildpipeline/{Core-Setup-Signing-Windows-BT.json => Core-Setup-Windows-Arm-BT.json} (71%) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Windows-Arm-BT.json similarity index 71% rename from buildpipeline/Core-Setup-Signing-Windows-BT.json rename to buildpipeline/Core-Setup-Windows-Arm-BT.json index e20b5d72..f1f6f708 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-Arm-BT.json @@ -264,168 +264,6 @@ "msbuildLocation": "" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build and run tests", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\test\\dir.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=diag;LogFile=$(PB_SourcesDirectory)\\tests.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign MSI and cab", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\sign.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignMsiAndCab $(PB_CommonMSBuildArgs) $(MsbuildSigningArguments)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Extract engine from bundle", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:ExtractEngineBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\extractengine.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign engine", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\sign.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signengine.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Reattach engine to bundle", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:ReattachEngineToBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\reattachengine.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign Bundle", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\sign.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signbundle.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, { "enabled": true, "continueOnError": false, @@ -441,7 +279,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -639,27 +477,29 @@ "value": "real" }, "PB_CommonMSBuildArgs": { - "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild)" + "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild) /p:DisableCrossgen=true $(PB_AdditionalBuildArguments)" + }, + "PB_AdditionalBuildArguments": { + "value": "" }, "OfficialBuildId": { "value": "$(Build.BuildNumber)" }, "PB_TargetArchitecture": { - "value": "x64", + "value": "arm", "allowOverride": true }, "PB_CleanAgent": { "value": "true" }, - "PB_PublishRidAgnosticPackages": { - "value": "false" - }, "PB_BuildFullPlatformManifest": { "value": "false" } }, "demands": [ - "Agent.OS -equals Windows_NT" + "Agent.OS -equals Windows_NT", + "DotNetFramework", + "Cmd" ], "retentionRules": [ { @@ -671,15 +511,15 @@ "FilePath", "SymbolStore" ], - "daysToKeep": 2, + "daysToKeep": 7, "minimumToKeep": 1, "deleteBuildRecord": true, "deleteTestResults": true } ], - "buildNumberFormat": "$(Date:yyyyMMdd)$(Rev:-rr)", + "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)", "jobAuthorizationScope": "projectCollection", - "jobTimeoutInMinutes": 120, + "jobTimeoutInMinutes": 90, "jobCancelTimeoutInMinutes": 5, "badgeEnabled": true, "repository": { @@ -689,7 +529,7 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "3" + "cleanOptions": "0" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -699,6 +539,7 @@ "clean": "false", "checkoutSubmodules": false }, + "processParameters": {}, "quality": "definition", "queue": { "id": 36, @@ -708,8 +549,8 @@ "name": "DotNet-Build" } }, - "id": 6102, - "name": "Core-Setup-Signing-Windows-BT", + "id": 4371, + "name": "Core-Setup-Windows-Arm-BT", "path": "\\", "type": "build", "project": { diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 8c1b8db1..39b08751 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -60,7 +60,44 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Build", + "displayName": "Install Signing Plugin", + "timeoutInMinutes": 0, + "task": { + "id": "30666190-6959-11e5-9f96-f56098202fef", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "signType": "$(PB_SignType)", + "zipSources": "false", + "version": "", + "feedSource": "https://devdiv.pkgs.visualstudio.com/DefaultCollection/_packaging/MicroBuildToolset/nuget/v3/index.json" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Run init-tools.cmd", + "timeoutInMinutes": 0, + "task": { + "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_SourcesDirectory)\\init-tools.cmd", + "arguments": "", + "modifyEnvironment": "false", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Generate version assets", "timeoutInMinutes": 0, "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", @@ -69,11 +106,326 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)\\build.cmd", - "arguments": "-- $(PB_CommonMSBuildArgs)", + "arguments": "-- /t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId) $(PB_CommonMSBuildArgs)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build traversal build dependencies", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_SourcesDirectory)\\build.cmd", + "arguments": "-- $(PB_CommonMSBuildArgs) /t:BuildTraversalBuildDependencies /flp:v=diag", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build binaries", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)/src/src.builds", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign binaries", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignBinaries $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build nuget packages", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packages.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build sharedframework layout", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\sharedFramework\\sharedFramework.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\sharedframework.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Package", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packaging.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "true", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build and run tests", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\test\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=diag;LogFile=$(PB_SourcesDirectory)\\tests.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign MSI and cab", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignMsiAndCab $(PB_CommonMSBuildArgs) $(MsbuildSigningArguments)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Extract engine from bundle", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:ExtractEngineBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\extractengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign engine", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Reattach engine to bundle", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:ReattachEngineToBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\reattachengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign Bundle", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signbundle.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, { "enabled": true, "continueOnError": false, @@ -89,7 +441,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -105,7 +457,7 @@ "enabled": true, "continueOnError": true, "alwaysRun": false, - "displayName": "Clean up VSTS agent", + "displayName": "Cleanup VSTS Agent", "timeoutInMinutes": 0, "task": { "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", @@ -127,6 +479,38 @@ "msbuildArchitecture": "x64", "msbuildLocation": "" } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Perform Cleanup Tasks", + "timeoutInMinutes": 0, + "task": { + "id": "521a94ea-9e68-468a-8167-6dcf361ea776", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": {} + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Copy Publish Artifact: Build Logs", + "timeoutInMinutes": 0, + "task": { + "id": "1d341bb0-2106-458c-8422-d00bcea6512a", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "CopyRoot": "", + "Contents": "**\\*.log", + "ArtifactName": "Build Logs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" + } } ], "options": [ @@ -173,11 +557,13 @@ } ], "variables": { - "GITHUB_PASSWORD": { - "value": "PassedViaPipeBuild" + "BuildConfiguration": { + "value": "Release", + "allowOverride": true }, "COREHOST_TRACE": { - "value": "0" + "value": "0", + "allowOverride": true }, "STORAGE_ACCOUNT": { "value": "dotnetcli" @@ -189,27 +575,54 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "true", + "value": "true" + }, + "NUGET_FEED_URL": { + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" + }, + "NUGET_API_KEY": { + "value": "PassedViaPipeBuild" + }, + "GITHUB_PASSWORD": { + "value": "PassedViaPipeBuild" + }, + "BUILD_FULL_PLATFORM_MANIFEST": { + "value": "true" + }, + "PUBLISH_RID_AGNOSTIC_PACKAGES": { + "value": "true" + }, + "CertificateId": { + "value": "400" + }, + "PB_DistroRid": { + "value": "win-x64" + }, + "RID": { + "value": "win-x64", "allowOverride": true }, - "BuildConfiguration": { - "value": "Release" + "MsbuildSigningArguments": { + "value": "/p:CertificateId=$(CertificateId) /v:detailed" }, - "PB_CommonMSBuildArgs": { - "value": "/p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) $(PB_AdditionalBuildArguments)" + "TeamName": { + "value": "DotNetCore" + }, + "system.debug": { + "value": "false" }, "PB_PortableBuild": { "value": "false", "allowOverride": true }, - "PB_CleanAgent": { - "value": "true" + "NUGET_SYMBOLS_FEED_URL": { + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" }, "PB_SourcesDirectory": { "value": "$(Build.SourcesDirectory)\\core-setup" }, - "PB_Branch": { - "value": "master" + "PB_VsoRepoUrl": { + "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" }, "PB_AzureAccountName": { "value": "sourcebuild" @@ -218,9 +631,6 @@ "value": null, "isSecret": true }, - "PB_VsoRepoUrl": { - "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" - }, "PB_VsoAccountName": { "value": "dn-bot" }, @@ -228,9 +638,18 @@ "value": null, "isSecret": true }, + "PB_Branch": { + "value": "buildtools" + }, "SourceVersion": { "value": "HEAD" }, + "PB_SignType": { + "value": "real" + }, + "PB_CommonMSBuildArgs": { + "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild)" + }, "OfficialBuildId": { "value": "$(Build.BuildNumber)" }, @@ -238,15 +657,18 @@ "value": "x64", "allowOverride": true }, - "PB_AdditionalBuildArguments": { - "value": "", - "allowOverride": true + "PB_CleanAgent": { + "value": "true" + }, + "PB_PublishRidAgnosticPackages": { + "value": "false" + }, + "PB_BuildFullPlatformManifest": { + "value": "false" } }, "demands": [ - "Agent.OS -equals Windows_NT", - "DotNetFramework", - "Cmd" + "Agent.OS -equals Windows_NT" ], "retentionRules": [ { @@ -258,15 +680,15 @@ "FilePath", "SymbolStore" ], - "daysToKeep": 7, + "daysToKeep": 2, "minimumToKeep": 1, "deleteBuildRecord": true, "deleteTestResults": true } ], - "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)", + "buildNumberFormat": "$(Date:yyyyMMdd)$(Rev:-rr)", "jobAuthorizationScope": "projectCollection", - "jobTimeoutInMinutes": 90, + "jobTimeoutInMinutes": 120, "jobCancelTimeoutInMinutes": 5, "badgeEnabled": true, "repository": { @@ -276,7 +698,7 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "0" + "cleanOptions": "3" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -286,7 +708,6 @@ "clean": "false", "checkoutSubmodules": false }, - "processParameters": {}, "quality": "definition", "queue": { "id": 36, @@ -296,7 +717,7 @@ "name": "DotNet-Build" } }, - "id": 4371, + "id": 6102, "name": "Core-Setup-Windows-BT", "path": "\\", "type": "build", diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index de5af714..f0d4fc17 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -122,10 +122,11 @@ } }, { - "Name": "Core-Setup-Windows-BT", + "Name": "Core-Setup-Windows-Arm-BT", "Parameters": { "PB_AdditionalBuildArguments": "/p:SkipTests=true", "PB_TargetArchitecture": "arm", + "PB_DistroRid": "win-arm", "PB_PortableBuild": "true" }, "ReportingParameters": { @@ -136,10 +137,11 @@ } }, { - "Name": "Core-Setup-Windows-BT", + "Name": "Core-Setup-Windows-Arm-BT", "Parameters": { "PB_AdditionalBuildArguments": "/p:SkipTests=true /p:NativeToolSetDir=C:\\tools\\clr", "PB_TargetArchitecture": "arm64", + "PB_DistroRid": "win-arm64", "PB_PortableBuild": "true" }, "ReportingParameters": { @@ -150,7 +152,7 @@ } }, { - "Name": "Core-Setup-Signing-Windows-BT", + "Name": "Core-Setup-Windows-BT", "Parameters": { "PB_DistroRid": "win7-x64", "PB_TargetArchitecture": "x64", @@ -166,7 +168,7 @@ } }, { - "Name": "Core-Setup-Signing-Windows-BT", + "Name": "Core-Setup-Windows-BT", "Parameters": { "PB_DistroRid": "win7-x86", "PB_TargetArchitecture": "x86", From bcec8851461ac42af06ba783b85cc5d6e44447f1 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Wed, 10 May 2017 13:38:28 -0700 Subject: [PATCH 369/625] Make the LinuxArm cross build use ROOTFS_DIR (#2345) * Make the LinuxArm cross build use ROOTFS_DIR * Handle spacing --- buildpipeline/Core-Setup-Linux-BT.json | 9 ++++++++- buildpipeline/pipeline.json | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 6c1b6b1a..fc1c6070 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -159,7 +159,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/build.sh -OfficialBuildId=$(OfficialBuildId) $(PB_BuildArguments)", + "arguments": "run --rm $(PB_CrossBuildArgs)$(DockerCommonRunArgs) $(PB_GitDirectory)/build.sh -OfficialBuildId=$(OfficialBuildId) $(PB_BuildArguments)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -334,6 +334,13 @@ "SourceVersion": { "value": "HEAD" }, + "ROOTFS_DIR": { + "value": "/crossrootfs/$(PB_TargetArchitecture)" + }, + "PB_CrossBuildArgs": { + "value": "", + "allowOverride": true + }, "DockerCommonRunArgs": { "value": "--name $(PB_DockerContainerName) -v \"$(PB_SourcesDirectory):$(PB_GitDirectory)\" -w=\"$(PB_GitDirectory)\" $(PB_DockerImageName)" }, diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index de5af714..93ed732a 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -99,6 +99,7 @@ "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", "PB_TargetArchitecture": "arm", "PB_AdditionalBuildArguments":"arm cross disablecrossgen -portable skiptests", + "PB_CrossBuildArgs": "-e ROOTFS_DIR ", "PB_PortableBuild": "true" }, "ReportingParameters": { From 511b3c5b37ed50b9c69878f599f1b25be1ae20e5 Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Mon, 8 May 2017 19:12:21 -0700 Subject: [PATCH 370/625] Run CMake for the host in the intermediates directory CMake uses the current working directory to generate the build system, we were running this within the source tree, so once a build was complete there were a bunch of untracked files showing up in `git status`. --- src/corehost/build.proj | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/corehost/build.proj b/src/corehost/build.proj index 47cee027..a7b844d3 100644 --- a/src/corehost/build.proj +++ b/src/corehost/build.proj @@ -16,18 +16,23 @@ --arch $(TargetArchitecture) --apphostver $(AppHostVersion) --hostver $(HostVersion) --fxrver $(HostResolverVersion) --policyver $(HostPolicyVersion) --commithash $(LatestCommit) $(BuildArgs) -portable + $(IntermediateOutputRootPath)corehost\cmake\ - + + + + - + - - - - + + + + - + From 590df10a20f47dae2f70ab8769844d725ad1df66 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Wed, 10 May 2017 15:59:32 -0500 Subject: [PATCH 371/625] Remove the test bootstrap CLI. Fix tests so they can be executed using an x64 'dotnet test', but test an x86 built product. --- .../GivenThatICareAboutMultilevelSDKLookup.cs | 34 +- ...nThatICareAboutMultilevelSharedFxLookup.cs | 5 +- src/test/TestUtils/RepoDirectoriesProvider.cs | 10 +- src/test/bootstrap/.cliversion | 1 - src/test/bootstrap/.toolversions | 1 - src/test/bootstrap/bootstrap.ps1 | 102 --- src/test/bootstrap/bootstrap.sh | 225 ------ src/test/bootstrap/dotnet-install.sh | 740 ------------------ src/test/dir.proj | 26 +- 9 files changed, 34 insertions(+), 1110 deletions(-) delete mode 100644 src/test/bootstrap/.cliversion delete mode 100644 src/test/bootstrap/.toolversions delete mode 100644 src/test/bootstrap/bootstrap.ps1 delete mode 100755 src/test/bootstrap/bootstrap.sh delete mode 100644 src/test/bootstrap/dotnet-install.sh diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index eb60c631..3c1af85e 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; using System.IO; using System.Linq; using Microsoft.DotNet.InternalAbstractions; @@ -8,6 +9,14 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup { public class GivenThatICareAboutMultilevelSDKLookup { + private static IDictionary s_DefaultEnvironment = new Dictionary() + { + {"COREHOST_TRACE", "1" }, + // The SDK being used may be crossgen'd for a different architecture than we are building for. + // Turn off ready to run, so an x64 crossgen'd SDK can be loaded in an x86 process. + {"COMPlus_ReadyToRun", "0" }, + }; + private RepoDirectoriesProvider RepoDirectories; private TestProjectFixture PreviouslyBuiltAndRestoredPortableTestProjectFixture; @@ -47,9 +56,11 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // we'll need to build from it. The CopyDirectory method automatically creates the dest dir CopyDirectory(builtDotnet, _executableDir); + RepoDirectories = new RepoDirectoriesProvider(builtDotnet: _executableDir); + // SdkBaseDirs contain all available version folders _cwdSdkBaseDir = Path.Combine(_currentWorkingDir, "sdk"); - _userSdkBaseDir = Path.Combine(_userDir, ".dotnet", RuntimeEnvironment.RuntimeArchitecture, "sdk"); + _userSdkBaseDir = Path.Combine(_userDir, ".dotnet", RepoDirectories.BuildArchitecture, "sdk"); _exeSdkBaseDir = Path.Combine(_executableDir, "sdk"); // Create directories @@ -58,7 +69,6 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup Directory.CreateDirectory(_exeSdkBaseDir); // Restore and build PortableApp from exe dir - RepoDirectories = new RepoDirectoriesProvider(builtDotnet: _executableDir); PreviouslyBuiltAndRestoredPortableTestProjectFixture = new TestProjectFixture("PortableApp", RepoDirectories) .EnsureRestored(RepoDirectories.CorehostPackages) .BuildProject(); @@ -105,7 +115,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) - .EnvironmentVariable("COREHOST_TRACE", "1") + .Environment(s_DefaultEnvironment) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -125,7 +135,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) - .EnvironmentVariable("COREHOST_TRACE", "1") + .Environment(s_DefaultEnvironment) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -145,7 +155,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) - .EnvironmentVariable("COREHOST_TRACE", "1") + .Environment(s_DefaultEnvironment) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -181,7 +191,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) - .EnvironmentVariable("COREHOST_TRACE", "1") + .Environment(s_DefaultEnvironment) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -202,7 +212,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) - .EnvironmentVariable("COREHOST_TRACE", "1") + .Environment(s_DefaultEnvironment) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -234,7 +244,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) - .EnvironmentVariable("COREHOST_TRACE", "1") + .Environment(s_DefaultEnvironment) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -254,7 +264,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) - .EnvironmentVariable("COREHOST_TRACE", "1") + .Environment(s_DefaultEnvironment) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -274,7 +284,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) - .EnvironmentVariable("COREHOST_TRACE", "1") + .Environment(s_DefaultEnvironment) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -294,7 +304,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) - .EnvironmentVariable("COREHOST_TRACE", "1") + .Environment(s_DefaultEnvironment) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -314,7 +324,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) - .EnvironmentVariable("COREHOST_TRACE", "1") + .Environment(s_DefaultEnvironment) .CaptureStdOut() .CaptureStdErr() .Execute() diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs index 70481294..5f9c0627 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs @@ -42,9 +42,11 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku _userDir = Path.Combine(multilevelDir, "user"); _executableDir = Path.Combine(multilevelDir, "exe"); + RepoDirectories = new RepoDirectoriesProvider(builtDotnet: _executableDir); + // SharedFxBaseDirs contain all available version folders _cwdSharedFxBaseDir = Path.Combine(_currentWorkingDir, "shared", "Microsoft.NETCore.App"); - _userSharedFxBaseDir = Path.Combine(_userDir, ".dotnet", RuntimeEnvironment.RuntimeArchitecture, "shared", "Microsoft.NETCore.App"); + _userSharedFxBaseDir = Path.Combine(_userDir, ".dotnet", RepoDirectories.BuildArchitecture, "shared", "Microsoft.NETCore.App"); _exeSharedFxBaseDir = Path.Combine(_executableDir, "shared", "Microsoft.NETCore.App"); // Create directories. It's necessary to copy the entire publish folder to the exe dir because @@ -54,7 +56,6 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku CopyDirectory(builtDotnet, _executableDir); // Restore and build SharedFxLookupPortableApp from exe dir - RepoDirectories = new RepoDirectoriesProvider(builtDotnet:_executableDir); PreviouslyBuiltAndRestoredPortableTestProjectFixture = new TestProjectFixture("SharedFxLookupPortableApp", RepoDirectories) .EnsureRestored(RepoDirectories.CorehostPackages) .BuildProject(); diff --git a/src/test/TestUtils/RepoDirectoriesProvider.cs b/src/test/TestUtils/RepoDirectoriesProvider.cs index 551f736f..a38324e6 100644 --- a/src/test/TestUtils/RepoDirectoriesProvider.cs +++ b/src/test/TestUtils/RepoDirectoriesProvider.cs @@ -20,9 +20,11 @@ namespace Microsoft.DotNet.CoreSetup.Test private string _targetRID; private string _buildRID; + private string _buildArchitecture; private string _mnaVersion; public string BuildRID => _buildRID; + public string BuildArchitecture => _buildArchitecture; public string TargetRID => _targetRID; public string MicrosoftNETCoreAppVersion => _mnaVersion; public string RepoRoot => _repoRoot; @@ -47,13 +49,11 @@ namespace Microsoft.DotNet.CoreSetup.Test _targetRID = Environment.GetEnvironmentVariable("TEST_TARGETRID"); _buildRID = Environment.GetEnvironmentVariable("BUILDRID"); + _buildArchitecture = Environment.GetEnvironmentVariable("BUILD_ARCHITECTURE"); _mnaVersion = Environment.GetEnvironmentVariable("MNA_VERSION"); - _dotnetSDK = dotnetSdk ?? Path.Combine(baseArtifactsFolder, "tests", _targetRID + ".Debug", "Tools", "dotnetcli"); - if (!Directory.Exists(_dotnetSDK)) - { - _dotnetSDK = dotnetSdk ?? Path.Combine(baseArtifactsFolder, "tests", _targetRID + ".Release", "Tools", "dotnetcli"); - } + _dotnetSDK = dotnetSdk ?? Environment.GetEnvironmentVariable("DOTNET_SDK_PATH"); + if (!Directory.Exists(_dotnetSDK)) { throw new InvalidOperationException("ERROR: Test SDK folder not found."); diff --git a/src/test/bootstrap/.cliversion b/src/test/bootstrap/.cliversion deleted file mode 100644 index ddee3053..00000000 --- a/src/test/bootstrap/.cliversion +++ /dev/null @@ -1 +0,0 @@ -2.0.0-preview1-005899 \ No newline at end of file diff --git a/src/test/bootstrap/.toolversions b/src/test/bootstrap/.toolversions deleted file mode 100644 index 8b137891..00000000 --- a/src/test/bootstrap/.toolversions +++ /dev/null @@ -1 +0,0 @@ - diff --git a/src/test/bootstrap/bootstrap.ps1 b/src/test/bootstrap/bootstrap.ps1 deleted file mode 100644 index cd02a4d4..00000000 --- a/src/test/bootstrap/bootstrap.ps1 +++ /dev/null @@ -1,102 +0,0 @@ -param -( - [Parameter(Mandatory=$false)][string]$RepositoryRoot = "$PSScriptRoot", - [Parameter(Mandatory=$false)][string]$ToolsLocalPath = (Join-Path $RepositoryRoot "..\Tools"), - [Parameter(Mandatory=$false)][string]$CliLocalPath = (Join-Path $ToolsLocalPath "dotnetcli"), - [Parameter(Mandatory=$false)][string]$SharedFrameworkSymlinkPath = (Join-Path $ToolsLocalPath "dotnetcli\shared\Microsoft.NETCore.App\version"), - [Parameter(Mandatory=$false)][string]$SharedFrameworkVersion = "", - [Parameter(Mandatory=$false)][string]$Architecture = "", - [Parameter(Mandatory=$false)][string]$DotNetInstallBranch = "master", - [switch]$Force = $false -) - -$rootToolVersions = Join-Path $RepositoryRoot ".toolversions" -$bootstrapComplete = Join-Path $ToolsLocalPath "bootstrap.complete" - -# if the force switch is specified delete the semaphore file if it exists -if ($Force -and (Test-Path $bootstrapComplete)) -{ - del $bootstrapComplete -} - -# if the semaphore file exists and is identical to the specified version then exit -if ((Test-Path $bootstrapComplete) -and !(Compare-Object (Get-Content $rootToolVersions) (Get-Content $bootstrapComplete))) -{ - exit 0 -} - -$initCliScript = "dotnet-install.ps1" -$dotnetInstallPath = Join-Path $ToolsLocalPath $initCliScript - -# blow away the tools directory so we can start from a known state -if (Test-Path $ToolsLocalPath) -{ - # if the bootstrap.ps1 script was downloaded to the tools directory don't delete it - rd -recurse -force $ToolsLocalPath -exclude "bootstrap.ps1" -} -else -{ - mkdir $ToolsLocalPath | Out-Null -} - -# download CLI boot-strapper script -Invoke-WebRequest "https://raw.githubusercontent.com/dotnet/cli/$DotNetInstallBranch/scripts/obtain/dotnet-install.ps1" -OutFile $dotnetInstallPath - -# load the version of the CLI -$rootCliVersion = Join-Path $RepositoryRoot ".cliversion" -$dotNetCliVersion = Get-Content $rootCliVersion - -if (-Not (Test-Path $CliLocalPath)) -{ - mkdir $CliLocalPath | Out-Null -} - -# now execute the script -Write-Host "$dotnetInstallPath -Version $dotNetCliVersion -InstallDir $CliLocalPath -Architecture ""$Architecture""" -Invoke-Expression "$dotnetInstallPath -Version $dotNetCliVersion -InstallDir $CliLocalPath -Architecture ""$Architecture""" -if ($LastExitCode -ne 0) -{ - Write-Output "The .NET CLI installation failed with exit code $LastExitCode" - exit $LastExitCode -} - -# now stage the contents to tools directory and run any init scripts -foreach ($tool in $tools) -{ - $name, $version = $tool.split("=") - - # verify that the version we expect is what was restored - $pkgVerPath = Join-Path $packagesPath "$name\$version" - if ((Test-Path $pkgVerPath) -eq 0) - { - Write-Output "Directory '$pkgVerPath' doesn't exist, ensure that the version restored matches the version specified." - exit 1 - } - - # at present we have the following conventions when staging package content: - # 1. if a package contains a "tools" directory then recursively copy its contents - # to a directory named the package ID that's under $ToolsLocalPath. - # 2. if a package contains a "libs" directory then recursively copy its contents - # under the $ToolsLocalPath directory. - # 3. if a package contains a file "lib\init-tools.cmd" execute it. - - if (Test-Path (Join-Path $pkgVerPath "tools")) - { - $destination = Join-Path $ToolsLocalPath $name - mkdir $destination | Out-Null - copy (Join-Path $pkgVerPath "tools\*") $destination -recurse - } - elseif (Test-Path (Join-Path $pkgVerPath "lib")) - { - copy (Join-Path $pkgVerPath "lib\*") $ToolsLocalPath -recurse - } - - if (Test-Path (Join-Path $pkgVerPath "lib\init-tools.cmd")) - { - cmd.exe /c (Join-Path $pkgVerPath "lib\init-tools.cmd") $RepositoryRoot $dotNetExe $ToolsLocalPath | Out-File (Join-Path $RepositoryRoot "Init-$name.log") - } -} - -# write semaphore file -copy $rootToolVersions $bootstrapComplete -exit 0 diff --git a/src/test/bootstrap/bootstrap.sh b/src/test/bootstrap/bootstrap.sh deleted file mode 100755 index 32621455..00000000 --- a/src/test/bootstrap/bootstrap.sh +++ /dev/null @@ -1,225 +0,0 @@ -#!/usr/bin/env bash - -# Stop script on NZEC -# set -e -# Stop script if unbound variable found (use ${var:-} if intentional) -set -u -# By default cmd1 | cmd2 returns exit code of cmd2 regardless of cmd1 success -# This is causing it to fail -set -o pipefail - -# Use in the the functions: eval $invocation -invocation='say_verbose "Calling: ${FUNCNAME[0]}"' - -# standard output may be used as a return value in the functions -# we need a way to write text on the screen in the functions so that -# it won't interfere with the return value. -# Exposing stream 3 as a pipe to standard output of the script itself -exec 3>&1 - -say_err() { - printf "%b\n" "bootstrap: Error: $1" >&2 -} - -say() { - # using stream 3 (defined in the beginning) to not interfere with stdout of functions - # which may be used as return value - printf "%b\n" "bootstrap: $1" >&3 -} - -say_verbose() { - if [ "$verbose" = true ]; then - say "$1" - fi -} - -machine_has() { - eval $invocation - - hash "$1" > /dev/null 2>&1 - return $? -} - -check_min_reqs() { - local hasMinimum=false - if machine_has "curl"; then - hasMinimum=true; - fi - if machine_has "wget"; then - hasMinimum=true; - fi - if [ "$hasMinimum" = "false" ]; then - say_err "curl (recommended) or wget are required to download dotnet. Install missing prereq to proceed." - return 1 - fi - return 0 -} - -# args: -# remote_path - $1 -# [out_path] - $2 - stdout if not provided -download() { - eval $invocation - - local remote_path=$1 - local out_path=${2:-} - - local failed=false - which curl > /dev/null 2> /dev/null - if [ $? -ne 0 ]; then - echo "using wget for download" - if [ -z "$out_path" ]; then - wget -q --tries 10 $remote_path || failed=true - else - wget -q --tries 10 -O $out_path $remote_path || failed=true - fi - else - echo "using curl for download" - if [ -z "$out_path" ]; then - curl --retry 10 -sSL --create-dirs $remote_path || failed=true - else - curl --retry 10 -sSL --create-dirs -o $out_path $remote_path || failed=true - fi - fi - - if [ "$failed" = true ]; then - say_err "Download failed" - return 1 - fi -} - -verbose=false -repoRoot="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" -toolsLocalPath="" -cliLocalPath="" -symlinkPath="" -sharedFxVersion="" -force= -forcedCliLocalPath="" -architecture="" -dotNetInstallBranch="rel/1.0.0" - -while [ $# -ne 0 ] -do - name=$1 - case $name in - -r|--repositoryRoot|-[Rr]epositoryRoot) - shift - repoRoot="$1" - ;; - -t|--toolsLocalPath|-[Tt]oolsLocalPath) - shift - toolsLocalPath="$1" - ;; - -c|--cliInstallPath|--cliLocalPath|-[Cc]liLocalPath) - shift - cliLocalPath="$1" - ;; - -u|--useLocalCli|-[Uu]seLocalCli) - shift - forcedCliLocalPath="$1" - ;; - -a|--architecture|-[Aa]rchitecture) - shift - architecture="$1" - ;; - --dotNetInstallBranch|-[Dd]ot[Nn]et[Ii]nstall[Bb]ranch) - shift - dotNetInstallBranch="$1" - ;; - --sharedFrameworkSymlinkPath|--symlink|-[Ss]haredFrameworkSymlinkPath) - shift - symlinkPath="$1" - ;; - --sharedFrameworkVersion|-[Ss]haredFrameworkVersion) - sharedFxVersion="$1" - ;; - --force|-[Ff]orce) - force=true - ;; - -v|--verbose|-[Vv]erbose) - verbose=true - ;; - *) - say_err "Unknown argument \`$name\`" - exit 1 - ;; - esac - - shift -done - -if [ $toolsLocalPath = "" ]; then - toolsLocalPath="$repoRoot/Tools" -fi - -if [ $cliLocalPath = "" ]; then - if [ $forcedCliLocalPath = "" ]; then - cliLocalPath="$toolsLocalPath/dotnetcli" - else - cliLocalPath=$forcedCliLocalPath - fi -fi - -if [ $symlinkPath = "" ]; then - symlinkPath="$toolsLocalPath/dotnetcli/shared/Microsoft.NETCore.App/version" -fi - -rootToolVersions="$repoRoot/.toolversions" -bootstrapComplete="$toolsLocalPath/bootstrap.complete" - -# if the force switch is specified delete the semaphore file if it exists -if [[ $force && -f $bootstrapComplete ]]; then - rm -f $bootstrapComplete -fi - -# if the semaphore file exists and is identical to the specified version then exit -if [[ -f $bootstrapComplete && ! `cmp $bootstrapComplete $rootToolVersions` ]]; then - say "$bootstrapComplete appears to show that bootstrapping is complete. Use --force if you want to re-bootstrap." - exit 0 -fi - -initCliScript="dotnet-install.sh" -dotnetInstallPath="$toolsLocalPath/$initCliScript" - -# blow away the tools directory so we can start from a known state -if [ -d $toolsLocalPath ]; then - # if the bootstrap.sh script was downloaded to the tools directory don't delete it - find $toolsLocalPath -type f -not -name bootstrap.sh -exec rm -f {} \; -else - mkdir -p $toolsLocalPath -fi - -if [ $forcedCliLocalPath = "" ]; then - check_min_reqs - - # download CLI boot-strapper script - # temporary hack for custom dotnet-install script which allows curl or wget use - # download "https://raw.githubusercontent.com/dotnet/cli/$dotNetInstallBranch/scripts/obtain/dotnet-install.sh" "$dotnetInstallPath" - if [ ! -d $toolsLocalPath ]; then - mkdir -p $toolsLocalPath - fi - cp -fv $repoRoot/dotnet-install.sh $dotnetInstallPath - chmod u+x "$dotnetInstallPath" - - # load the version of the CLI - rootCliVersion="$repoRoot/.cliversion" - dotNetCliVersion=`cat $rootCliVersion` - - if [ ! -e $cliLocalPath ]; then - mkdir -p "$cliLocalPath" - fi - - # now execute the script - say_verbose "installing CLI: $dotnetInstallPath --version \"$dotNetCliVersion\" --install-dir $cliLocalPath --architecture \"$architecture\"" - $dotnetInstallPath --version "$dotNetCliVersion" --install-dir $cliLocalPath --architecture "$architecture" - if [ "$?" != "0" ]; then - say_err "The .NET CLI installation failed with exit code $?" - exit $? - fi -fi - -cp $rootToolVersions $bootstrapComplete - -say "Bootstrap finished successfully." - diff --git a/src/test/bootstrap/dotnet-install.sh b/src/test/bootstrap/dotnet-install.sh deleted file mode 100644 index d2b6c6c7..00000000 --- a/src/test/bootstrap/dotnet-install.sh +++ /dev/null @@ -1,740 +0,0 @@ -#!/usr/bin/env bash -# Copyright (c) .NET Foundation and contributors. All rights reserved. -# Licensed under the MIT license. See LICENSE file in the project root for full license information. -# - -# Stop script on NZEC -set -e -# Stop script if unbound variable found (use ${var:-} if intentional) -set -u -# By default cmd1 | cmd2 returns exit code of cmd2 regardless of cmd1 success -# This is causing it to fail -set -o pipefail - -# Use in the the functions: eval $invocation -invocation='say_verbose "Calling: ${yellow:-}${FUNCNAME[0]} ${green:-}$*${normal:-}"' - -# standard output may be used as a return value in the functions -# we need a way to write text on the screen in the functions so that -# it won't interfere with the return value. -# Exposing stream 3 as a pipe to standard output of the script itself -exec 3>&1 - -# Setup some colors to use. These need to work in fairly limited shells, like the Ubuntu Docker container where there are only 8 colors. -# See if stdout is a terminal -if [ -t 1 ]; then - # see if it supports colors - ncolors=$(tput colors) - if [ -n "$ncolors" ] && [ $ncolors -ge 8 ]; then - bold="$(tput bold || echo)" - normal="$(tput sgr0 || echo)" - black="$(tput setaf 0 || echo)" - red="$(tput setaf 1 || echo)" - green="$(tput setaf 2 || echo)" - yellow="$(tput setaf 3 || echo)" - blue="$(tput setaf 4 || echo)" - magenta="$(tput setaf 5 || echo)" - cyan="$(tput setaf 6 || echo)" - white="$(tput setaf 7 || echo)" - fi -fi - -say_err() { - printf "%b\n" "${red:-}dotnet_install: Error: $1${normal:-}" >&2 -} - -say() { - # using stream 3 (defined in the beginning) to not interfere with stdout of functions - # which may be used as return value - printf "%b\n" "${cyan:-}dotnet-install:${normal:-} $1" >&3 -} - -say_verbose() { - if [ "$verbose" = true ]; then - say "$1" - fi -} - -get_os_download_name_from_platform() { - eval $invocation - - platform="$1" - case "$platform" in - "centos.7") - echo "centos" - return 0 - ;; - "debian.8") - echo "debian" - return 0 - ;; - "fedora.23") - echo "fedora.23" - return 0 - ;; - "fedora.24") - echo "fedora.24" - return 0 - ;; - "opensuse.13.2") - echo "opensuse.13.2" - return 0 - ;; - "opensuse.42.1") - echo "opensuse.42.1" - return 0 - ;; - "rhel.7"*) - echo "rhel" - return 0 - ;; - "ubuntu.14.04") - echo "ubuntu" - return 0 - ;; - "ubuntu.16.04") - echo "ubuntu.16.04" - return 0 - ;; - "ubuntu.16.10") - echo "ubuntu.16.10" - return 0 - ;; - "alpine.3.4.3") - echo "alpine" - return 0 - ;; - esac - return 1 -} - -get_current_os_name() { - eval $invocation - - local uname=$(uname) - if [ "$uname" = "Darwin" ]; then - echo "osx" - return 0 - elif [ -n "$runtime_id" ]; then - echo $(get_os_download_name_from_platform "${runtime_id%-*}" || echo "${runtime_id%-*}") - return 0 - else - if [ -e /etc/os-release ]; then - . /etc/os-release - os=$(get_os_download_name_from_platform "$ID.$VERSION_ID" || echo "") - if [ -n "$os" ]; then - echo "$os" - return 0 - fi - fi - fi - - say_err "OS name could not be detected: $ID.$VERSION_ID" - return 1 -} - -machine_has() { - eval $invocation - - hash "$1" > /dev/null 2>&1 - return $? -} - -check_min_reqs() { - local hasMinimum=false - if machine_has "curl"; then - hasMinimum=true; - fi - if machine_has "wget"; then - hasMinimum=true; - fi - if [ "$hasMinimum" = "false" ]; then - say_err "curl (recommended) or wget are required to download dotnet. Install missing prereq to proceed." - return 1 - fi - return 0 -} - -check_pre_reqs() { - eval $invocation - - local failing=false; - - if [ "${DOTNET_INSTALL_SKIP_PREREQS:-}" = "1" ]; then - return 0 - fi - - if [ "$(uname)" = "Linux" ]; then - if ! [ -x "$(command -v ldconfig)" ]; then - echo "ldconfig is not in PATH, trying /sbin/ldconfig." - LDCONFIG_COMMAND="/sbin/ldconfig" - else - LDCONFIG_COMMAND="ldconfig" - fi - - [ -z "$($LDCONFIG_COMMAND -p | grep libunwind)" ] && say_err "Unable to locate libunwind. Install libunwind to continue" && failing=true - [ -z "$($LDCONFIG_COMMAND -p | grep libssl)" ] && say_err "Unable to locate libssl. Install libssl to continue" && failing=true - [ -z "$($LDCONFIG_COMMAND -p | grep libcurl)" ] && say_err "Unable to locate libcurl. Install libcurl to continue" && failing=true - [ -z "$($LDCONFIG_COMMAND -p | grep libicu)" ] && say_err "Unable to locate libicu. Install libicu to continue" && failing=true - fi - - if [ "$failing" = true ]; then - return 1 - fi - - return 0 -} - -# args: -# input - $1 -to_lowercase() { - #eval $invocation - - echo "$1" | tr '[:upper:]' '[:lower:]' - return 0 -} - -# args: -# input - $1 -remove_trailing_slash() { - #eval $invocation - - local input=${1:-} - echo "${input%/}" - return 0 -} - -# args: -# input - $1 -remove_beginning_slash() { - #eval $invocation - - local input=${1:-} - echo "${input#/}" - return 0 -} - -# args: -# root_path - $1 -# child_path - $2 - this parameter can be empty -combine_paths() { - eval $invocation - - # TODO: Consider making it work with any number of paths. For now: - if [ ! -z "${3:-}" ]; then - say_err "combine_paths: Function takes two parameters." - return 1 - fi - - local root_path=$(remove_trailing_slash $1) - local child_path=$(remove_beginning_slash ${2:-}) - say_verbose "combine_paths: root_path=$root_path" - say_verbose "combine_paths: child_path=$child_path" - echo "$root_path/$child_path" - return 0 -} - -get_machine_architecture() { - eval $invocation - - # Currently the only one supported - echo "x64" - return 0 -} - -# args: -# architecture - $1 -get_normalized_architecture_from_architecture() { - eval $invocation - - local architecture=$(to_lowercase $1) - case $architecture in - \) - echo "$(get_normalized_architecture_from_architecture $(get_machine_architecture))" - return 0 - ;; - amd64|x64) - echo "x64" - return 0 - ;; - x86) - say_err "Architecture ``x86`` currently not supported" - return 1 - ;; - esac - - say_err "Architecture ``$architecture`` not supported. If you think this is a bug, please report it at https://github.com/dotnet/cli/issues" - return 1 -} - -# version_info is a conceptual two line string representing commit hash and 4-part version -# format: -# Line 1: # commit_hash -# Line 2: # 4-part version - -# args: -# version_text - stdin -get_version_from_version_info() { - eval $invocation - - cat | tail -n 1 - return 0 -} - -# args: -# version_text - stdin -get_commit_hash_from_version_info() { - eval $invocation - - cat | head -n 1 - return 0 -} - -# args: -# install_root - $1 -# relative_path_to_package - $2 -# specific_version - $3 -is_dotnet_package_installed() { - eval $invocation - - local install_root=$1 - local relative_path_to_package=$2 - local specific_version=${3//[$'\t\r\n']} - - local dotnet_package_path=$(combine_paths $(combine_paths $install_root $relative_path_to_package) $specific_version) - say_verbose "is_dotnet_package_installed: dotnet_package_path=$dotnet_package_path" - - if [ -d "$dotnet_package_path" ]; then - return 0 - else - return 1 - fi -} - -# args: -# azure_feed - $1 -# azure_channel - $2 -# normalized_architecture - $3 -get_latest_version_info() { - eval $invocation - - local azure_feed=$1 - local azure_channel=$2 - local normalized_architecture=$3 - - local osname - osname=$(get_current_os_name) || return 1 - - local version_file_url=null - if [ "$shared_runtime" = true ]; then - version_file_url="$uncached_feed/$azure_channel/dnvm/latest.sharedfx.$osname.$normalized_architecture.version" - else - version_file_url="$uncached_feed/Sdk/$azure_channel/latest.version" - fi - say_verbose "get_latest_version_info: latest url: $version_file_url" - - download $version_file_url - return $? -} - -# args: -# channel - $1 -get_azure_channel_from_channel() { - eval $invocation - - local channel=$(to_lowercase $1) - case $channel in - future|dev) - echo "dev" - return 0 - ;; - production) - say_err "Production channel does not exist yet" - return 1 - esac - - echo $channel - return 0 -} - -# args: -# azure_feed - $1 -# azure_channel - $2 -# normalized_architecture - $3 -# version - $4 -get_specific_version_from_version() { - eval $invocation - - local azure_feed=$1 - local azure_channel=$2 - local normalized_architecture=$3 - local version=$(to_lowercase $4) - - case $version in - latest) - local version_info - version_info="$(get_latest_version_info $azure_feed $azure_channel $normalized_architecture)" || return 1 - say_verbose "get_specific_version_from_version: version_info=$version_info" - echo "$version_info" | get_version_from_version_info - return 0 - ;; - lkg) - say_err "``--version LKG`` not supported yet." - return 1 - ;; - *) - echo $version - return 0 - ;; - esac -} - -# args: -# azure_feed - $1 -# azure_channel - $2 -# normalized_architecture - $3 -# specific_version - $4 -construct_download_link() { - eval $invocation - - local azure_feed=$1 - local azure_channel=$2 - local normalized_architecture=$3 - local specific_version=${4//[$'\t\r\n']} - - local osname - osname=$(get_current_os_name) || return 1 - - local download_link=null - if [ "$shared_runtime" = true ]; then - download_link="$azure_feed/$azure_channel/Binaries/$specific_version/dotnet-$osname-$normalized_architecture.$specific_version.tar.gz" - else - download_link="$azure_feed/Sdk/$specific_version/dotnet-dev-$osname-$normalized_architecture.$specific_version.tar.gz" - fi - - echo "$download_link" - return 0 -} - -get_user_install_path() { - eval $invocation - - if [ ! -z "${DOTNET_INSTALL_DIR:-}" ]; then - echo $DOTNET_INSTALL_DIR - else - echo "$HOME/.dotnet" - fi - return 0 -} - -# args: -# install_dir - $1 -resolve_installation_path() { - eval $invocation - - local install_dir=$1 - if [ "$install_dir" = "" ]; then - local user_install_path=$(get_user_install_path) - say_verbose "resolve_installation_path: user_install_path=$user_install_path" - echo "$user_install_path" - return 0 - fi - - echo "$install_dir" - return 0 -} - -# args: -# install_root - $1 -get_installed_version_info() { - eval $invocation - - local install_root=$1 - local version_file=$(combine_paths "$install_root" "$local_version_file_relative_path") - say_verbose "Local version file: $version_file" - if [ ! -z "$version_file" ] | [ -r "$version_file" ]; then - local version_info="$(cat $version_file)" - echo "$version_info" - return 0 - fi - - say_verbose "Local version file not found." - return 0 -} - -# args: -# relative_or_absolute_path - $1 -get_absolute_path() { - eval $invocation - - local relative_or_absolute_path=$1 - echo $(cd $(dirname "$1") && pwd -P)/$(basename "$1") - return 0 -} - -# args: -# input_files - stdin -# root_path - $1 -# out_path - $2 -# override - $3 -copy_files_or_dirs_from_list() { - eval $invocation - - local root_path=$(remove_trailing_slash $1) - local out_path=$(remove_trailing_slash $2) - local override=$3 - local override_switch=$(if [ "$override" = false ]; then printf -- "-n"; fi) - - cat | uniq | while read -r file_path; do - local path=$(remove_beginning_slash ${file_path#$root_path}) - local target=$out_path/$path - if [ "$override" = true ] || (! ([ -d "$target" ] || [ -e "$target" ])); then - mkdir -p $out_path/$(dirname $path) - cp -R $override_switch $root_path/$path $target - fi - done -} - -# args: -# zip_path - $1 -# out_path - $2 -extract_dotnet_package() { - eval $invocation - - local zip_path=$1 - local out_path=$2 - - local temp_out_path=$(mktemp -d $temporary_file_template) - - local failed=false - tar -xzf "$zip_path" -C "$temp_out_path" > /dev/null || failed=true - - local folders_with_version_regex='^.*/[0-9]+\.[0-9]+[^/]+/' - find $temp_out_path -type f | grep -Eo $folders_with_version_regex | copy_files_or_dirs_from_list $temp_out_path $out_path false - find $temp_out_path -type f | grep -Ev $folders_with_version_regex | copy_files_or_dirs_from_list $temp_out_path $out_path true - - rm -rf $temp_out_path - - if [ "$failed" = true ]; then - say_err "Extraction failed" - return 1 - fi -} - -downloadcurl() { - eval $invocation - local remote_path=$1 - local out_path=${2:-} - - local failed=false - if [ -z "$out_path" ]; then - curl --retry 10 -sSL --create-dirs $remote_path || failed=true - else - curl --retry 10 -sSL --create-dirs -o $out_path $remote_path || failed=true - fi -} - -downloadwget() { - eval $invocation - local remote_path=$1 - local out_path=${2:-} - - local failed=false - if [ -z "$out_path" ]; then - wget -q --tries 10 $remote_path || failed=true - else - wget -v --tries 10 -O $out_path $remote_path || failed=true - fi -} - -# args: -# remote_path - $1 -# [out_path] - $2 - stdout if not provided -download() { - eval $invocation - - local remote_path=$1 - local out_path=${2:-} - - local failed=false - if machine_has "curl"; then - downloadcurl $remote_path $out_path || failed=true - elif machine_has "wget"; then - downloadwget $remote_path $out_path || failed=true - fi - if [ "$failed" = true ]; then - say_err "Download failed" - return 1 - fi -} - - -calculate_vars() { - eval $invocation - - azure_channel=$(get_azure_channel_from_channel "$channel") - say_verbose "azure_channel=$azure_channel" - - normalized_architecture=$(get_normalized_architecture_from_architecture "$architecture") - say_verbose "normalized_architecture=$normalized_architecture" - - specific_version=$(get_specific_version_from_version $azure_feed $azure_channel $normalized_architecture $version) - say_verbose "specific_version=$specific_version" - if [ -z "$specific_version" ]; then - say_err "Could not get version information." - return 1 - fi - - download_link=$(construct_download_link $azure_feed $azure_channel $normalized_architecture $specific_version) - say_verbose "download_link=$download_link" - - install_root=$(resolve_installation_path $install_dir) - say_verbose "install_root=$install_root" -} - -install_dotnet() { - eval $invocation - - if is_dotnet_package_installed $install_root "sdk" $specific_version; then - say ".NET SDK version $specific_version is already installed." - return 0 - fi - - mkdir -p $install_root - zip_path=$(mktemp $temporary_file_template) - say_verbose "Zip path: $zip_path" - - say "Downloading $download_link" - download "$download_link" $zip_path - say_verbose "Downloaded file exists and readable? $(if [ -r $zip_path ]; then echo "yes"; else echo "no"; fi)" - - say "Extracting zip" - extract_dotnet_package $zip_path $install_root - - return 0 -} - -local_version_file_relative_path="/.version" -bin_folder_relative_path="" -temporary_file_template="${TMPDIR:-/tmp}/dotnet.XXXXXXXXX" - -channel="rel-1.0.0" -version="Latest" -install_dir="" -architecture="" -debug_symbols=false -dry_run=false -no_path=false -azure_feed="https://dotnetcli.azureedge.net/dotnet" -uncached_feed="https://dotnetcli.blob.core.windows.net/dotnet" -verbose=false -shared_runtime=false -runtime_id="" - -while [ $# -ne 0 ] -do - name=$1 - case $name in - -c|--channel|-[Cc]hannel) - shift - channel=$1 - ;; - -v|--version|-[Vv]ersion) - shift - version="$1" - ;; - -i|--install-dir|-[Ii]nstall[Dd]ir) - shift - install_dir="$1" - ;; - --arch|--architecture|-[Aa]rch|-[Aa]rchitecture) - shift - architecture="$1" - ;; - --shared-runtime|-[Ss]hared[Rr]untime) - shared_runtime=true - ;; - --debug-symbols|-[Dd]ebug[Ss]ymbols) - debug_symbols=true - ;; - --dry-run|-[Dd]ry[Rr]un) - dry_run=true - ;; - --no-path|-[Nn]o[Pp]ath) - no_path=true - ;; - --verbose|-[Vv]erbose) - verbose=true - ;; - --azure-feed|-[Aa]zure[Ff]eed) - shift - azure_feed="$1" - ;; - --runtime-id|-[Rr]untime[Ii]d) - shift - runtime_id="$1" - ;; - -?|--?|-h|--help|-[Hh]elp) - script_name="$(basename $0)" - echo ".NET Tools Installer" - echo "Usage: $script_name [-c|--channel ] [-v|--version ] [-p|--prefix ]" - echo " $script_name -h|-?|--help" - echo "" - echo "$script_name is a simple command line interface for obtaining dotnet cli." - echo "" - echo "Options:" - echo " -c,--channel Download from the CHANNEL specified (default: $channel)." - echo " -Channel" - echo " -v,--version Use specific version, ``latest`` or ``lkg``. Defaults to ``latest``." - echo " -Version" - echo " -i,--install-dir Install under specified location (see Install Location below)" - echo " -InstallDir" - echo " --architecture Architecture of .NET Tools. Currently only x64 is supported." - echo " --arch,-Architecture,-Arch" - echo " --shared-runtime Installs just the shared runtime bits, not the entire SDK." - echo " -SharedRuntime" - echo " --debug-symbols,-DebugSymbols Specifies if symbols should be included in the installation." - echo " --dry-run,-DryRun Do not perform installation. Display download link." - echo " --no-path, -NoPath Do not set PATH for the current process." - echo " --verbose,-Verbose Display diagnostics information." - echo " --azure-feed,-AzureFeed Azure feed location. Defaults to $azure_feed" - echo " --runtime-id Installs the .NET Tools for the given platform (use linux-x64 for portable linux)." - echo " -RuntimeId" - echo " -?,--?,-h,--help,-Help Shows this help message" - echo "" - echo "Install Location:" - echo " Location is chosen in following order:" - echo " - --install-dir option" - echo " - Environmental variable DOTNET_INSTALL_DIR" - echo " - $HOME/.dotnet" - exit 0 - ;; - *) - say_err "Unknown argument \`$name\`" - exit 1 - ;; - esac - - shift -done - -check_min_reqs -calculate_vars -if [ "$dry_run" = true ]; then - say "Payload URL: $download_link" - say "Repeatable invocation: ./$(basename $0) --version $specific_version --channel $channel --install-dir $install_dir" - exit 0 -fi - -check_pre_reqs -install_dotnet - -bin_path=$(get_absolute_path $(combine_paths $install_root $bin_folder_relative_path)) -if [ "$no_path" = false ]; then - say "Adding to current process PATH: ``$bin_path``. Note: This change will be visible only when sourcing script." - export PATH=$bin_path:$PATH -else - say "Binaries of dotnet can be found in $bin_path" -fi - -say "Installation finished successfully." diff --git a/src/test/dir.proj b/src/test/dir.proj index 605dfaba..98b8dbc4 100644 --- a/src/test/dir.proj +++ b/src/test/dir.proj @@ -6,7 +6,6 @@ DetermineTestOutputDirectory; - InitBaseDotnetCli; RestoreTests; BuildTests; RunTests; @@ -26,23 +25,6 @@ - - - - $(TestsOutputDir)Tools - $(TestToolsLocalPath)/dotnetcli/dotnet.exe - $(TestToolsLocalPath)/dotnetcli/dotnet - - - - - - - - - @@ -69,7 +51,7 @@ DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 - @@ -82,7 +64,7 @@ - @@ -106,9 +88,9 @@ true $(TestsOutputDir)$(TestProjectFilename)-testResults.trx - Date: Wed, 10 May 2017 16:11:11 -0700 Subject: [PATCH 372/625] Add a versions file to the Microsoft.NETCore.App packages with repo hashes (#2330) Add a versions file to the Microsoft.NETCore.App packages with repo hashes --- .../src/Microsoft.NETCore.App.depproj | 40 ++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index e8368bf9..2ff4c8eb 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -74,6 +74,44 @@ + + + + $(PackagesDir)%(Reference.NuGetPackageId)/%(Reference.NuGetPackageVersion)/version.txt + + + $(_runtimePackagePath)/version.txt + + + + + + + + + + + + + <_VersionsFileLines Include="core-setup $(LatestCommit)" /> + <_VersionsFileLines Include="corefx $(CoreFxHash)" /> + <_VersionsFileLines Include="dotnet/versions/corefx $(CoreFxCurrentRef)" /> + <_VersionsFileLines Include="coreclr $(CoreClrHash)" Condition="'$(CoreClrHash)'!=''" /> + <_VersionsFileLines Include="dotnet/versions/coreclr $(CoreClrCurrentRef)" Condition="'$(CoreClrHash)'!=''" /> + + + + + + + + + + + @@ -218,7 +256,7 @@ - + From 451a2210ee8fb0f3e7ac30664f5dfe93a8860d58 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Wed, 10 May 2017 18:26:39 -0500 Subject: [PATCH 373/625] Remove project.json usage to restore locked host and use PackageReference instead. --- .../lockedhost/lockedhost.csproj | 13 +++++ src/sharedFramework/sharedFramework.proj | 47 ++++--------------- 2 files changed, 22 insertions(+), 38 deletions(-) create mode 100644 src/sharedFramework/lockedhost/lockedhost.csproj diff --git a/src/sharedFramework/lockedhost/lockedhost.csproj b/src/sharedFramework/lockedhost/lockedhost.csproj new file mode 100644 index 00000000..aaf2c49a --- /dev/null +++ b/src/sharedFramework/lockedhost/lockedhost.csproj @@ -0,0 +1,13 @@ + + + + false + true + + + + + + + + diff --git a/src/sharedFramework/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj index 46ddd742..cf842689 100644 --- a/src/sharedFramework/sharedFramework.proj +++ b/src/sharedFramework/sharedFramework.proj @@ -23,7 +23,7 @@ $(MSBuildThisFileDirectory)framework - /p:TargetFramework=$(Framework) /p:RuntimeIdentifier=$(TargetRid) /p:RuntimeFrameworkVersion=$(SharedFrameworkNugetVersion) + /p:TargetFramework=$(Framework) /p:RuntimeIdentifier=$(PackageTargetRid) /p:RuntimeFrameworkVersion=$(SharedFrameworkNugetVersion) @@ -126,48 +126,19 @@ - - - - - - - - - - - - - - - - $(IntermediateOutputRootPath)lockedHostTemp - - - - - - - - --source https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v3/index.json --fallbacksource $(PackagesOutDir) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" - - - - - - --output $(CoreHostLockedDir) --no-build -r $(PackageTargetRid) + $(MSBuildThisFileDirectory)lockedhost + /p:TargetFramework=$(Framework) /p:RuntimeIdentifier=$(PackageTargetRid) /p:HostResolverVersion=$(HostResolverVersion) /p:HostVersion=$(HostVersion) - + + + From b9db1465c73fc4b0adcf2e089f61f9e9a02177c5 Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Wed, 10 May 2017 17:22:36 -0700 Subject: [PATCH 374/625] Move ProjectJsonFiles definition into dependencies.props Project.json files are not long for this world, but while they still exist, move the item group that defines them (and is used by the auto-update logic) into dependencies.props. This makes it easier for the composed source build to use the auto-update logic as well. --- dependencies.props | 6 +++++- dir.props | 2 -- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/dependencies.props b/dependencies.props index 40129983..4573d2c2 100644 --- a/dependencies.props +++ b/dependencies.props @@ -55,5 +55,9 @@ MicrosoftNETCoreRuntimeCoreCLRPackageVersion Microsoft.NETCore.Runtime.CoreCLR + + + + - \ No newline at end of file + diff --git a/dir.props b/dir.props index d3ad0883..564c2a36 100644 --- a/dir.props +++ b/dir.props @@ -137,8 +137,6 @@ <_DnuExcludeProjectJsonFiles Include="$(MSBuildThisFileDirectory)Bin\**\project.json" /> <_ProjectJsonFiles Include="$(MSBuildThisFileDirectory)**\project.json" Exclude="@(_DnuExcludeProjectJsonFiles)" /> - - %(AdditionalArgs) --disable-parallel From 7a6bbaf5afef5bccbbf6a34d7560c231ee1c81af Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Wed, 10 May 2017 17:31:10 -0700 Subject: [PATCH 375/625] Add the ability to pass an additional source on the command line This is similar to what we have in corefx and is a way to add a local package source to the build without having to hack dir.props every time. --- dir.props | 1 + 1 file changed, 1 insertion(+) diff --git a/dir.props b/dir.props index 564c2a36..f8a286b8 100644 --- a/dir.props +++ b/dir.props @@ -122,6 +122,7 @@ + From 8230a8dbb4da222e9947dd38df60d00b00950cf0 Mon Sep 17 00:00:00 2001 From: karajas Date: Thu, 11 May 2017 00:40:09 +0000 Subject: [PATCH 376/625] Fix uploading of deb files --- publish/dir.targets | 8 +++++--- publish/publish.proj | 2 +- tools-local/scripts/publish/repoapi_client.sh | 12 ++++++------ 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/publish/dir.targets b/publish/dir.targets index 0d3ae1c6..63b022f2 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -1,5 +1,7 @@ + + $(Channel)/Binaries/$(SharedFrameworkNugetVersion) @@ -30,13 +32,13 @@ - + dotnet-host - + dotnet-hostfxr - + dotnet-sharedframework diff --git a/publish/publish.proj b/publish/publish.proj index bcfa8e6b..05db67ea 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -73,7 +73,7 @@ - + Date: Wed, 10 May 2017 20:20:02 -0500 Subject: [PATCH 377/625] Add workaround for https://github.com/NuGet/Home/issues/4424 --- src/sharedFramework/sharedFramework.proj | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/sharedFramework/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj index cf842689..f1c70e9b 100644 --- a/src/sharedFramework/sharedFramework.proj +++ b/src/sharedFramework/sharedFramework.proj @@ -58,6 +58,9 @@ DestinationFiles="$(SharedFrameworkNameAndVersionRoot)\$(SharedFrameworkName).deps.json" /> + + From 2e9199993daa7af9830ea69c05e16f1c8645a7c0 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Wed, 10 May 2017 19:08:07 -0700 Subject: [PATCH 378/625] Fix RIDPlat computation (#2348) * Fix RIDPlat computation * PR Feedback --- src/corehost/Windows/gen-buildsys-win.bat | 16 +++++++++++----- src/corehost/build.cmd | 14 ++++++++------ src/corehost/build.proj | 1 + src/corehost/build.sh | 15 +++++++++------ 4 files changed, 29 insertions(+), 17 deletions(-) diff --git a/src/corehost/Windows/gen-buildsys-win.bat b/src/corehost/Windows/gen-buildsys-win.bat index d5fdd98d..6ceb951c 100644 --- a/src/corehost/Windows/gen-buildsys-win.bat +++ b/src/corehost/Windows/gen-buildsys-win.bat @@ -5,7 +5,7 @@ rem This file invokes cmake and generates the build system for windows. set argC=0 for %%x in (%*) do Set /A argC+=1 -if NOT %argC%==8 GOTO :USAGE +if NOT %argC%==9 GOTO :USAGE if %1=="/?" GOTO :USAGE setlocal @@ -14,10 +14,11 @@ set __sourceDir=%~dp0.. set __VSString=14 2015 :: Set the target architecture to a format cmake understands. ANYCPU defaults to x64 -if /i "%3" == "x86" (set cm_BaseRid=win7-x86&&set cm_Arch=I386&&set __VSString=%__VSString%) -if /i "%3" == "x64" (set cm_BaseRid=win7-x64&&set cm_Arch=AMD64&&set __VSString=%__VSString% Win64) -if /i "%3" == "arm" (set cm_BaseRid=win8-arm&&set cm_Arch=ARM&&set __VSString=%__VSString% ARM) -if /i "%3" == "arm64" (set cm_BaseRid=win10-arm64&&set cm_Arch=ARM64&&set __VSString=%__VSString% Win64) +set __RIDArch=%3 +if /i "%3" == "x86" (set cm_BaseRid=win7&&set cm_Arch=I386&&set __VSString=%__VSString%) +if /i "%3" == "x64" (set cm_BaseRid=win7&&set cm_Arch=AMD64&&set __VSString=%__VSString% Win64) +if /i "%3" == "arm" (set cm_BaseRid=win8&&set cm_Arch=ARM&&set __VSString=%__VSString% ARM) +if /i "%3" == "arm64" (set cm_BaseRid=win10&&set cm_Arch=ARM64&&set __VSString=%__VSString% Win64) set __LatestCommit=%4 set __HostVersion=%5 @@ -25,6 +26,11 @@ set __AppHostVersion=%6 set __HostResolverVersion=%7 set __HostPolicyVersion=%8 +:: Form the base RID to be used if we are doing a portable build +if /i "%9" == "1" (set cm_BaseRid=win) +set cm_BaseRid=%cm_BaseRid%-%__RIDArch% +echo "Computed RID for native build is %cm_BaseRid%" + if defined CMakePath goto DoGen :: Eval the output from probe-win1.ps1 diff --git a/src/corehost/build.cmd b/src/corehost/build.cmd index 683b873a..4ef41bec 100644 --- a/src/corehost/build.cmd +++ b/src/corehost/build.cmd @@ -14,6 +14,7 @@ set __VCBuildArch=x86_amd64 set CMAKE_BUILD_TYPE=Debug set "__LinkArgs= " set "__LinkLibraries= " +set __PortableBuild=0 :Arg_Loop if [%1] == [] goto :ToolsVersion @@ -27,13 +28,14 @@ if /i [%1] == [x64] ( set __BuildArch=x64&&set __VCBuildArch=x86_amd64&& if /i [%1] == [amd64] ( set __BuildArch=x64&&set __VCBuildArch=x86_amd64&&shift&goto Arg_Loop) if /i [%1] == [arm64] ( set __BuildArch=arm64&&set __VCBuildArch=arm64&&shift&goto Arg_Loop) +if /i [%1] == [portable] ( set __PortableBuild=1&&shift&goto Arg_Loop) if /i [%1] == [rid] ( set __TargetRid=%2&&shift&&shift&goto Arg_Loop) if /i [%1] == [toolsetDir] ( set "__ToolsetDir=%2"&&shift&&shift&goto Arg_Loop) -if /i [%1] == [hostver] (set __HostVersion=%2&&shift&&shift&goto Arg_Loop) -if /i [%1] == [apphostver] (set __AppHostVersion=%2&&shift&&shift&goto Arg_Loop) -if /i [%1] == [fxrver] (set __HostResolverVersion=%2&&shift&&shift&goto Arg_Loop) -if /i [%1] == [policyver] (set __HostPolicyVersion=%2&&shift&&shift&goto Arg_Loop) -if /i [%1] == [commit] (set __CommitSha=%2&&shift&&shift&goto Arg_Loop) +if /i [%1] == [hostver] (set __HostVersion=%2&&shift&&shift&goto Arg_Loop) +if /i [%1] == [apphostver] (set __AppHostVersion=%2&&shift&&shift&goto Arg_Loop) +if /i [%1] == [fxrver] (set __HostResolverVersion=%2&&shift&&shift&goto Arg_Loop) +if /i [%1] == [policyver] (set __HostPolicyVersion=%2&&shift&&shift&goto Arg_Loop) +if /i [%1] == [commit] (set __CommitSha=%2&&shift&&shift&goto Arg_Loop) shift goto :Arg_Loop @@ -108,7 +110,7 @@ if /i "%__BuildArch%" == "arm64" ( echo Calling "%__nativeWindowsDir%\gen-buildsys-win.bat %~dp0 %__VSVersion% %__BuildArch% %__CommitSha% %__HostVersion% %__AppHostVersion% %__HostResolverVersion% %__HostPolicyVersion%" pushd "%__IntermediatesDir%" -call "%__nativeWindowsDir%\gen-buildsys-win.bat" %~dp0 %__VSVersion% %__BuildArch% %__CommitSha% %__HostVersion% %__AppHostVersion% %__HostResolverVersion% %__HostPolicyVersion% +call "%__nativeWindowsDir%\gen-buildsys-win.bat" %~dp0 %__VSVersion% %__BuildArch% %__CommitSha% %__HostVersion% %__AppHostVersion% %__HostResolverVersion% %__HostPolicyVersion% %__PortableBuild% popd :CheckForProj diff --git a/src/corehost/build.proj b/src/corehost/build.proj index a7b844d3..42055a2b 100644 --- a/src/corehost/build.proj +++ b/src/corehost/build.proj @@ -50,6 +50,7 @@ Targets="GenerateVersionHeader" /> $(ConfigurationGroup) $(TargetArchitecture) apphostver $(AppHostVersion) hostver $(HostVersion) fxrver $(HostResolverVersion) policyver $(HostPolicyVersion) commit $(LatestCommit) rid $(TargetRid) + $(BuildArgs) portable toolsetdir $(NativeToolsetDir) diff --git a/src/corehost/build.sh b/src/corehost/build.sh index 089831bf..b8ddbb83 100755 --- a/src/corehost/build.sh +++ b/src/corehost/build.sh @@ -34,9 +34,13 @@ init_rid_plat() fi fi + if [ "$(uname -s)" == "Darwin" ]; then + export __rid_plat=osx.10.12 + fi + if [ $__linkPortable == 1 ]; then if [ "$(uname -s)" == "Darwin" ]; then - export __rid_plat="osx" + export __rid_plat="osx" else export __rid_plat="linux" fi @@ -80,6 +84,7 @@ __CrossBuild=0 __commit_hash= __portableBuildArgs= __configuration=Debug +__linkPortable=0 while [ "$1" != "" ]; do lowerI="$(echo $1 | awk '{print tolower($0)}')" @@ -118,6 +123,7 @@ while [ "$1" != "" ]; do ;; -portable) __portableBuildArgs="-DCLI_CMAKE_PORTABLE_BUILD=1" + __linkPortable=1 ;; --cross) __CrossBuild=1 @@ -151,11 +157,7 @@ __cmake_defines="${__cmake_defines} ${__arch_define}" # __rid_plat is the base RID that corehost is shipped for, effectively, the name of the folder in "runtimes/{__rid_plat}/native/" inside the nupkgs. __rid_plat= -if [ "$(uname -s)" == "Darwin" ]; then - __rid_plat=osx.10.12 -else - init_rid_plat -fi +init_rid_plat if [ -z $__rid_plat ]; then echo "Unknown base rid (eg.: osx.10.12, ubuntu.14.04) being targeted" @@ -169,6 +171,7 @@ fi __build_arch_lowcase=$(echo "$__build_arch" | tr '[:upper:]' '[:lower:]') __base_rid=$__rid_plat-$__build_arch_lowcase +echo "Computed RID for native build is $__base_rid" export __CrossToolChainTargetRID=$__base_rid # Set up the environment to be used for building with clang. From 1609a309659379a87627679f971ce468c1bae8cc Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Wed, 10 May 2017 20:41:54 -0700 Subject: [PATCH 379/625] Refactor deb installer props --- buildpipeline/Core-Setup-Linux-BT.json | 25 ++++++++++++++++--- buildpipeline/Core-Setup-Publish.json | 7 +++++- dir.props | 6 +++++ publish/dir.props | 7 +++++- publish/dir.targets | 6 ++--- publish/publish.proj | 5 ++-- src/pkg/packaging/dir.props | 7 +++--- tools-local/scripts/publish/repoapi_client.sh | 5 ---- 8 files changed, 48 insertions(+), 20 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index b705ff6a..e741e9aa 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -177,7 +177,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DistroRid) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) $(PB_DebianKeys)", + "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) $(PB_DebianKeys)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -293,13 +293,30 @@ "CONNECTION_STRING": { "value": "PassedViaPipeBuild" }, + "DEB_REPO_PASSWORD": { + "value": null, + "isSecret": true + }, + "PB_DebianId_ubuntu1404-x64": { + "value": null, + "isSecret": true + }, + "PB_DebianId_debian8-x64": { + "value": null, + "isSecret": true + }, + "DebianId_ubuntu1604-x64": { + "value": null, + "isSecret": true + }, + "PB_DebianId_ubuntu1610-x64": { + "value": null, + "isSecret": true + }, "PUBLISH_TO_AZURE_BLOB": { "value": "true", "allowOverride": true }, - "GITHUB_PASSWORD": { - "value": "PassedViaPipeBuild" - }, "DOTNET_BUILD_CONTAINER_TAG": { "value": "core-setup-$(PB_DockerOS)-$(Build.BuildId)" }, diff --git a/buildpipeline/Core-Setup-Publish.json b/buildpipeline/Core-Setup-Publish.json index d6db420d..2ad1b60a 100644 --- a/buildpipeline/Core-Setup-Publish.json +++ b/buildpipeline/Core-Setup-Publish.json @@ -241,7 +241,12 @@ "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_API_KEY": { - "value": "PassedViaPipeBuild" + "value": null, + "isSecret": true + }, + "GITHUB_PASSWORD": { + "value": null, + "isSecret": true }, "PB_DistroRid": { "value": "win7-x64" diff --git a/dir.props b/dir.props index d3ad0883..7ad0ba06 100644 --- a/dir.props +++ b/dir.props @@ -312,6 +312,12 @@ .exe $(InstallerExtension) + + + $(PackagesOutDir)dotnet-host- + $(PackagesOutDir)dotnet-hostfxr- + $(PackagesOutDir)dotnet-sharedframework- + diff --git a/publish/dir.props b/publish/dir.props index d15690e1..54f84d71 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -6,7 +6,12 @@ dotnet 3600 - + + + $(DistroRid).$(SharedFrameworkNugetVersion) + $(DistroRid).$(HostResolverVersion) + + diff --git a/publish/dir.targets b/publish/dir.targets index 63b022f2..3b356969 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -32,13 +32,13 @@ - + dotnet-host - + dotnet-hostfxr - + dotnet-sharedframework diff --git a/publish/publish.proj b/publish/publish.proj index 05db67ea..7e809097 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -51,8 +51,7 @@ + DependsOnTargets="GenerateDebRepoFiles"> $(DebianId_ubuntu1404-x64) @@ -73,7 +72,7 @@ - + $(PackageTargetRid).$(SharedFrameworkNugetVersion) + $(PackageTargetRid).$(HostResolverVersion) @@ -26,9 +27,9 @@ $(PackagesOutDir)dotnet-$(ProductMoniker)$(CombinedInstallerExtension) $(PackagesOutDir)dotnet-$(ProductMoniker)-engine.exe - $(PackagesOutDir)dotnet-host-$(ProductMoniker)$(InstallerExtension) - $(PackagesOutDir)dotnet-hostfxr-$(PackageTargetRid).$(HostResolverVersion)$(InstallerExtension) - $(PackagesOutDir)dotnet-sharedframework-$(ProductMoniker)$(InstallerExtension) + $(SharedHostInstallerStart)$(ProductMoniker)$(InstallerExtension) + $(HostFxrInstallerStart)$(HostResolverVersionMoniker)$(InstallerExtension) + $(SharedFrameworkInstallerStart)$(ProductMoniker)$(InstallerExtension) diff --git a/tools-local/scripts/publish/repoapi_client.sh b/tools-local/scripts/publish/repoapi_client.sh index 1f7de1df..476726cf 100644 --- a/tools-local/scripts/publish/repoapi_client.sh +++ b/tools-local/scripts/publish/repoapi_client.sh @@ -5,11 +5,6 @@ # # This is a VERY basic script for Create/Delete operations on repos and packages -# -# Environment Dependencies: -# $REPO_SERVER -# $REPO_USER -# $REPO_PASS cmd=$5 urls=urls.txt From 64a0b92cb524427a620f9760a4f02b41444eb089 Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Wed, 10 May 2017 11:02:14 -0700 Subject: [PATCH 380/625] Use run.sh from build.sh "the right way" Previously, we did some argument parsing in build.sh to construct a command line to pass to run.sh which would do additional parsing and then actually invoke MSBuild. This change cleans things up so build.sh works the same way as build.cmd, a simple wrapper around run.sh As part of this work, we need to update our build configurations since the arguments we pass to build.sh have now changed. Fixes #2313 --- build.sh | 220 +------------------------ buildpipeline/Core-Setup-Linux-BT.json | 4 +- buildpipeline/Core-Setup-OSX-BT.json | 6 +- buildpipeline/pipeline.json | 8 +- config.json | 4 +- netci.groovy | 11 +- 6 files changed, 16 insertions(+), 237 deletions(-) diff --git a/build.sh b/build.sh index 416b8459..1f8e693d 100755 --- a/build.sh +++ b/build.sh @@ -3,51 +3,8 @@ # Copyright (c) .NET Foundation and contributors. All rights reserved. # Licensed under the MIT license. See LICENSE file in the project root for full license information. # - -# Set OFFLINE environment variable to build offline - set -e -initHostDistroRid() -{ - if [ "$__HostOS" == "Linux" ]; then - if [ ! -e /etc/os-release ]; then - echo "WARNING: Can not determine runtime id for current distro." - __HostDistroRid="" - else - source /etc/os-release - __HostDistroRid="$ID.$VERSION_ID-$__HostArch" - fi - fi -} - -initTargetDistroRid() -{ - if [ $__CrossBuild == 1 ]; then - if [ "$__BuildOS" == "Linux" ]; then - if [ ! -e $ROOTFS_DIR/etc/os-release ]; then - echo "WARNING: Can not determine runtime id for current distro." - export __DistroRid="" - else - source $ROOTFS_DIR/etc/os-release - export __DistroRid="$ID.$VERSION_ID-$__BuildArch" - fi - fi - else - export __DistroRid="$__HostDistroRid" - fi - - # Portable builds target the base RID - if [ $__PortableBuild == 1 ]; then - if [ "$__BuildOS" == "Linux" ]; then - export __DistroRid="linux-$__BuildArch" - elif [ "$__BuildOS" == "OSX" ]; then - export __DistroRid="osx-$__BuildArch" - fi - fi -} - - SOURCE="${BASH_SOURCE[0]}" while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" @@ -64,179 +21,4 @@ if [ -z "$HOME" ] || [ ! -d "$HOME" ]; then mkdir -p $HOME fi - -# Use uname to determine what the CPU is. - -CPUName=$(uname -p) - -# Some Linux platforms report unknown for platform, but the arch for machine. - -if [ "$CPUName" == "unknown" ]; then - - CPUName=$(uname -m) - -fi - - - -case $CPUName in - i686) - echo "Unsupported CPU $CPUName detected, build might not succeed!" - __BuildArch=x86 - __HostArch=x86 - ;; - - x86_64) - __BuildArch=x64 - __HostArch=x64 - ;; - - armv7l) - echo "Unsupported CPU $CPUName detected, build might not succeed!" - __BuildArch=arm - __HostArch=arm - ;; - - aarch64) - __BuildArch=arm64 - __HostArch=arm64 - ;; - - *) - echo "Unknown CPU $CPUName detected, configuring as if for x64" - __BuildArch=x64 - __HostArch=x64 - ;; -esac - -# Use uname to determine what the OS is. -OSName=$(uname -s) -case $OSName in - Linux) - __BuildOS=Linux - __HostOS=Linux - ;; - - Darwin) - __BuildOS=OSX - __HostOS=OSX - ;; - - FreeBSD) - __BuildOS=FreeBSD - __HostOS=FreeBSD - ;; - - OpenBSD) - __BuildOS=OpenBSD - __HostOS=OpenBSD - ;; - - NetBSD) - __BuildOS=NetBSD - __HostOS=NetBSD - ;; - - SunOS) - __BuildOS=SunOS - __HostOS=SunOS - ;; - - *) - echo "Unsupported OS $OSName detected, configuring as if for Linux" - __BuildOS=Linux - __HostOS=Linux - ;; -esac - -__BuildType=Debug -__BuildArch=x64 -__SkipTests=false -__DisableCrossgen=false -__VerboseBuild=0 -__CrossBuild=0 -__PortableBuild=0 - -while :; do - if [ $# -le 0 ]; then - break - fi - - lowerI="$(echo $1 | awk '{print tolower($0)}')" - case $lowerI in - -\?|-h|--help) - usage - exit 1 - ;; - - x86) - __BuildArch=x86 - ;; - - x64) - __BuildArch=x64 - ;; - - arm) - __BuildArch=arm - ;; - - armel) - __BuildArch=armel - ;; - - arm64) - __BuildArch=arm64 - ;; - - debug) - __BuildType=Debug - ;; - - release) - __BuildType=Release - ;; - - cross) - __CrossBuild=1 - ;; - - -portable) - __PortableBuild=1 - ;; - - verbose) - __VerboseBuild=1 - ;; - - skiptests) - __SkipTests=true - ;; - disablecrossgen) - __DisableCrossgen=true - ;; - esac - - shift -done - -# init the host distro name -initHostDistroRid - -# init the target distro name -initTargetDistroRid - -__RunArgs="-TargetArchitecture=$__BuildArch -ConfigurationGroup=$__BuildType -OSGroup=$__HostOS -DistroRid=$__DistroRid -SkipTests=$__SkipTests -DisableCrossgen=$__DisableCrossgen" - -if [ $__PortableBuild == 1 ]; then - __RunArgs="$__RunArgs -PortableBuild=True" -fi - -# Configure environment if we are doing a verbose build -if [ $__VerboseBuild == 1 ]; then - export VERBOSE=1 - __RunArgs="$__RunArgs -verbose" -fi - -echo "$__RunArgs" -$DIR/run.sh build $__RunArgs \ No newline at end of file +$DIR/run.sh build "$@" diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index b705ff6a..545eed30 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -287,7 +287,7 @@ "allowOverride": true }, "PB_BuildArguments": { - "value": "--skip-prereqs --configuration $(BuildConfiguration) $(PB_AdditionalBuildArguments)", + "value": "-ConfigurationGroup=$(BuildConfiguration) $(PB_AdditionalBuildArguments)", "allowOverride": true }, "CONNECTION_STRING": { @@ -455,4 +455,4 @@ "state": "wellFormed", "revision": 418097676 } -} \ No newline at end of file +} diff --git a/buildpipeline/Core-Setup-OSX-BT.json b/buildpipeline/Core-Setup-OSX-BT.json index e5521940..a7be705a 100644 --- a/buildpipeline/Core-Setup-OSX-BT.json +++ b/buildpipeline/Core-Setup-OSX-BT.json @@ -194,7 +194,7 @@ "allowOverride": true }, "PB_BuildArguments": { - "value": "--skip-prereqs --configuration $(BuildConfiguration) $(PB_PortableBuildArg)", + "value": "-ConfigurationGroup=$(BuildConfiguration) $(PB_PortableBuildArg)", "allowOverride": true }, "CONNECTION_STRING": { @@ -243,7 +243,7 @@ "value": "x64" }, "PB_PortableBuildArg": { - "value": "-portable" + "value": "-PortableBuild=true" }, "PB_PortableBuild": { "value": "true" @@ -311,4 +311,4 @@ "state": "wellFormed", "revision": 418097676 } -} \ No newline at end of file +} diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 93ed732a..1940eb8a 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -82,7 +82,7 @@ "Parameters": { "PB_DistroRid": "rhel.7.2-x64", "PB_DockerTag": "rhel7_prereqs_2", - "PB_AdditionalBuildArguments":"-portable", + "PB_AdditionalBuildArguments":"-PortableBuild=true", "PB_PortableBuild": "true" }, "ReportingParameters": { @@ -98,7 +98,7 @@ "PB_DistroRid": "ubuntu.14.04-arm", "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", "PB_TargetArchitecture": "arm", - "PB_AdditionalBuildArguments":"arm cross disablecrossgen -portable skiptests", + "PB_AdditionalBuildArguments":"-TargetArchitecture=arm -DistroRid=linux-arm -DisableCrossgen=true -PortableBuild=true -SkipTests=true", "PB_CrossBuildArgs": "-e ROOTFS_DIR ", "PB_PortableBuild": "true" }, @@ -112,7 +112,7 @@ { "Name": "Core-Setup-OSX-BT", "Parameters": { - "PB_PortableBuildArg": "-portable", + "PB_PortableBuildArg": "-PortableBuild=true", "PB_PortableBuild": "true" }, "ReportingParameters": { @@ -209,4 +209,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/config.json b/config.json index 7805ebe4..87255ec4 100644 --- a/config.json +++ b/config.json @@ -4,7 +4,7 @@ "description": "OS Group for result binaries.", "valueType": "property", "values": ["Windows_NT", "Linux", "OSX", "FreeBSD", "NetBSD"], - "defaultValue": "Windows_NT" + "defaultValue": "${OSName}" }, "RestoreDuringBuild": { "description": "Enables/Disables the restoration of packages.", @@ -34,7 +34,7 @@ "description": "Specifies the distro rid for Unix OS.", "valueType": "property", "values": [], - "defaultValue": "${OSRid}" + "defaultValue": "${OSRid}-${CPUArch}" }, "TargetArchitecture":{ "description": "Build for the specified architecture (x64, x86 (supported only on Windows), arm, or arm64, default: x64)", diff --git a/netci.groovy b/netci.groovy index 464ab6b8..232e06f3 100644 --- a/netci.groovy +++ b/netci.groovy @@ -29,8 +29,6 @@ platformList.each { platform -> def dockerContainer = '' def dockerWorkingDirectory = "/src/core-setup" def dockerCommand = '' - def portableArgs = '' - // Calculate build command if (os == 'Windows_NT') { buildCommand = ".\\build.cmd -ConfigurationGroup=${configuration} -TargetArchitecture=${architecture}" @@ -46,18 +44,17 @@ platformList.each { platform -> else if (os == 'Ubuntu16.04') { dockerContainer = "ubuntu-16.04-cross-ef0ac75-20175511035548" } - portableArgs = " -portable cross skiptests disablecrossgen" dockerCommand = "docker run --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" - buildCommand = "${dockerCommand} ./build.sh ${configuration} ${architecture}${portableArgs}" + buildCommand = "${dockerCommand} ./build.sh -ConfigurationGroup=${configuration} -TargetArchitecture=${architecture} -PortableBuild=true -DistroRid=linux-${architecture} -SkipTests=true -DisableCrossgen=true" } else if (os == "Ubuntu") { dockerContainer = "ubuntu-14.04-debpkg-e5cf912-20175003025046" dockerCommand = "docker run --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" - buildCommand = "${dockerCommand} ./build.sh ${configuration} ${architecture}${portableArgs}" + buildCommand = "${dockerCommand} ./build.sh -ConfigurationGroup=${configuration} -TargetArchitecture=${architecture}" } else if (os == "PortableLinux") { // Jenkins non-Ubuntu CI machines don't have docker - buildCommand = "./build.sh ${configuration} ${architecture} -portable" + buildCommand = "./build.sh -ConfigurationGroup=${configuration} -TargetArchitecture=${architecture} -PortableBuild=true" // Trigger a portable Linux build that runs on RHEL7.2 osForGHTrigger = "PortableLinux" @@ -65,7 +62,7 @@ platformList.each { platform -> } else { // Jenkins non-Ubuntu CI machines don't have docker - buildCommand = "./build.sh ${configuration} ${architecture}" + buildCommand = "./build.sh -ConfigurationGroup=${configuration} -TargetArchitecture=${architecture}" } def newJob = job(Utilities.getFullJobName(project, jobName, isPR)) { From b1aaa1d607c7934f45f3e2bd8a345606e2627176 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Wed, 10 May 2017 22:10:05 -0700 Subject: [PATCH 381/625] Move DebianKeys into publish arguments --- buildpipeline/Core-Setup-Linux-BT.json | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index e741e9aa..d37bffbf 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -177,7 +177,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) $(PB_DebianKeys)", + "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -404,9 +404,6 @@ }, "PB_DebRepoServer": { "value": "azure-apt-cat.cloudapp.net" - }, - "PB_DebianKeys": { - "value": "/p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)" } }, "demands": [ From 9bb6c6d3a73a6d75a846c164aa87c8b05a73aab9 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Wed, 10 May 2017 22:20:43 -0700 Subject: [PATCH 382/625] Add OfficialBuildId to config.json --- config.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/config.json b/config.json index 87255ec4..4afb2f33 100644 --- a/config.json +++ b/config.json @@ -54,6 +54,12 @@ "values": ["Release", "Debug"], "defaultValue": "Debug" }, + "OfficialBuildId": { + "description": "Specifies the SeedDate and the revision of the build to generate the version of the libraries.", + "valueType": "property", + "values": [], + "defaultValue": "" + }, "MsBuildLogging": { "description": "MsBuild logging options.", "valueType": "passThrough", From 89934511694e67b0aae5d3fda80d55e71df18e12 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Wed, 10 May 2017 23:23:02 -0700 Subject: [PATCH 383/625] Refactor order of targets that decide RepoId for Debian push --- buildpipeline/Core-Setup-Linux-BT.json | 2 +- publish/dir.targets | 22 ++++++++++++++++++++++ publish/publish.proj | 20 -------------------- 3 files changed, 23 insertions(+), 21 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index d37bffbf..2cd38d89 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -177,7 +177,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)", + "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } diff --git a/publish/dir.targets b/publish/dir.targets index 3b356969..42883eac 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -31,6 +31,28 @@ + + + + $(DebianId_ubuntu1404-x64) + + + $(DebianId_debian8-x64) + + + $(DebianId_ubuntu1604-x64) + + + $(DebianId_ubuntu1610-x64) + + + + $([System.String]::Copy($(DistroRid)).Replace('.', '')) + %(RepoIds.Key) + + + dotnet-host diff --git a/publish/publish.proj b/publish/publish.proj index 7e809097..d5d586fc 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -52,26 +52,6 @@ - - - $(DebianId_ubuntu1404-x64) - - - $(DebianId_debian8-x64) - - - $(DebianId_ubuntu1604-x64) - - - $(DebianId_ubuntu1610-x64) - - - - $([System.String]::Copy($(DistroRid)).Replace('.', '')) - %(RepoIds.Key) - - From 0a0cb1843a2234d9dad1d9067a2fef0226ca07b6 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Thu, 11 May 2017 08:28:25 -0700 Subject: [PATCH 384/625] Update Standard to preview2-25311-01 (#2359) --- dependencies.props | 2 +- .../projects/Microsoft.NETCore.App/src/project.json.template | 2 +- .../src/project.json.template | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dependencies.props b/dependencies.props index 4573d2c2..0c4ee3f4 100644 --- a/dependencies.props +++ b/dependencies.props @@ -11,7 +11,7 @@ a44d1158c8f2cf53d54cf35567f2ec59057b3093 a44d1158c8f2cf53d54cf35567f2ec59057b3093 - a44d1158c8f2cf53d54cf35567f2ec59057b3093 + 1117fab956560c88ebb3fbaa339b6fa04c29a364 diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template b/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template index ea27d431..2dbe92fd 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template +++ b/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template @@ -4,7 +4,7 @@ "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25309-01", "Microsoft.DiaSymReader.Native": "1.4.1", "Microsoft.NETCore.Platforms": "2.0.0-preview2-25310-01", - "NETStandard.Library": "2.0.0-preview2-25310-01" + "NETStandard.Library": "2.0.0-preview2-25311-01" }, "frameworks": { "netcoreapp2.0": {} diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template index bbaee232..295a0f29 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template @@ -4,7 +4,7 @@ "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25310-01", "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25309-01", "Microsoft.NETCore.Platforms": "2.0.0-preview2-25310-01", - "NETStandard.Library": "2.0.0-preview2-25310-01", + "NETStandard.Library": "2.0.0-preview2-25311-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", From eba7340b1ac90d7e30c96facb9cba76738bacdbd Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Thu, 11 May 2017 09:25:45 -0700 Subject: [PATCH 385/625] Allow publish to run as privileged --- buildpipeline/Core-Setup-Linux-BT.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 2cd38d89..21be68d6 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -177,7 +177,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)", + "arguments": "run --privileged --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -305,7 +305,7 @@ "value": null, "isSecret": true }, - "DebianId_ubuntu1604-x64": { + "PB_DebianId_ubuntu1604-x64": { "value": null, "isSecret": true }, From afae36dad041c127441843615066b90f73495ed8 Mon Sep 17 00:00:00 2001 From: karajas Date: Thu, 11 May 2017 17:08:03 +0000 Subject: [PATCH 386/625] Fix repoapi_client.sh permissions --- tools-local/scripts/publish/repoapi_client.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 tools-local/scripts/publish/repoapi_client.sh diff --git a/tools-local/scripts/publish/repoapi_client.sh b/tools-local/scripts/publish/repoapi_client.sh old mode 100644 new mode 100755 From 53044470349c71d84a70e54e41cc51b479c1efa3 Mon Sep 17 00:00:00 2001 From: karajas Date: Thu, 11 May 2017 17:52:32 +0000 Subject: [PATCH 387/625] Allow repoapi_client.sh to use wget instead of curl --- tools-local/scripts/publish/repoapi_client.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tools-local/scripts/publish/repoapi_client.sh b/tools-local/scripts/publish/repoapi_client.sh index 476726cf..c11213fc 100644 --- a/tools-local/scripts/publish/repoapi_client.sh +++ b/tools-local/scripts/publish/repoapi_client.sh @@ -68,7 +68,8 @@ function AddPackage fi packageUrl=$(grep "sourceUrl" $packageFile | head -n 1 | awk '{print $2}') echo "Adding package to $server [$packageUrl]" - curl -i -k "$baseurl/v1/packages" --data @$packageFile -H "Content-Type: application/json" + #Workaround no curl on image + wget --header "Content-Type: application/json" --post-file $packageFile --no-check-certificate "$baseurl/v1/packages" BailIf $? echo "" } @@ -186,4 +187,4 @@ else echo "-addpkgs [FILENAME] : Add packages to repo using urls contained in FILENAME" echo "-delrepo REPOID : Delete the specified repo by ID" echo "-delpkg PKGID : Delete the specified package by ID" -fi \ No newline at end of file +fi From 59a93bf7cf67a8888328247554f0f008e621a754 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Thu, 11 May 2017 11:31:44 -0700 Subject: [PATCH 388/625] Pass CrossBuild correctly to get linux Arm build. (#2350) * Pass CrossBuild correctly to get linux Arm build. --- README.md | 2 +- buildpipeline/pipeline.json | 2 +- config.json | 6 ++++++ netci.groovy | 6 +++++- src/corehost/build.proj | 1 + 5 files changed, 14 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 685f481d..fbadcf4c 100644 --- a/README.md +++ b/README.md @@ -38,7 +38,7 @@ Daily Builds | **Windows (arm64)** | [![][win-arm64-badge-master]][win-arm64-version-master]
[zip][win-arm64-zip-master]
[Symbols (zip)][win-arm64-symbols-zip-master] | N/A | N/A | | **Mac OS X (x64)** | [![][osx-badge-master]][osx-version-master]
[Installer][osx-installer-master]
[tar.gz][osx-targz-master]
[Symbols (tar.gz)][osx-symbols-targz-master] | [![][osx-badge-1.1.X]][osx-version-1.1.X]
[Installer][osx-installer-1.1.X]
[tar.gz][osx-targz-1.1.X] | [![][osx-badge-preview]][osx-version-preview]
[Installer][osx-installer-preview]
[tar.gz][osx-targz-preview] | | **Linux (x64)** (for glibc based OS) | [![][linux-x64-badge-master]][linux-x64-version-master]
[tar.gz][linux-x64-targz-master]
[Symbols (tar.gz)][linux-x64-symbols-targz-master] | N/A | N/A | -| **Linux (arm)** (for glibc based OS) | [![][linux-arm-badge-master]][linux-arm-version-master]
[tar.gz][linux-arm-targz-master]
[Symbols (tar.gz)][linux-arm-symbols-targz-master] | N/A | N/A | +| **Linux (armhf)** (for glibc based OS) | [![][linux-arm-badge-master]][linux-arm-version-master]
[tar.gz][linux-arm-targz-master]
[Symbols (tar.gz)][linux-arm-symbols-targz-master] | N/A | N/A | | **Ubuntu 14.04 (x64)** | [![][ubuntu-14.04-badge-master]][ubuntu-14.04-version-master]
[Host][ubuntu-14.04-host-master]
[Host FX Resolver][ubuntu-14.04-hostfxr-master]
[Shared Framework][ubuntu-14.04-sharedfx-master]
[tar.gz][ubuntu-14.04-targz-master]
[Symbols (tar.gz)][ubuntu-14.04-symbols-targz-master] | [![][ubuntu-14.04-badge-1.1.X]][ubuntu-14.04-version-1.1.X]
[Host][ubuntu-14.04-host-1.1.X]
[Host FX Resolver][ubuntu-14.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-14.04-sharedfx-1.1.X]
[tar.gz][ubuntu-14.04-targz-1.1.X] | [![][ubuntu-14.04-badge-preview]][ubuntu-14.04-version-preview]
[Host][ubuntu-14.04-host-preview]
[Host FX Resolver][ubuntu-14.04-hostfxr-preview]
[Shared Framework][ubuntu-14.04-sharedfx-preview]
[tar.gz][ubuntu-14.04-targz-preview] | | **Ubuntu 16.04 (x64)** | [![][ubuntu-16.04-badge-master]][ubuntu-16.04-version-master]
[Host][ubuntu-16.04-host-master]
[Host FX Resolver][ubuntu-16.04-hostfxr-master]
[Shared Framework][ubuntu-16.04-sharedfx-master]
[tar.gz][ubuntu-16.04-targz-master]
[Symbols (tar.gz)][ubuntu-16.04-symbols-targz-master] | [![][ubuntu-16.04-badge-1.1.X]][ubuntu-16.04-version-1.1.X]
[Host][ubuntu-16.04-host-1.1.X]
[Host FX Resolver][ubuntu-16.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.04-sharedfx-1.1.X]
[tar.gz][ubuntu-16.04-targz-1.1.X] | [![][ubuntu-16.04-badge-preview]][ubuntu-16.04-version-preview]
[Host][ubuntu-16.04-host-preview]
[Host FX Resolver][ubuntu-16.04-hostfxr-preview]
[Shared Framework][ubuntu-16.04-sharedfx-preview]
[tar.gz][ubuntu-16.04-targz-preview] | | **Ubuntu 16.10 (x64)** | [![][ubuntu-16.10-badge-master]][ubuntu-16.10-version-master]
[Host][ubuntu-16.10-host-master]
[Host FX Resolver][ubuntu-16.10-hostfxr-master]
[Shared Framework][ubuntu-16.10-sharedfx-master]
[tar.gz][ubuntu-16.10-targz-master]
[Symbols (tar.gz)][ubuntu-16.10-symbols-targz-master] | [![][ubuntu-16.10-badge-1.1.X]][ubuntu-16.10-version-1.1.X]
[Host][ubuntu-16.10-host-1.1.X]
[Host FX Resolver][ubuntu-16.10-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.10-sharedfx-1.1.X]
[tar.gz][ubuntu-16.10-targz-1.1.X] | N/A | diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 1940eb8a..e53cc763 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -98,7 +98,7 @@ "PB_DistroRid": "ubuntu.14.04-arm", "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", "PB_TargetArchitecture": "arm", - "PB_AdditionalBuildArguments":"-TargetArchitecture=arm -DistroRid=linux-arm -DisableCrossgen=true -PortableBuild=true -SkipTests=true", + "PB_AdditionalBuildArguments":"-TargetArchitecture=arm -DistroRid=linux-arm -DisableCrossgen=true -PortableBuild=true -SkipTests=true -CrossBuild=true", "PB_CrossBuildArgs": "-e ROOTFS_DIR ", "PB_PortableBuild": "true" }, diff --git a/config.json b/config.json index 4afb2f33..491ce0f8 100644 --- a/config.json +++ b/config.json @@ -30,6 +30,12 @@ "values": [ "True", "False"], "defaultValue": "False" }, + "CrossBuild": { + "description": "Indicates if this is a linux cross build.", + "valueType": "property", + "values": [ "True", "False"], + "defaultValue": "False" + }, "DistroRid": { "description": "Specifies the distro rid for Unix OS.", "valueType": "property", diff --git a/netci.groovy b/netci.groovy index 232e06f3..a4054c5c 100644 --- a/netci.groovy +++ b/netci.groovy @@ -29,6 +29,8 @@ platformList.each { platform -> def dockerContainer = '' def dockerWorkingDirectory = "/src/core-setup" def dockerCommand = '' + def crossbuildargs = '' + // Calculate build command if (os == 'Windows_NT') { buildCommand = ".\\build.cmd -ConfigurationGroup=${configuration} -TargetArchitecture=${architecture}" @@ -38,14 +40,16 @@ platformList.each { platform -> } else if ((os.startsWith("Ubuntu")) && (architecture == 'arm' || architecture == 'armel')) { + if (os == 'Ubuntu') { dockerContainer = "ubuntu-14.04-cross-0cd4667-20172211042239" + crossbuildargs = " -CrossBuild=true" } else if (os == 'Ubuntu16.04') { dockerContainer = "ubuntu-16.04-cross-ef0ac75-20175511035548" } dockerCommand = "docker run --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" - buildCommand = "${dockerCommand} ./build.sh -ConfigurationGroup=${configuration} -TargetArchitecture=${architecture} -PortableBuild=true -DistroRid=linux-${architecture} -SkipTests=true -DisableCrossgen=true" + buildCommand = "${dockerCommand} -e ROOTFS_DIR=/crossrootfs/${architecture} ./build.sh -ConfigurationGroup=${configuration} -TargetArchitecture=${architecture} -PortableBuild=true -DistroRid=linux-${architecture} -SkipTests=true -DisableCrossgen=true${crossbuildargs}" } else if (os == "Ubuntu") { dockerContainer = "ubuntu-14.04-debpkg-e5cf912-20175003025046" diff --git a/src/corehost/build.proj b/src/corehost/build.proj index 42055a2b..bd20b95e 100644 --- a/src/corehost/build.proj +++ b/src/corehost/build.proj @@ -17,6 +17,7 @@ --arch $(TargetArchitecture) --apphostver $(AppHostVersion) --hostver $(HostVersion) --fxrver $(HostResolverVersion) --policyver $(HostPolicyVersion) --commithash $(LatestCommit) $(BuildArgs) -portable $(IntermediateOutputRootPath)corehost\cmake\ + $(BuildArgs) --cross
From 38565036f3d3c67e873184336528c63c93fce1e8 Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Thu, 11 May 2017 11:33:11 -0700 Subject: [PATCH 389/625] Workaround maxpath when packaging source On Windows we were hitting max_path due to deep paths for source files inside packages. Workaround this by creating a symbolic link to a shorter path. I've also improved perf slightly by leaving the wildcards in until the pack, which will evaluate the source inclusion wildcard. --- .../src/Microsoft.NETCore.App.depproj | 28 +++++++++++++------ ...t.NETCore.UniversalWindowsPlatform.depproj | 28 +++++++++++++------ 2 files changed, 40 insertions(+), 16 deletions(-) diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index 9b0e4f3a..260ffbf6 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -136,18 +136,30 @@ - <_sourcePaths Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\sources')" /> - <_sourcePaths Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\src')" /> + <_sourcePathCandidate Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\sources')" /> + <_sourcePathCandidate Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\src')" /> + <_sourcePath Include="@(_sourcePathCandidate)" Condition="Exists('%(Identity)')" /> + - - <_sourceFile Condition="'%(_sourcePaths.Identity)' != ''" Include="%(_sourcePaths.Identity)\**\*.*" /> - - src\%(RecursiveDir)%(FileName)%(Extension) + + + + + <_shortSourcePath Include="@(_sourcePath->'$(ObjDir.Replace('/', '\'))src-%(NuGetPackageId)')"> + %(_sourcePath.FullPath) + + <_sourcePath Remove="@(_sourcePath)" /> + <_sourcePath Include="@(_shortSourcePath)" /> + + + + + + + src true - -
diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj index 283be558..7ca56d2d 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj @@ -89,18 +89,30 @@ - <_sourcePaths Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\sources')" /> - <_sourcePaths Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\src')" /> + <_sourcePathCandidate Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\sources')" /> + <_sourcePathCandidate Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\src')" /> + <_sourcePath Include="@(_sourcePathCandidate)" Condition="Exists('%(Identity)')" /> + - - <_sourceFile Condition="'%(_sourcePaths.Identity)' != ''" Include="%(_sourcePaths.Identity)\**\*.*" /> - - src\%(RecursiveDir)%(FileName)%(Extension) + + + + + <_shortSourcePath Include="@(_sourcePath->'$(ObjDir.Replace('/', '\'))src-%(NuGetPackageId)')"> + %(_sourcePath.FullPath) + + <_sourcePath Remove="@(_sourcePath)" /> + <_sourcePath Include="@(_shortSourcePath)" /> + + + + + + + src true - -
From 91f735b0d99e233a72e744d0763c2c51aea1e392 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 11 May 2017 14:24:08 -0500 Subject: [PATCH 390/625] Remove old build code. Move the parts that are still in use into the TestUtils project. --- ...enThatICareAboutStandaloneAppActivation.cs | 4 +- .../AnsiColorExtensions.cs | 0 .../AnsiConsole.cs | 0 .../ArgumentEscaper.cs | 0 .../BuildFailureException.cs | 0 .../BuildReporter.cs | 0 .../Command.cs | 0 .../CommandResult.cs | 0 .../Constants.cs | 5 - .../Utils => TestUtils}/DotNetCli.cs | 34 -- .../Utils => TestUtils}/EnvVars.cs | 13 - .../Reporter.cs | 0 src/test/TestUtils/TestUtils.csproj | 4 - .../BuildContext.cs | 177 ---------- .../BuildFailureException.BuildTarget.cs | 29 -- .../BuildHelpers.cs | 46 --- .../BuildSetup.cs | 206 ----------- .../BuildTarget.cs | 31 -- .../BuildTargetContext.cs | 39 --- .../BuildTargetResult.cs | 41 --- .../CurrentArchitecture.cs | 89 ----- .../CurrentPlatform.cs | 182 ---------- .../DebugHelper.cs | 29 -- .../Enumerations/BuildArchitecture.cs | 11 - .../Enumerations/BuildPlatform.cs | 16 - ...Microsoft.DotNet.Cli.Build.Framework.xproj | 19 - .../StandardGoals.cs | 23 -- .../TargetAttribute.cs | 24 -- .../BuildArchitecturesAttribute.cs | 41 --- .../BuildPlatformsAttribute.cs | 41 --- .../TargetConditions/EnvironmentAttribute.cs | 41 --- .../TargetConditionAttribute.cs | 9 - .../UndefinedTargetException.cs | 9 - .../project.json | 18 - .../DependencyVersions.cs | 13 - .../HostArtifactNames.cs | 15 - .../PackageDependencies.cs | 95 ----- .../Publishing/AzurePublisher.cs | 331 ------------------ .../Publishing/DebRepoPublisher.cs | 55 --- .../Utils/AptDependencyUtility.cs | 24 -- .../Utils/BranchInfo.cs | 38 -- .../Utils/Crossgen.cs | 234 ------------- .../Utils/DebPackageCreator.cs | 194 ---------- .../shared-build-targets-utils/Utils/Dirs.cs | 54 --- .../Utils/DotNetCli.Stages.cs | 15 - .../shared-build-targets-utils/Utils/FS.cs | 124 ------- .../Utils/JsonUtils.cs | 28 -- .../Utils/Monikers.cs | 94 ----- .../Utils/PEUtils.cs | 27 -- .../Utils/PublishMutationUtilties.cs | 87 ----- .../Utils/SharedFrameworkPublisher.cs | 280 --------------- .../shared-build-targets-utils/Utils/Utils.cs | 191 ---------- .../Utils/YumDependencyUtility.cs | 22 -- .../VersionRepoUpdater.cs | 139 -------- .../shared-build-targets-utils/project.json | 25 -- .../shared-build-targets-utils.xproj | 19 - .../dotnet-deb-tool/dotnet-deb-tool.csproj | 2 +- 57 files changed, 3 insertions(+), 3284 deletions(-) rename src/test/{build/Microsoft.DotNet.Cli.Build.Framework => TestUtils}/AnsiColorExtensions.cs (100%) rename src/test/{build/Microsoft.DotNet.Cli.Build.Framework => TestUtils}/AnsiConsole.cs (100%) rename src/test/{build/Microsoft.DotNet.Cli.Build.Framework => TestUtils}/ArgumentEscaper.cs (100%) rename src/test/{build/Microsoft.DotNet.Cli.Build.Framework => TestUtils}/BuildFailureException.cs (100%) rename src/test/{build/Microsoft.DotNet.Cli.Build.Framework => TestUtils}/BuildReporter.cs (100%) rename src/test/{build/Microsoft.DotNet.Cli.Build.Framework => TestUtils}/Command.cs (100%) rename src/test/{build/Microsoft.DotNet.Cli.Build.Framework => TestUtils}/CommandResult.cs (100%) rename src/test/{build/Microsoft.DotNet.Cli.Build.Framework => TestUtils}/Constants.cs (70%) rename src/test/{build/shared-build-targets-utils/Utils => TestUtils}/DotNetCli.cs (66%) rename src/test/{build/shared-build-targets-utils/Utils => TestUtils}/EnvVars.cs (64%) rename src/test/{build/Microsoft.DotNet.Cli.Build.Framework => TestUtils}/Reporter.cs (100%) delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildContext.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.BuildTarget.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildHelpers.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildSetup.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTarget.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTargetContext.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTargetResult.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/CurrentArchitecture.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/CurrentPlatform.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/DebugHelper.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildArchitecture.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildPlatform.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.xproj delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/StandardGoals.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetAttribute.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildArchitecturesAttribute.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildPlatformsAttribute.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/EnvironmentAttribute.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/TargetConditionAttribute.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/UndefinedTargetException.cs delete mode 100644 src/test/build/Microsoft.DotNet.Cli.Build.Framework/project.json delete mode 100644 src/test/build/shared-build-targets-utils/DependencyVersions.cs delete mode 100644 src/test/build/shared-build-targets-utils/HostArtifactNames.cs delete mode 100644 src/test/build/shared-build-targets-utils/PackageDependencies.cs delete mode 100644 src/test/build/shared-build-targets-utils/Publishing/AzurePublisher.cs delete mode 100644 src/test/build/shared-build-targets-utils/Publishing/DebRepoPublisher.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/AptDependencyUtility.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/BranchInfo.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/Crossgen.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/DebPackageCreator.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/Dirs.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/DotNetCli.Stages.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/FS.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/JsonUtils.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/Monikers.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/PEUtils.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/PublishMutationUtilties.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/Utils.cs delete mode 100644 src/test/build/shared-build-targets-utils/Utils/YumDependencyUtility.cs delete mode 100644 src/test/build/shared-build-targets-utils/VersionRepoUpdater.cs delete mode 100644 src/test/build/shared-build-targets-utils/project.json delete mode 100644 src/test/build/shared-build-targets-utils/shared-build-targets-utils.xproj diff --git a/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs b/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs index 95b95bf5..da947813 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutStandaloneAppActivation.cs @@ -110,7 +110,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.StandaloneApp .Execute(fExpectedToFail:true) .ExitCode; - if (CurrentPlatform.IsWindows) + if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { exitCode.Should().Be(-2147450731); } @@ -139,7 +139,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.StandaloneApp .Execute(fExpectedToFail:true) .ExitCode; - if (CurrentPlatform.IsWindows) + if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { exitCode.Should().Be(-2147450748); } diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/AnsiColorExtensions.cs b/src/test/TestUtils/AnsiColorExtensions.cs similarity index 100% rename from src/test/build/Microsoft.DotNet.Cli.Build.Framework/AnsiColorExtensions.cs rename to src/test/TestUtils/AnsiColorExtensions.cs diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/AnsiConsole.cs b/src/test/TestUtils/AnsiConsole.cs similarity index 100% rename from src/test/build/Microsoft.DotNet.Cli.Build.Framework/AnsiConsole.cs rename to src/test/TestUtils/AnsiConsole.cs diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs b/src/test/TestUtils/ArgumentEscaper.cs similarity index 100% rename from src/test/build/Microsoft.DotNet.Cli.Build.Framework/ArgumentEscaper.cs rename to src/test/TestUtils/ArgumentEscaper.cs diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.cs b/src/test/TestUtils/BuildFailureException.cs similarity index 100% rename from src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.cs rename to src/test/TestUtils/BuildFailureException.cs diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildReporter.cs b/src/test/TestUtils/BuildReporter.cs similarity index 100% rename from src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildReporter.cs rename to src/test/TestUtils/BuildReporter.cs diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Command.cs b/src/test/TestUtils/Command.cs similarity index 100% rename from src/test/build/Microsoft.DotNet.Cli.Build.Framework/Command.cs rename to src/test/TestUtils/Command.cs diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/CommandResult.cs b/src/test/TestUtils/CommandResult.cs similarity index 100% rename from src/test/build/Microsoft.DotNet.Cli.Build.Framework/CommandResult.cs rename to src/test/TestUtils/CommandResult.cs diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Constants.cs b/src/test/TestUtils/Constants.cs similarity index 70% rename from src/test/build/Microsoft.DotNet.Cli.Build.Framework/Constants.cs rename to src/test/TestUtils/Constants.cs index 66bbb900..ee5a5c32 100644 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Constants.cs +++ b/src/test/TestUtils/Constants.cs @@ -14,10 +14,5 @@ namespace Microsoft.DotNet.Cli.Build.Framework public static readonly string[] RunnableSuffixes = RuntimeInformation.IsOSPlatform(OSPlatform.Windows) ? new string[] { ".exe", ".cmd", ".bat" } : new string[] { string.Empty }; - - public static readonly string DynamicLibPrefix = RuntimeInformation.IsOSPlatform(OSPlatform.Windows) ? "" : "lib"; - - public static readonly string DynamicLibSuffix = RuntimeInformation.IsOSPlatform(OSPlatform.Windows) ? ".dll" : - RuntimeInformation.IsOSPlatform(OSPlatform.OSX) ? ".dylib" : ".so"; } } diff --git a/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs b/src/test/TestUtils/DotNetCli.cs similarity index 66% rename from src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs rename to src/test/TestUtils/DotNetCli.cs index baf2ce34..bc861337 100644 --- a/src/test/build/shared-build-targets-utils/Utils/DotNetCli.cs +++ b/src/test/TestUtils/DotNetCli.cs @@ -10,8 +10,6 @@ namespace Microsoft.DotNet.Cli.Build { public partial class DotNetCli { - public static readonly DotNetCli Stage0 = new DotNetCli(GetStage0Path()); - public string BinPath { get; } public string GreatestVersionSharedFxPath { get; private set; } public string GreatestVersionHostFxrPath { get; private set; } @@ -42,38 +40,6 @@ namespace Microsoft.DotNet.Cli.Build public Command Test(params string[] args) => Exec("test", args); public Command Publish(params string[] args) => Exec("publish", args); - public string GetRuntimeId() - { - string info = Exec("", "--info").CaptureStdOut().Execute().StdOut; - string rid = Array.Find(info.Split(Environment.NewLine.ToCharArray()), (e) => e.Contains("RID:"))?.Replace("RID:", "").Trim(); - - if (string.IsNullOrEmpty(rid)) - { - throw new BuildFailureException("Could not find the Runtime ID from Stage0 --info or --version"); - } - - return rid; - } - - public static string GetStage0Path(string repoRoot = null) - { - if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) - { - return Path.Combine( - repoRoot ?? Directory.GetCurrentDirectory(), - ".dotnet_stage0", - RuntimeEnvironment.OperatingSystemPlatform.ToString(), - RuntimeEnvironment.RuntimeArchitecture); - } - else - { - return Path.Combine( - repoRoot ?? Directory.GetCurrentDirectory(), - ".dotnet_stage0", - RuntimeEnvironment.OperatingSystemPlatform.ToString()); - } - } - private void ComputeSharedFxPaths() { var sharedFxBaseDirectory = Path.Combine(BinPath, "shared", "Microsoft.NETCore.App"); diff --git a/src/test/build/shared-build-targets-utils/Utils/EnvVars.cs b/src/test/TestUtils/EnvVars.cs similarity index 64% rename from src/test/build/shared-build-targets-utils/Utils/EnvVars.cs rename to src/test/TestUtils/EnvVars.cs index 1fd48c6d..dd17ec95 100644 --- a/src/test/build/shared-build-targets-utils/Utils/EnvVars.cs +++ b/src/test/TestUtils/EnvVars.cs @@ -7,8 +7,6 @@ namespace Microsoft.DotNet.Cli.Build { public static readonly bool Verbose = GetBool("DOTNET_BUILD_VERBOSE"); - public static readonly bool PublishRidAgnosticPackages = GetBool("PUBLISH_RID_AGNOSTIC_PACKAGES"); - private static bool GetBool(string name, bool defaultValue = false) { var str = Environment.GetEnvironmentVariable(name); @@ -31,16 +29,5 @@ namespace Microsoft.DotNet.Cli.Build return defaultValue; } } - - public static string EnsureVariable(string variableName) - { - string value = Environment.GetEnvironmentVariable(variableName); - if (string.IsNullOrEmpty(value)) - { - throw new BuildFailureException($"'{variableName}' environment variable was not found."); - } - - return value; - } } } diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Reporter.cs b/src/test/TestUtils/Reporter.cs similarity index 100% rename from src/test/build/Microsoft.DotNet.Cli.Build.Framework/Reporter.cs rename to src/test/TestUtils/Reporter.cs diff --git a/src/test/TestUtils/TestUtils.csproj b/src/test/TestUtils/TestUtils.csproj index 772a50b3..fc5b080e 100644 --- a/src/test/TestUtils/TestUtils.csproj +++ b/src/test/TestUtils/TestUtils.csproj @@ -9,10 +9,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildContext.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildContext.cs deleted file mode 100644 index b80196c8..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildContext.cs +++ /dev/null @@ -1,177 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Runtime.InteropServices; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public class BuildContext - { - private IDictionary _completedTargets = new Dictionary(StringComparer.OrdinalIgnoreCase); - - public static readonly string DefaultTarget = "Default"; - - private int _maxTargetLen; - private Stack _targetStack = new Stack(); - - public IDictionary Targets { get; } - - public IDictionary Properties = new Dictionary(); - - public string BuildDirectory { get; } - - public object this[string name] - { - get - { - if (Properties.ContainsKey(name)) - { - return Properties[name]; - } - else - { - throw new KeyNotFoundException("No property with key " + name + " was found."); - } - } - set { Properties[name] = value; } - } - - public BuildContext(IDictionary targets, string buildDirectory) - { - Targets = targets; - BuildDirectory = buildDirectory; - _maxTargetLen = targets.Values.Select(t => t.Name.Length).Max(); - } - - public T Get(string name) => (T)this[name]; - - public BuildTargetResult RunTarget(string name) => RunTarget(name, force: false); - - public BuildTargetResult RunTarget(string name, bool force) - { - BuildTarget target; - if (!Targets.TryGetValue(name, out target)) - { - throw new UndefinedTargetException($"Undefined target: {name}"); - } - - if (!EvaluateTargetConditions(target)) - { - Reporter.Verbose.WriteLine($"Skipping, Target Conditions not met: {target.Name}"); - return new BuildTargetResult(target, success: true); - } - - // Check if it's been completed - BuildTargetResult result; - if (!force && _completedTargets.TryGetValue(name, out result)) - { - Reporter.Verbose.WriteLine($"Skipping completed target: {target.Name}"); - return result; - } - - // It hasn't, or we're forcing, so run it - result = ExecTarget(target); - _completedTargets[target.Name] = result; - return result; - } - - public void Verbose(string message) - { - Reporter.Output.WriteLine("trace".White() + $": {message}"); - } - - public void Info(string message) - { - Reporter.Output.WriteLine("info ".Green() + $": {message}"); - } - - public void Warn(string message) - { - Reporter.Output.WriteLine("warn ".Yellow() + $": {message}"); - } - - public void Error(string message) - { - Reporter.Error.WriteLine("error".Red().Bold() + $": {message}"); - } - - private bool EvaluateTargetConditions(BuildTarget target) - { - if (target == null) - { - throw new ArgumentNullException(nameof(target)); - } - - if (target.Conditions == null) - { - return true; - } - - foreach (var condition in target.Conditions) - { - if (!condition()) - { - return false; - } - } - - return true; - } - - private BuildTargetResult ExecTarget(BuildTarget target) - { - if (target == null) - { - throw new ArgumentNullException(nameof(target)); - } - - var sectionName = $"{target.Name.PadRight(_maxTargetLen + 2).Yellow()} ({target.Source.White()})"; - BuildReporter.BeginSection("TARGET", sectionName); - - BuildTargetResult result; - - // Run the dependencies - var dependencyResults = new Dictionary(); - var failedDependencyResult = RunDependencies(target, dependencyResults); - if (failedDependencyResult != null) - { - result = failedDependencyResult; - } - else if (target.Body != null) - { - try - { - result = target.Body(new BuildTargetContext(this, target, dependencyResults)); - } - catch (Exception ex) - { - result = new BuildTargetResult(target, success: false, exception: ex); - } - } - else - { - result = new BuildTargetResult(target, success: true); - } - BuildReporter.EndSection("TARGET", sectionName, result.Success); - - return result; - } - - private BuildTargetResult RunDependencies(BuildTarget target, Dictionary dependencyResults) - { - BuildTargetResult result = null; - foreach (var dependency in target.Dependencies) - { - result = RunTarget(dependency); - dependencyResults[dependency] = result; - - if (!result.Success) - { - return result; - } - } - - return null; - } - } -} diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.BuildTarget.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.BuildTarget.cs deleted file mode 100644 index b546b26d..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildFailureException.BuildTarget.cs +++ /dev/null @@ -1,29 +0,0 @@ -using System; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public partial class BuildFailureException : Exception - { - public BuildTarget Target { get; } - - public BuildFailureException(BuildTarget target) : base($"The '{target.Name}' target failed") - { - Target = target; - } - - public BuildFailureException(BuildTarget target, Exception innerException) : base($"The '{target.Name}' target failed", innerException) - { - Target = target; - } - - public BuildFailureException(string message, BuildTarget target) : base(message) - { - Target = target; - } - - public BuildFailureException(string message, Exception innerException, BuildTarget target) : base(message, innerException) - { - Target = target; - } - } -} \ No newline at end of file diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildHelpers.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildHelpers.cs deleted file mode 100644 index 8a6a5e4d..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildHelpers.cs +++ /dev/null @@ -1,46 +0,0 @@ -using System.Collections.Generic; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public static class BuildHelpers - { - public static int ExecInSilent(string workingDirectory, string command, params string[] args) => ExecInSilent(workingDirectory, command, (IEnumerable)args); - public static int ExecInSilent(string workingDirectory, string command, IEnumerable args) => ExecCore(command, args, workingDirectory, silent: true, env: null); - - public static int ExecIn(string workingDirectory, string command, params string[] args) => ExecIn(workingDirectory, command, (IEnumerable)args); - public static int ExecIn(string workingDirectory, string command, IEnumerable args) => ExecCore(command, args, workingDirectory, silent: false, env: null); - - public static int ExecSilent(string command, params string[] args) => ExecSilent(command, (IEnumerable)args); - public static int ExecSilent(string command, IEnumerable args) => ExecSilent(command, args, env: null); - public static int ExecSilent(string command, IEnumerable args, IDictionary env) => ExecCore(command, args, workingDirectory: null, silent: true, env: env); - - public static int Exec(string command, params string[] args) => Exec(command, (IEnumerable)args); - public static int Exec(string command, IEnumerable args) => ExecCore(command, args, workingDirectory: null, silent: false, env: null); - - public static Command Cmd(string command, params string[] args) => Cmd(command, (IEnumerable)args); - public static Command Cmd(string command, IEnumerable args) - { - return Command.Create(command, args); - } - - internal static int ExecCore(string command, IEnumerable args, string workingDirectory, bool silent, IDictionary env) - { - var cmd = Cmd(command, args); - if (!string.IsNullOrEmpty(workingDirectory)) - { - cmd.WorkingDirectory(workingDirectory); - } - - if (silent) - { - cmd.CaptureStdErr().CaptureStdOut(); - } - - var result = cmd.Environment(env).Execute(); - - result.EnsureSuccessful(); - return result.ExitCode; - } - - } -} diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildSetup.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildSetup.cs deleted file mode 100644 index a496d8ad..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildSetup.cs +++ /dev/null @@ -1,206 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Reflection; -using System.Runtime.CompilerServices; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public class BuildSetup - { - private Dictionary _targets = new Dictionary(); - - public IList _overrides = new List(); - - public string ProductName { get; } - - public BuildSetup(string productName) - { - ProductName = productName; - } - - public static BuildSetup Create(string productName) - { - return new BuildSetup(productName); - } - - public BuildSetup UseTargets(IEnumerable targets) - { - foreach (var target in targets) - { - BuildTarget previousTarget; - if (_targets.TryGetValue(target.Name, out previousTarget)) - { - _overrides.Add(new TargetOverride(target.Name, previousTarget.Source, target.Source)); - } - _targets[target.Name] = target; - } - return this; - } - - public BuildSetup UseAllTargetsFromAssembly() - { - var asm = typeof(T).GetTypeInfo().Assembly; - return UseTargets(asm.GetExportedTypes().SelectMany(t => CollectTargets(t))); - } - - public BuildSetup UseTargetsFrom() - { - return UseTargets(CollectTargets(typeof(T))); - } - - public int Run(string[] args) - { - string[] targets; - string[] environmentVariables; - ParseArgs(args, out targets, out environmentVariables); - - foreach (string environmentVariable in environmentVariables) - { - int delimiterIndex = environmentVariable.IndexOf('='); - string name = environmentVariable.Substring(0, delimiterIndex); - string value = environmentVariable.Substring(delimiterIndex + 1); - - Environment.SetEnvironmentVariable(name, value); - } - - Reporter.Output.WriteBanner($"Building {ProductName}"); - - if (_overrides.Any()) - { - foreach (var targetOverride in _overrides) - { - Reporter.Verbose.WriteLine($"Target {targetOverride.Name} from {targetOverride.OriginalSource} was overridden in {targetOverride.OverrideSource}".Black()); - } - } - - var context = new BuildContext(_targets, Directory.GetCurrentDirectory()); - BuildTargetResult result = null; - try - { - foreach (var target in targets) - { - result = context.RunTarget(target); - if (!result.Success) - { - break; - } - } - } - catch (Exception ex) - { - Reporter.Error.WriteLine(ex.ToString().Red()); - return 1; - } - - if (result != null && !result.Success) - { - Reporter.Error.WriteLine($"Build failed: {result.ErrorMessage}".Red()); - return 1; - } - else - { - Reporter.Output.WriteLine("Build succeeded".Green()); - return 0; - } - } - - private static void ParseArgs(string[] args, out string[] targets, out string[] environmentVariables) - { - List targetList = new List(); - List environmentVariableList = new List(); - for (int i = 0; i < args.Length; i++) - { - if (args[i] == "-t") - { - i++; - while (i < args.Length && !args[i].StartsWith("-", StringComparison.Ordinal)) - { - targetList.Add(args[i]); - i++; - } - } - - if (args[i] == "-e") - { - i++; - while (i < args.Length && !args[i].StartsWith("-", StringComparison.Ordinal)) - { - environmentVariableList.Add(args[i]); - i++; - } - } - } - - targets = targetList.Any() ? targetList.ToArray() : new[] { BuildContext.DefaultTarget }; - environmentVariables = environmentVariableList.ToArray(); - } - - private static IEnumerable CollectTargets(Type typ) - { - return from m in typ.GetMethods() - let targetAttribute = m.GetCustomAttribute() - let conditionalAttributes = m.GetCustomAttributes(false) - where targetAttribute != null - select CreateTarget(m, targetAttribute, conditionalAttributes); - } - - private static BuildTarget CreateTarget( - MethodInfo methodInfo, - TargetAttribute targetAttribute, - IEnumerable targetConditionAttributes) - { - var name = targetAttribute.Name ?? methodInfo.Name; - - var conditions = ExtractTargetConditionsFromAttributes(targetConditionAttributes); - - return new BuildTarget( - name, - $"{methodInfo.DeclaringType.FullName}.{methodInfo.Name}", - targetAttribute.Dependencies, - conditions, - (Func)methodInfo.CreateDelegate(typeof(Func))); - } - - private static IEnumerable> ExtractTargetConditionsFromAttributes( - IEnumerable targetConditionAttributes) - { - if (targetConditionAttributes == null || targetConditionAttributes.Count() == 0) - { - return Enumerable.Empty>(); - } - - return targetConditionAttributes - .Select>(c => c.EvaluateCondition) - .ToArray(); - } - - private string GenerateSourceString(string file, int? line, string member) - { - if (!string.IsNullOrEmpty(file) && line != null) - { - return $"{file}:{line}"; - } - else if (!string.IsNullOrEmpty(member)) - { - return member; - } - return string.Empty; - } - - public class TargetOverride - { - public string Name { get; } - public string OriginalSource { get; } - public string OverrideSource { get; } - - public TargetOverride(string name, string originalSource, string overrideSource) - { - Name = name; - OriginalSource = originalSource; - OverrideSource = overrideSource; - } - } - } -} diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTarget.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTarget.cs deleted file mode 100644 index d3b16188..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTarget.cs +++ /dev/null @@ -1,31 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public class BuildTarget - { - public string Name { get; } - public string Source { get; } - public IEnumerable Dependencies { get; } - public IEnumerable> Conditions { get; } - public Func Body { get; } - - public BuildTarget(string name, string source) : this(name, source, Enumerable.Empty(), Enumerable.Empty>(), null) { } - public BuildTarget(string name, string source, IEnumerable dependencies) : this(name, source, dependencies, Enumerable.Empty>(), null) { } - public BuildTarget( - string name, - string source, - IEnumerable dependencies, - IEnumerable> conditions, - Func body) - { - Name = name; - Source = source; - Dependencies = dependencies; - Conditions = conditions; - Body = body; - } - } -} \ No newline at end of file diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTargetContext.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTargetContext.cs deleted file mode 100644 index 376234dc..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTargetContext.cs +++ /dev/null @@ -1,39 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public class BuildTargetContext - { - private IDictionary _dependencyResults; - - public BuildContext BuildContext { get; } - public BuildTarget Target { get; } - - public BuildTargetContext(BuildContext buildContext, BuildTarget target, IDictionary dependencyResults) - { - BuildContext = buildContext; - Target = target; - _dependencyResults = dependencyResults; - } - - public BuildTargetResult Success() - { - return new BuildTargetResult(Target, success: true); - } - - public BuildTargetResult Failed() => Failed(errorMessage: string.Empty); - - public BuildTargetResult Failed(string errorMessage) - { - return new BuildTargetResult(Target, success: false, errorMessage: errorMessage); - } - - public void Info(string message) => BuildContext.Info(message); - public void Warn(string message) => BuildContext.Warn(message); - public void Error(string message) => BuildContext.Error(message); - public void Verbose(string message) => BuildContext.Verbose(message); - } -} diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTargetResult.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTargetResult.cs deleted file mode 100644 index cadf74a0..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/BuildTargetResult.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public class BuildTargetResult - { - public BuildTarget Target { get; } - public bool Success { get; } - public string ErrorMessage { get; } - public Exception Exception { get; } - - public BuildTargetResult(BuildTarget target, bool success) : this(target, success, errorMessage: string.Empty) { } - - public BuildTargetResult(BuildTarget target, bool success, Exception exception) : this(target, success, exception.ToString()) - { - Exception = exception; - } - - public BuildTargetResult(BuildTarget target, bool success, string errorMessage) - { - Target = target; - Success = success; - ErrorMessage = errorMessage; - } - - public void EnsureSuccessful() - { - if(!Success) - { - if(string.IsNullOrEmpty(ErrorMessage)) - { - throw new BuildFailureException(Target, Exception); - } - else - { - throw new BuildFailureException(ErrorMessage, Exception, Target); - } - } - } - } -} \ No newline at end of file diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/CurrentArchitecture.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/CurrentArchitecture.cs deleted file mode 100644 index 33e00ec3..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/CurrentArchitecture.cs +++ /dev/null @@ -1,89 +0,0 @@ -using System; -using Microsoft.DotNet.InternalAbstractions; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public static class CurrentArchitecture - { - public static BuildArchitecture Current - { - get - { - return DetermineCurrentArchitecture(); - } - } - - public static bool Isx86 - { - get - { - var archName = RuntimeEnvironment.RuntimeArchitecture; - return string.Equals(archName, "x86", StringComparison.OrdinalIgnoreCase); - } - } - - public static bool Isx64 - { - get - { - var archName = RuntimeEnvironment.RuntimeArchitecture; - return string.Equals(archName, "x64", StringComparison.OrdinalIgnoreCase); - } - } - - public static bool Isarm - { - get - { - var archName = Environment.GetEnvironmentVariable("TARGETPLATFORM"); - return string.Equals(archName, "arm", StringComparison.OrdinalIgnoreCase); - } - } - - public static bool Isarmel - { - get - { - var archName = Environment.GetEnvironmentVariable("TARGETPLATFORM"); - return string.Equals(archName, "armel", StringComparison.OrdinalIgnoreCase); - } - } - - public static bool Isarm64 - { - get - { - var archName = Environment.GetEnvironmentVariable("TARGETPLATFORM"); - return string.Equals(archName, "arm64", StringComparison.OrdinalIgnoreCase); - } - } - - private static BuildArchitecture DetermineCurrentArchitecture() - { - if (Isarm) - { - return BuildArchitecture.arm; - } - else if (Isarmel) - { - return BuildArchitecture.armel; - } - else if (Isarm64) - { - return BuildArchitecture.arm64; - } - else if (Isx86) - { - return BuildArchitecture.x86; - } - else if (Isx64) - { - return BuildArchitecture.x64; - } - else - { - return default(BuildArchitecture); - } - } - } -} diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/CurrentPlatform.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/CurrentPlatform.cs deleted file mode 100644 index 2353853e..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/CurrentPlatform.cs +++ /dev/null @@ -1,182 +0,0 @@ -using System; -using System.Runtime.InteropServices; -using Microsoft.DotNet.InternalAbstractions; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public static class CurrentPlatform - { - public static BuildPlatform Current - { - get - { - return DetermineCurrentPlatform(); - } - } - - public static bool IsWindows - { - get - { - return RuntimeInformation.IsOSPlatform(OSPlatform.Windows); - } - } - - public static bool IsOSX - { - get - { - return RuntimeInformation.IsOSPlatform(OSPlatform.OSX); - } - } - - public static bool IsUbuntu - { - get - { - var osname = RuntimeEnvironment.OperatingSystem; - return string.Equals(osname, "ubuntu", StringComparison.OrdinalIgnoreCase); - } - } - - public static bool IsCentOS - { - get - { - var osname = RuntimeEnvironment.OperatingSystem; - return string.Equals(osname, "centos", StringComparison.OrdinalIgnoreCase); - } - } - - public static bool IsRHEL - { - get - { - var osname = RuntimeEnvironment.OperatingSystem; - return string.Equals(osname, "rhel", StringComparison.OrdinalIgnoreCase); - } - } - - public static bool IsFedora - { - get - { - var osname = RuntimeEnvironment.OperatingSystem; - return string.Equals(osname, "fedora", StringComparison.OrdinalIgnoreCase); - } - } - - public static bool IsOpenSUSE - { - get - { - var osname = RuntimeEnvironment.OperatingSystem; - return string.Equals(osname, "opensuse", StringComparison.OrdinalIgnoreCase); - } - } - - public static bool IsUnix - { - get - { - return IsLinux || IsOSX; - } - } - - public static bool IsDebian - { - get - { - var osname = RuntimeEnvironment.OperatingSystem; - return string.Equals(osname, "debian", StringComparison.OrdinalIgnoreCase); - } - } - - public static bool IsLinux - { - get - { - return IsUbuntu || IsCentOS || IsRHEL || IsDebian || IsFedora || IsOpenSUSE; - } - } - - public static bool IsPlatform(BuildPlatform platform, string version = null) - { - return IsPlatform(platform) && (version == null || IsVersion(version)); - } - - public static bool IsPlatform(BuildPlatform platform) - { - switch (platform) - { - case BuildPlatform.Windows: - return IsWindows; - case BuildPlatform.Ubuntu: - return IsUbuntu; - case BuildPlatform.OSX: - return IsOSX; - case BuildPlatform.CentOS: - return IsCentOS; - case BuildPlatform.RHEL: - return IsRHEL; - case BuildPlatform.Debian: - return IsDebian; - case BuildPlatform.Fedora: - return IsFedora; - case BuildPlatform.OpenSUSE: - return IsOpenSUSE; - case BuildPlatform.Unix: - return IsUnix; - case BuildPlatform.Linux: - return IsLinux; - default: - throw new Exception("Unrecognized Platform."); - } - } - - public static bool IsVersion(string version) - { - return RuntimeEnvironment.OperatingSystemVersion.Equals(version, StringComparison.OrdinalIgnoreCase); - } - - private static BuildPlatform DetermineCurrentPlatform() - { - if (IsWindows) - { - return BuildPlatform.Windows; - } - else if (IsOSX) - { - return BuildPlatform.OSX; - } - else if (IsUbuntu) - { - return BuildPlatform.Ubuntu; - } - else if (IsCentOS) - { - return BuildPlatform.CentOS; - } - else if (IsRHEL) - { - return BuildPlatform.RHEL; - } - else if (IsDebian) - { - return BuildPlatform.Debian; - } - else if (IsFedora) - { - return BuildPlatform.Fedora; - } - else if (IsOpenSUSE) - { - return BuildPlatform.OpenSUSE; - } - else - { - return default(BuildPlatform); - } - } - } -} diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/DebugHelper.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/DebugHelper.cs deleted file mode 100644 index 988e15f8..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/DebugHelper.cs +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using System; -using System.Diagnostics; -using System.Linq; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public static class DebugHelper - { - [Conditional("DEBUG")] - public static void HandleDebugSwitch(ref string[] args) - { - if (args.Length > 0 && string.Equals("--debug", args[0], StringComparison.OrdinalIgnoreCase)) - { - args = args.Skip(1).ToArray(); - WaitForDebugger(); - } - } - - private static void WaitForDebugger() - { - Console.WriteLine("Waiting for debugger to attach. Press ENTER to continue"); - Console.WriteLine($"Process ID: {Process.GetCurrentProcess().Id}"); - Console.ReadLine(); - } - } -} diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildArchitecture.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildArchitecture.cs deleted file mode 100644 index 3206c119..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildArchitecture.cs +++ /dev/null @@ -1,11 +0,0 @@ -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public enum BuildArchitecture - { - x86 = 1, - x64 = 2, - arm = 3, - arm64 = 4, - armel = 5 - } -} diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildPlatform.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildPlatform.cs deleted file mode 100644 index 0566ac44..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Enumerations/BuildPlatform.cs +++ /dev/null @@ -1,16 +0,0 @@ -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public enum BuildPlatform - { - Windows = 1, - Unix = 2, - Linux = 3, - OSX = 4, - Ubuntu = 5, - CentOS = 6, - RHEL = 7, - Debian = 8, - Fedora = 9, - OpenSUSE = 10 - } -} diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.xproj b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.xproj deleted file mode 100644 index 1ee98c61..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - 49beb486-ab5a-4416-91ea-8cd34abb0c9d - Microsoft.DotNet.Cli.Build.Framework - ..\..\..\..\Bin\obj\$(MSBuildProjectName) - ..\..\..\..\Bin - - - - 2.0 - - - \ No newline at end of file diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/StandardGoals.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/StandardGoals.cs deleted file mode 100644 index 975f1fa6..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/StandardGoals.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public static class StandardGoals - { - public static BuildSetup UseStandardGoals(this BuildSetup self) - { - return self.UseTargets(new[] - { - new BuildTarget("Default", "Standard Goals", new [] { "Prepare", "Compile", "Test", "Package", "Publish" }), - new BuildTarget("Prepare", "Standard Goals"), - new BuildTarget("Compile", "Standard Goals"), - new BuildTarget("Test", "Standard Goals"), - new BuildTarget("Package", "Standard Goals"), - new BuildTarget("Publish", "Standard Goals") - }); - } - } -} diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetAttribute.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetAttribute.cs deleted file mode 100644 index c7b85180..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetAttribute.cs +++ /dev/null @@ -1,24 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - [AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)] - public class TargetAttribute : Attribute - { - public string Name { get; set; } - public IEnumerable Dependencies { get; } - - public TargetAttribute() - { - Dependencies = Enumerable.Empty(); - } - - // Attributes can only use constants, so a comma-separated string is better :) - public TargetAttribute(params string[] dependencies) - { - Dependencies = dependencies; - } - } -} \ No newline at end of file diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildArchitecturesAttribute.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildArchitecturesAttribute.cs deleted file mode 100644 index da2f9946..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildArchitecturesAttribute.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - [AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)] - public class BuildArchitecturesAttribute : TargetConditionAttribute - { - private IEnumerable _buildArchitectures; - - public BuildArchitecturesAttribute(params BuildArchitecture[] architectures) - { - if (architectures == null) - { - throw new ArgumentNullException(nameof(architectures)); - } - - _buildArchitectures = architectures; - } - - public override bool EvaluateCondition() - { - var currentArchitecture = CurrentArchitecture.Current; - - if (currentArchitecture == default(BuildArchitecture)) - { - throw new Exception("Unrecognized Architecture"); - } - - foreach (var architecture in _buildArchitectures) - { - if (architecture == currentArchitecture) - { - return true; - } - } - - return false; - } - } -} \ No newline at end of file diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildPlatformsAttribute.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildPlatformsAttribute.cs deleted file mode 100644 index dfe0f2d6..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/BuildPlatformsAttribute.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - [AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)] - public class BuildPlatformsAttribute : TargetConditionAttribute - { - private IEnumerable _buildPlatforms; - private string _version; - - public BuildPlatformsAttribute(params BuildPlatform[] platforms) - { - if (platforms == null) - { - throw new ArgumentNullException(nameof(platforms)); - } - - _buildPlatforms = platforms; - } - - public BuildPlatformsAttribute(BuildPlatform platform, string version) - { - _buildPlatforms = new BuildPlatform[] { platform }; - _version = version; - } - - public override bool EvaluateCondition() - { - foreach (var platform in _buildPlatforms) - { - if (CurrentPlatform.IsPlatform(platform, _version)) - { - return true; - } - } - - return false; - } - } -} diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/EnvironmentAttribute.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/EnvironmentAttribute.cs deleted file mode 100644 index 0a8455e5..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/EnvironmentAttribute.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System; -using System.Linq; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - [AttributeUsage(AttributeTargets.Method, AllowMultiple = true, Inherited = false)] - public class EnvironmentAttribute : TargetConditionAttribute - { - private string _envVar; - private string[] _expectedVals; - - public EnvironmentAttribute(string envVar, params string[] expectedVals) - { - if (string.IsNullOrEmpty(envVar)) - { - throw new ArgumentNullException(nameof(envVar)); - } - if (expectedVals == null) - { - throw new ArgumentNullException(nameof(expectedVals)); - } - - _envVar = envVar; - _expectedVals = expectedVals; - } - - public override bool EvaluateCondition() - { - var actualVal = Environment.GetEnvironmentVariable(_envVar); - - if (_expectedVals.Any()) - { - return _expectedVals.Any(ev => string.Equals(actualVal, ev, StringComparison.Ordinal)); - } - else - { - return !string.IsNullOrEmpty(actualVal); - } - } - } -} diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/TargetConditionAttribute.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/TargetConditionAttribute.cs deleted file mode 100644 index 74243f06..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/TargetConditions/TargetConditionAttribute.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public abstract class TargetConditionAttribute : Attribute - { - public abstract bool EvaluateCondition(); - } -} \ No newline at end of file diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/UndefinedTargetException.cs b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/UndefinedTargetException.cs deleted file mode 100644 index 69243ced..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/UndefinedTargetException.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System; - -namespace Microsoft.DotNet.Cli.Build.Framework -{ - public class UndefinedTargetException : Exception - { - public UndefinedTargetException(string message) : base(message) { } - } -} \ No newline at end of file diff --git a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/project.json b/src/test/build/Microsoft.DotNet.Cli.Build.Framework/project.json deleted file mode 100644 index 41ca8bec..00000000 --- a/src/test/build/Microsoft.DotNet.Cli.Build.Framework/project.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "version": "1.0.0-*", - "buildOptions": { - "warningsAsErrors": true, - "allowUnsafe": true - }, - "dependencies": { - "NETStandard.Library": "1.6.1-beta-24506-02", - "System.Diagnostics.Process": "4.1.0", - "System.Reflection.TypeExtensions": "4.1.0", - "Microsoft.DotNet.InternalAbstractions": "1.0.0-rc2-002702" - }, - "frameworks": { - "netstandard1.6": { - "imports": "dnxcore50" - } - } -} diff --git a/src/test/build/shared-build-targets-utils/DependencyVersions.cs b/src/test/build/shared-build-targets-utils/DependencyVersions.cs deleted file mode 100644 index 6bbef1a4..00000000 --- a/src/test/build/shared-build-targets-utils/DependencyVersions.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Cli.Build -{ - public class DependencyVersions - { - public static readonly string CoreCLRVersion = "2.0.0-preview2-25226-02"; - public static readonly string JitVersion = "2.0.0-preview2-25226-02"; - } -} diff --git a/src/test/build/shared-build-targets-utils/HostArtifactNames.cs b/src/test/build/shared-build-targets-utils/HostArtifactNames.cs deleted file mode 100644 index c0e9a3cb..00000000 --- a/src/test/build/shared-build-targets-utils/HostArtifactNames.cs +++ /dev/null @@ -1,15 +0,0 @@ -using Microsoft.DotNet.Cli.Build.Framework; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Cli.Build -{ - public class HostArtifactNames - { - public static string DotnetHostBaseName => $"dotnet{Constants.ExeSuffix}"; - public static string DotnetHostFxrBaseName => $"{Constants.DynamicLibPrefix}hostfxr{Constants.DynamicLibSuffix}"; - public static string HostPolicyBaseName => $"{Constants.DynamicLibPrefix}hostpolicy{Constants.DynamicLibSuffix}"; - } -} diff --git a/src/test/build/shared-build-targets-utils/PackageDependencies.cs b/src/test/build/shared-build-targets-utils/PackageDependencies.cs deleted file mode 100644 index 397d7730..00000000 --- a/src/test/build/shared-build-targets-utils/PackageDependencies.cs +++ /dev/null @@ -1,95 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Cli.Build -{ - public class PackageDependencies - { - public static string[] DebianPackageBuildDependencies - { - get - { - return new string[] - { - "devscripts", - "debhelper", - "build-essential" - }; - - } - } - - public static string[] UbuntuCoreclrAndCoreFxDependencies - { - get - { - return new string[] - { - "libc6", - "libedit2", - "libffi6", - "libgcc1", - "libicu52", - "liblldb-3.6", - "libllvm3.6", - "liblttng-ust0", - "liblzma5", - "libncurses5", - "libpython2.7", - "libstdc++6", - "libtinfo5", - "libunwind8", - "liburcu1", - "libuuid1", - "zlib1g", - "libasn1-8-heimdal", - "libcomerr2", - "libcurl3", - "libgcrypt11", - "libgnutls26", - "libgpg-error0", - "libgssapi3-heimdal", - "libgssapi-krb5-2", - "libhcrypto4-heimdal", - "libheimbase1-heimdal", - "libheimntlm0-heimdal", - "libhx509-5-heimdal", - "libidn11", - "libk5crypto3", - "libkeyutils1", - "libkrb5-26-heimdal", - "libkrb5-3", - "libkrb5support0", - "libldap-2.4-2", - "libp11-kit0", - "libroken18-heimdal", - "librtmp0", - "libsasl2-2", - "libsqlite3-0", - "libssl1.0.0", - "libtasn1-6", - "libwind0-heimdal" - }; - } - } - - public static string[] CentosCoreclrAndCoreFxDependencies - { - get - { - return new string[] - { - "libunwind", - "gettext", - "libcurl-devel", - "openssl-devel", - "zlib", - "libicu-devel" - }; - } - } - - } -} diff --git a/src/test/build/shared-build-targets-utils/Publishing/AzurePublisher.cs b/src/test/build/shared-build-targets-utils/Publishing/AzurePublisher.cs deleted file mode 100644 index 8de30ba9..00000000 --- a/src/test/build/shared-build-targets-utils/Publishing/AzurePublisher.cs +++ /dev/null @@ -1,331 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Net.Http; -using System.Text; -using System.Diagnostics; -using System.Threading; -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.WindowsAzure.Storage; -using Microsoft.WindowsAzure.Storage.Blob; - -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Cli.Build -{ - public class AzurePublisher - { - private static readonly string s_dotnetBlobRootUrl = "https://dotnetcli.blob.core.windows.net/dotnet/"; - private static readonly string s_dotnetBlobContainerName = "dotnet"; - - private Task _leaseRenewalTask = null; - private CancellationTokenSource _cancellationTokenSource = null; - - private string _connectionString { get; set; } - private CloudBlobContainer _blobContainer { get; set; } - - public AzurePublisher() - { - _connectionString = EnvVars.EnsureVariable("CONNECTION_STRING").Trim('"'); - _blobContainer = GetDotnetBlobContainer(_connectionString); - } - - private CloudBlobContainer GetDotnetBlobContainer(string connectionString) - { - CloudStorageAccount storageAccount = CloudStorageAccount.Parse(connectionString); - CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient(); - - return blobClient.GetContainerReference(s_dotnetBlobContainerName); - } - - public void PublishInstallerFile(string installerFile, string channel, string version) - { - var installerFileBlob = CalculateInstallerBlob(installerFile, channel, version); - PublishFile(installerFileBlob, installerFile); - } - - public void PublishArchive(string archiveFile, string channel, string version) - { - var archiveFileBlob = CalculateArchiveBlob(archiveFile, channel, version); - PublishFile(archiveFileBlob, archiveFile); - } - - public void PublishFile(string blob, string file) - { - Console.WriteLine($"Publishing file '{file}' to '{blob}'"); - - CloudBlockBlob blockBlob = _blobContainer.GetBlockBlobReference(blob); - blockBlob.UploadFromFileAsync( - file, - AccessCondition.GenerateIfNotExistsCondition(), - options: null, - operationContext: null).Wait(); - - SetBlobPropertiesBasedOnFileType(blockBlob); - } - - public void PublishStringToBlob(string blob, string content) - { - CloudBlockBlob blockBlob = _blobContainer.GetBlockBlobReference(blob); - blockBlob.UploadTextAsync(content).Wait(); - - blockBlob.Properties.ContentType = "text/plain"; - blockBlob.SetPropertiesAsync().Wait(); - } - - public void CopyBlob(string sourceBlob, string targetBlob) - { - Console.WriteLine($"Copying blob '{sourceBlob}' to '{targetBlob}'"); - - CloudBlockBlob source = _blobContainer.GetBlockBlobReference(sourceBlob); - CloudBlockBlob target = _blobContainer.GetBlockBlobReference(targetBlob); - - // Create the empty blob - using (MemoryStream ms = new MemoryStream()) - { - target.UploadFromStreamAsync(ms).Wait(); - } - - // Copy actual blob data - target.StartCopyAsync(source).Wait(); - } - - private void SetBlobPropertiesBasedOnFileType(CloudBlockBlob blockBlob) - { - if (Path.GetExtension(blockBlob.Uri.AbsolutePath.ToLower()) == ".svg") - { - blockBlob.Properties.ContentType = "image/svg+xml"; - blockBlob.Properties.CacheControl = "no-cache"; - blockBlob.SetPropertiesAsync().Wait(); - } - else if (Path.GetExtension(blockBlob.Uri.AbsolutePath.ToLower()) == ".version") - { - blockBlob.Properties.ContentType = "text/plain"; - blockBlob.SetPropertiesAsync().Wait(); - } - } - - public IEnumerable ListBlobs(string virtualDirectory) - { - CloudBlobDirectory blobDir = _blobContainer.GetDirectoryReference(virtualDirectory); - BlobContinuationToken continuationToken = new BlobContinuationToken(); - - var blobFiles = blobDir.ListBlobsSegmentedAsync(continuationToken).Result; - return blobFiles.Results.Select(bf => bf.Uri.PathAndQuery); - } - - public string AcquireLeaseOnBlob( - string blob, - TimeSpan? maxWaitDefault=null, - TimeSpan? delayDefault=null) - { - TimeSpan maxWait = maxWaitDefault ?? TimeSpan.FromSeconds(1800); - TimeSpan delay = delayDefault ?? TimeSpan.FromMilliseconds(500); - - Stopwatch stopWatch = new Stopwatch(); - stopWatch.Start(); - - // This will throw an exception with HTTP code 409 when we cannot acquire the lease - // But we should block until we can get this lease, with a timeout (maxWaitSeconds) - while (stopWatch.ElapsedMilliseconds < maxWait.TotalMilliseconds) - { - try - { - CloudBlockBlob cloudBlob = _blobContainer.GetBlockBlobReference(blob); - System.Threading.Tasks.Task task = cloudBlob.AcquireLeaseAsync(TimeSpan.FromMinutes(1), null); - task.Wait(); - - string leaseID = task.Result; - - // Create a cancelabble task that will auto-renew the lease until the lease is released - _cancellationTokenSource = new CancellationTokenSource(); - _leaseRenewalTask = Task.Run(() => - { AutoRenewLease(this, blob, leaseID); }, - _cancellationTokenSource.Token); - - return leaseID; - } - catch (Exception e) - { - Console.WriteLine($"Retrying lease acquisition on {blob}, {e.Message}"); - Thread.Sleep(delay); - } - } - - ResetLeaseRenewalTaskState(); - - throw new Exception($"Unable to acquire lease on {blob}"); - } - - private void ResetLeaseRenewalTaskState() - { - // Cancel the lease renewal task if it was created - if (_leaseRenewalTask != null) - { - _cancellationTokenSource.Cancel(); - - // Block until the task ends. It can throw if we cancelled it before it completed. - try - { - _leaseRenewalTask.Wait(); - } - catch(Exception) - { - // Ignore the caught exception as it will be expected. - } - - _leaseRenewalTask = null; - } - } - - private static void AutoRenewLease(AzurePublisher instance, string blob, string leaseId) - { - // We will renew the lease every 45 seconds - TimeSpan maxWait = TimeSpan.FromSeconds(45); - TimeSpan delay = TimeSpan.FromMilliseconds(500); - TimeSpan waitFor = maxWait; - - CancellationToken token = instance._cancellationTokenSource.Token; - while (true) - { - // If the task has been requested to be cancelled, then do so. - token.ThrowIfCancellationRequested(); - - try - { - CloudBlockBlob cloudBlob = instance._blobContainer.GetBlockBlobReference(blob); - AccessCondition ac = new AccessCondition() { LeaseId = leaseId }; - cloudBlob.RenewLeaseAsync(ac).Wait(); - waitFor = maxWait; - } - catch (Exception e) - { - Console.WriteLine($"Retrying lease renewal on {blob}, {e.Message}"); - waitFor = delay; - } - - // If the task has been requested to be cancelled, then do so. - token.ThrowIfCancellationRequested(); - - Thread.Sleep(waitFor); - } - } - - public void ReleaseLeaseOnBlob(string blob, string leaseId) - { - // Cancel the lease renewal task since we are about to release the lease. - ResetLeaseRenewalTaskState(); - - CloudBlockBlob cloudBlob = _blobContainer.GetBlockBlobReference(blob); - AccessCondition ac = new AccessCondition() { LeaseId = leaseId }; - cloudBlob.ReleaseLeaseAsync(ac).Wait(); - } - - public bool IsLatestSpecifiedVersion(string version) - { - System.Threading.Tasks.Task task = _blobContainer.GetBlockBlobReference(version).ExistsAsync(); - task.Wait(); - return task.Result; - } - - public void DropLatestSpecifiedVersion(string version) - { - CloudBlockBlob blob = _blobContainer.GetBlockBlobReference(version); - using (MemoryStream ms = new MemoryStream()) - { - blob.UploadFromStreamAsync(ms).Wait(); - } - } - - public void CreateBlobIfNotExists(string path) - { - System.Threading.Tasks.Task task = _blobContainer.GetBlockBlobReference(path).ExistsAsync(); - task.Wait(); - if (!task.Result) - { - CloudBlockBlob blob = _blobContainer.GetBlockBlobReference(path); - using (MemoryStream ms = new MemoryStream()) - { - blob.UploadFromStreamAsync(ms).Wait(); - } - } - } - - public bool TryDeleteBlob(string path) - { - try - { - DeleteBlob(path); - - return true; - } - catch (Exception e) - { - Console.WriteLine($"Deleting blob {path} failed with \r\n{e.Message}"); - - return false; - } - } - - public void DeleteBlob(string path) - { - _blobContainer.GetBlockBlobReference(path).DeleteAsync().Wait(); - } - - public string CalculateInstallerUploadUrl(string installerFile, string channel, string version) - { - return $"{s_dotnetBlobRootUrl}{CalculateInstallerBlob(installerFile, channel, version)}"; - } - - public static string CalculateInstallerBlob(string installerFile, string channel, string version) - { - return $"{channel}/Installers/{version}/{Path.GetFileName(installerFile)}"; - } - - public static string CalculateArchiveBlob(string archiveFile, string channel, string version) - { - return $"{channel}/Binaries/{version}/{Path.GetFileName(archiveFile)}"; - } - - public static async Task DownloadFile(string blobFilePath, string localDownloadPath) - { - var blobUrl = $"{s_dotnetBlobRootUrl}{blobFilePath}"; - - using (var client = new HttpClient()) - { - var request = new HttpRequestMessage(HttpMethod.Get, blobUrl); - var sendTask = client.SendAsync(request, HttpCompletionOption.ResponseHeadersRead); - var response = sendTask.Result.EnsureSuccessStatusCode(); - - var httpStream = await response.Content.ReadAsStreamAsync(); - - using (var fileStream = File.Create(localDownloadPath)) - using (var reader = new StreamReader(httpStream)) - { - httpStream.CopyTo(fileStream); - fileStream.Flush(); - } - } - } - - public void DownloadFilesWithExtension(string blobVirtualDirectory, string fileExtension, string localDownloadPath) - { - CloudBlobDirectory blobDir = _blobContainer.GetDirectoryReference(blobVirtualDirectory); - BlobContinuationToken continuationToken = new BlobContinuationToken(); - - var blobFiles = blobDir.ListBlobsSegmentedAsync(continuationToken).Result; - - foreach (var blobFile in blobFiles.Results.OfType()) - { - if (Path.GetExtension(blobFile.Uri.AbsoluteUri) == fileExtension) - { - string localBlobFile = Path.Combine(localDownloadPath, Path.GetFileName(blobFile.Uri.AbsoluteUri)); - Console.WriteLine($"Downloading {blobFile.Uri.AbsoluteUri} to {localBlobFile}..."); - blobFile.DownloadToFileAsync(localBlobFile, FileMode.Create).Wait(); - } - } - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Publishing/DebRepoPublisher.cs b/src/test/build/shared-build-targets-utils/Publishing/DebRepoPublisher.cs deleted file mode 100644 index b5203609..00000000 --- a/src/test/build/shared-build-targets-utils/Publishing/DebRepoPublisher.cs +++ /dev/null @@ -1,55 +0,0 @@ -using System; -using System.IO; -using System.Net.Http; -using System.Text; -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.WindowsAzure.Storage; -using Microsoft.WindowsAzure.Storage.Blob; - -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; - -namespace Microsoft.DotNet.Cli.Build -{ - public class DebRepoPublisher - { - private const string _debianRevisionNumber = "1"; - private string _repoID; - private string _uploadJsonDirectory; - - public DebRepoPublisher(string uploadJsonDirectory) - { - _uploadJsonDirectory = uploadJsonDirectory; - _repoID = Environment.GetEnvironmentVariable("REPO_ID"); - } - - public void PublishDebFileToDebianRepo(string packageName, string packageVersion, string uploadUrl) - { - var uploadJson = GenerateUploadJsonFile(packageName, packageVersion, uploadUrl); - - Cmd(Path.Combine(Dirs.RepoRoot, "scripts", "publish", "repoapi_client.sh"), "-addpkg", uploadJson) - .Execute() - .EnsureSuccessful(); - } - - private string GenerateUploadJsonFile(string packageName, string packageVersion, string uploadUrl) - { - var uploadJson = Path.Combine(_uploadJsonDirectory, "package_upload.json"); - File.Delete(uploadJson); - - using (var fileStream = File.Create(uploadJson)) - { - using (StreamWriter sw = new StreamWriter(fileStream)) - { - sw.WriteLine("{"); - sw.WriteLine($" \"name\":\"{packageName}\","); - sw.WriteLine($" \"version\":\"{packageVersion}-{_debianRevisionNumber}\","); - sw.WriteLine($" \"repositoryId\":\"{_repoID}\","); - sw.WriteLine($" \"sourceUrl\":\"{uploadUrl}\""); - sw.WriteLine("}"); - } - } - - return uploadJson; - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/AptDependencyUtility.cs b/src/test/build/shared-build-targets-utils/Utils/AptDependencyUtility.cs deleted file mode 100644 index c8343c61..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/AptDependencyUtility.cs +++ /dev/null @@ -1,24 +0,0 @@ -using System; -using System.IO; -using System.Collections.Generic; -using System.Text.RegularExpressions; -using System.Linq; -using System.Threading.Tasks; -using Microsoft.DotNet.Cli.Build.Framework; - -namespace Microsoft.DotNet.Cli.Build -{ - public class AptDependencyUtility - { - public static bool PackageIsInstalled(string packageName) - { - var result = Command.Create("dpkg", "-s", packageName) - .CaptureStdOut() - .CaptureStdErr() - .QuietBuildReporter() - .Execute(); - - return result.ExitCode == 0; - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/BranchInfo.cs b/src/test/build/shared-build-targets-utils/Utils/BranchInfo.cs deleted file mode 100644 index 72f36508..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/BranchInfo.cs +++ /dev/null @@ -1,38 +0,0 @@ -using System.Collections.Generic; -using System.IO; - -namespace Microsoft.DotNet.Cli.Build -{ - public class BranchInfo - { - private static readonly string s_branchInfoFileName = "branchinfo.txt"; - - private string _repoRoot; - private string _branchInfoFile; - - public IDictionary Entries { get; set; } - - public BranchInfo(string repoRoot) - { - _repoRoot = repoRoot; - _branchInfoFile = Path.Combine(_repoRoot, s_branchInfoFileName); - - Entries = ReadBranchInfo(_branchInfoFile); - } - - private IDictionary ReadBranchInfo(string path) - { - var lines = File.ReadAllLines(path); - var dict = new Dictionary(); - foreach (var line in lines) - { - if (!line.Trim().StartsWith("#") && !string.IsNullOrWhiteSpace(line)) - { - var splat = line.Split(new[] { '=' }, 2); - dict[splat[0]] = splat[1]; - } - } - return dict; - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/Crossgen.cs b/src/test/build/shared-build-targets-utils/Utils/Crossgen.cs deleted file mode 100644 index 5009b1ea..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/Crossgen.cs +++ /dev/null @@ -1,234 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.DotNet.InternalAbstractions; -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; - -namespace Microsoft.DotNet.Cli.Build -{ - public class Crossgen - { - private string _coreClrVersion; - private string _jitVersion; - private string _crossGenPath; - private string _targetRID; - private static readonly string s_transportPackagePrefix = "transport"; - private static readonly string[] s_excludedLibraries = - { - "mscorlib.dll", - "mscorlib.ni.dll", - "System.Private.CoreLib.dll", - "System.Private.CoreLib.ni.dll" - }; - - // This is not always correct. The version of crossgen we need to pick up is whatever one was restored as part - // of the Microsoft.NETCore.Runtime.CoreCLR package that is part of the shared library. For now, the version hardcoded - // in CompileTargets and the one in the shared library project.json match and are updated in lock step, but long term - // we need to be able to look at the project.lock.json file and figure out what version of Microsoft.NETCore.Runtime.CoreCLR - // was used, and then select that version. - public Crossgen(string coreClrVersion, string jitVersion, string targetRID = null) - { - _coreClrVersion = coreClrVersion; - _jitVersion = jitVersion; - _targetRID = targetRID; - _crossGenPath = GetCrossgenPathForVersion(); - } - - private string GetCrossgenPathForVersion() - { - var crossgenPackagePath = GetCrossGenPackagePathForVersion(); - string ridCrossgen = null; - - if (crossgenPackagePath == null) - { - return ridCrossgen; - } - - // TODO-ARM-Crossgen: Add ubuntu.14.04-arm and ubuntu.16.04-arm - if ((_targetRID == "win8-arm") || (_targetRID == "win-arm")) - { - ridCrossgen = Path.Combine(crossgenPackagePath, "tools", "x86_arm", $"crossgen{Constants.ExeSuffix}"); - } - else if ((_targetRID == "win10-arm64") || (_targetRID == "win-arm64")) - { - ridCrossgen = Path.Combine(crossgenPackagePath, "tools", "x64_arm", $"crossgen{Constants.ExeSuffix}"); - } - else - { - ridCrossgen = Path.Combine(crossgenPackagePath, "tools", $"crossgen{Constants.ExeSuffix}"); - } - - return ridCrossgen; - } - - private string GetLibCLRJitPathForVersion() - { - var jitRid = _targetRID ?? GetCoreCLRRid(); - var jitPackagePath = GetJitPackagePathForVersion(); - - if (jitPackagePath == null) - { - return null; - } - - string jitPath = Path.Combine(jitPackagePath, "runtimes", jitRid, "native", $"{Constants.DynamicLibPrefix}clrjit{Constants.DynamicLibSuffix}"); - - // TODO-ARM-Crossgen: Add ubuntu.14.04-arm and ubuntu.16.04-arm - if ((_targetRID == "win8-arm") || (_targetRID == "win-arm")) - { - jitPath = Path.Combine(jitPackagePath, "runtimes", "x86_arm", "native", $"{Constants.DynamicLibPrefix}clrjit{Constants.DynamicLibSuffix}"); - } - else if ((_targetRID == "win10-arm64") || (_targetRID == "win-arm64")) - { - jitPath = Path.Combine(jitPackagePath, "runtimes", "x64_arm64", "native", $"{Constants.DynamicLibPrefix}clrjit{Constants.DynamicLibSuffix}"); - } - - return jitPath; - } - - private string GetJitPackagePathForVersion() - { - string jitRid = _targetRID ?? GetCoreCLRRid(); - - if (jitRid == null) - { - return null; - } - - string packageId = $"{s_transportPackagePrefix}.runtime.{jitRid}.Microsoft.NETCore.Jit"; - - return Path.Combine( - Dirs.PkgNuGetPackages, - packageId, - _jitVersion); - } - - private string GetCoreLibsDirForVersion() - { - string coreclrRid = _targetRID ?? GetCoreCLRRid(); - - if (coreclrRid == null) - { - return null; - } - - string packageId = $"{s_transportPackagePrefix}.runtime.{coreclrRid}.Microsoft.NETCore.Runtime.CoreCLR"; - - return Path.Combine( - Dirs.PkgNuGetPackages, - packageId, - _coreClrVersion, - "runtimes", - coreclrRid, - "lib", - "netstandard1.0"); - } - - private string GetCrossGenPackagePathForVersion() - { - string coreclrRid = _targetRID ?? GetCoreCLRRid(); - - if (coreclrRid == null) - { - return null; - } - - string packageId = $"{s_transportPackagePrefix}.runtime.{coreclrRid}.Microsoft.NETCore.Runtime.CoreCLR"; - - return Path.Combine( - Dirs.PkgNuGetPackages, - packageId, - _coreClrVersion); - } - - private string GetCoreCLRRid() - { - string rid = null; - if (CurrentPlatform.IsWindows) - { - var arch = RuntimeEnvironment.RuntimeArchitecture; - rid = $"win7-{arch}"; - } - else if (CurrentPlatform.IsOSX) - { - rid = "osx.10.10-x64"; - } - else if (CurrentPlatform.IsCentOS || CurrentPlatform.IsRHEL) - { - // CentOS runtime is in the runtime.rhel.7-x64... package as are all - // versions of RHEL - rid = "rhel.7-x64"; - } - else if (CurrentPlatform.IsLinux) - { - rid = RuntimeEnvironment.GetRuntimeIdentifier(); - } - - return rid; - } - - public void CrossgenDirectory(string sharedFxPath, string pathToAssemblies) - { - // Check if we need to skip crossgen - if (string.Equals(Environment.GetEnvironmentVariable("DISABLE_CROSSGEN"), "1")) - { - var originalColor = Console.ForegroundColor; - Console.ForegroundColor = ConsoleColor.Yellow; - Console.WriteLine("Skipping crossgen for because DISABLE_CROSSGEN is set to 1"); - Console.ForegroundColor = originalColor; - return; - } - - // HACK - // The input directory can be a portable FAT app (example the CLI itself). - // In that case there can be RID specific managed dependencies which are not right next to the app binary (example System.Diagnostics.TraceSource). - // We need those dependencies during crossgen. For now we just pass all subdirectories of the input directory as input to crossgen. - // The right fix - - // If the assembly has deps.json then parse the json file to get all the dependencies, pass these dependencies as input to crossgen. - // else pass the current directory of assembly as input to crossgen. - var coreLibsDir = GetCoreLibsDirForVersion(); - var addtionalPaths = Directory.GetDirectories(pathToAssemblies, "*", SearchOption.AllDirectories).ToList(); - var paths = new List() { coreLibsDir, sharedFxPath, pathToAssemblies }; - paths.AddRange(addtionalPaths); - var platformAssembliesPaths = string.Join(Path.PathSeparator.ToString(), paths.Distinct()); - var jitPath = GetLibCLRJitPathForVersion(); - - var env = new Dictionary() - { - // disable partial ngen - { "COMPlus_PartialNGen", "0" } - }; - - // Form the dynamic path that would not collide if another instance of this is running. - string basePath = Path.Combine(Dirs.Intermediate, Guid.NewGuid().ToString()); - Directory.CreateDirectory(basePath); - - foreach (var file in Directory.GetFiles(pathToAssemblies)) - { - string fileName = Path.GetFileName(file); - - if (s_excludedLibraries.Any(lib => String.Equals(lib, fileName, StringComparison.OrdinalIgnoreCase)) - || !PEUtils.HasMetadata(file)) - { - continue; - } - - string tempPathName = Path.Combine(basePath, Path.ChangeExtension(fileName, "readytorun")); - - IList crossgenArgs = new List { - "-readytorun", "-in", file, "-out", tempPathName, - "-platform_assemblies_paths", platformAssembliesPaths - }; - - crossgenArgs.Add("-JITPath"); - crossgenArgs.Add(jitPath); - - ExecSilent(_crossGenPath, crossgenArgs, env); - - File.Copy(tempPathName, file, overwrite: true); - } - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/DebPackageCreator.cs b/src/test/build/shared-build-targets-utils/Utils/DebPackageCreator.cs deleted file mode 100644 index ca156a5f..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/DebPackageCreator.cs +++ /dev/null @@ -1,194 +0,0 @@ -// Copyright (c) .NET Foundation and contributors. All rights reserved. -// Licensed under the MIT license. See LICENSE file in the project root for full license information. - -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Microsoft.DotNet.Cli.Build.Framework; - -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; - -namespace Microsoft.DotNet.Cli.Build -{ - public class DebPackageCreator - { - private static readonly string s_dotnetDebToolPackageId = "dotnet-deb-tool"; - private static readonly string s_toolConsumerProjectName = "dotnet-deb-tool-consumer"; - private static readonly string s_debianConfigJsonFileName = "debian_config.json"; - - private DotNetCli _dotnet; - private string _intermediateDirectory; - private string _dotnetDebToolVersion; - private string _dotnetDebToolPackageSource; - private string _consumingProjectDirectory; - - public DebPackageCreator( - DotNetCli dotnet, - string intermediateDirectory, - string dotnetDebToolVersion = "1.0.1-*", - string dotnetDebToolPackageSource = null) - { - _dotnet = dotnet; - _intermediateDirectory = intermediateDirectory; - _dotnetDebToolVersion = dotnetDebToolVersion; - _dotnetDebToolPackageSource = dotnetDebToolPackageSource; - - _consumingProjectDirectory = Path.Combine(_intermediateDirectory, s_toolConsumerProjectName); - - InitializeDotnetDebTool(); - } - - public void CreateDeb( - string debianConfigJsonFile, - string packageName, - string packageVersion, - string inputBinariesDirectory, - Dictionary debianConfigVariables, - string outputFile, - string manpagesDirectory = null) - { - string debIntermediatesDirectory = Path.Combine(_intermediateDirectory, packageName, packageVersion); - if (Directory.Exists(debIntermediatesDirectory)) - { - FS.Rmdir(debIntermediatesDirectory); - } - FS.Mkdirp(debIntermediatesDirectory); - - string layoutDirectory = Path.Combine(debIntermediatesDirectory, "debianLayoutDirectory"); - var debianLayoutDirectories = new DebianLayoutDirectories(layoutDirectory); - - CreateEmptyDebianLayout(debianLayoutDirectories); - CopyFilesToDebianLayout( - debianLayoutDirectories, - debianConfigJsonFile, - inputBinariesDirectory, - manpagesDirectory); - ReplaceDebianConfigJsonVariables(debianLayoutDirectories, debianConfigVariables); - CreateDebianPackage(debianLayoutDirectories, debIntermediatesDirectory, outputFile, packageName, packageVersion); - } - - private void CreateEmptyDebianLayout(DebianLayoutDirectories layoutDirectories) - { - if (Directory.Exists(layoutDirectories.LayoutDirectory)) - { - FS.Rmdir(layoutDirectories.LayoutDirectory); - } - Directory.CreateDirectory(layoutDirectories.LayoutDirectory); - - Directory.CreateDirectory(layoutDirectories.AbsolutePlacement); - Directory.CreateDirectory(layoutDirectories.PackageRoot); - Directory.CreateDirectory(layoutDirectories.Samples); - Directory.CreateDirectory(layoutDirectories.Docs); - } - - private void CopyFilesToDebianLayout( - DebianLayoutDirectories layoutDirectories, - string debianConfigFile, - string inputBinariesDirectory, - string manpagesDirectory) - { - FS.CopyRecursive(inputBinariesDirectory, layoutDirectories.PackageRoot); - - if (manpagesDirectory != null) - { - FS.CopyRecursive(manpagesDirectory, layoutDirectories.Docs); - } - - File.Copy(debianConfigFile, - Path.Combine(layoutDirectories.LayoutDirectory, s_debianConfigJsonFileName)); - } - - private void ReplaceDebianConfigJsonVariables( - DebianLayoutDirectories debianLayoutDirectories, - Dictionary debianConfigVariables) - { - var debianConfigFile = Path.Combine(debianLayoutDirectories.LayoutDirectory, s_debianConfigJsonFileName); - var debianConfigFileContents = File.ReadAllText(debianConfigFile); - - foreach (var variable in debianConfigVariables) - { - var variableToken = $"%{variable.Key}%"; - debianConfigFileContents = debianConfigFileContents.Replace(variableToken, variable.Value); - } - File.WriteAllText(debianConfigFile, debianConfigFileContents); - } - - private void CreateDebianPackage( - DebianLayoutDirectories debianLayoutDirectories, - string intermediatesOutputDirectory, - string outputFile, - string packageName, - string packageVersion) - { - _dotnet.Exec("deb-tool", - "-i", debianLayoutDirectories.LayoutDirectory, - "-o", intermediatesOutputDirectory, - "-n", packageName, - "-v", packageVersion) - .WorkingDirectory(_consumingProjectDirectory) - .Execute() - .EnsureSuccessful(); - - var debianFile = Directory.EnumerateFiles(intermediatesOutputDirectory, "*.deb").First(); - File.Copy(debianFile, outputFile, true); - } - - private void InitializeDotnetDebTool() - { - CreateAndRestoreToolConsumingProject(); - } - - private void CreateAndRestoreToolConsumingProject() - { - if (Directory.Exists(_consumingProjectDirectory)) - { - FS.Rmdir(_consumingProjectDirectory); - } - FS.Mkdirp(_consumingProjectDirectory); - - var projectJsonFile = Path.Combine(_consumingProjectDirectory, "project.json"); - File.WriteAllText(projectJsonFile, GetDotnetDebProjectJsonContents()); - - Command restore = _dotnetDebToolPackageSource == null - ? _dotnet.Restore("--disable-parallel") - : _dotnet.Restore("-f", $"{_dotnetDebToolPackageSource}", "--disable-parallel"); - - restore - .WorkingDirectory(Path.GetDirectoryName(projectJsonFile)) - .Execute() - .EnsureSuccessful(); - } - - private string GetDotnetDebProjectJsonContents() - { - var projectJson = new StringBuilder(); - projectJson.Append("{"); - projectJson.Append($" \"version\": \"1.0.0-*\","); - projectJson.Append($" \"name\": \"{s_toolConsumerProjectName}\","); - projectJson.Append(" \"frameworks\": { \"netcoreapp1.0\": { } },"); - projectJson.Append($" \"tools\": {{ \"{s_dotnetDebToolPackageId}\": \"{_dotnetDebToolVersion}\" }},"); - projectJson.Append("}"); - - return projectJson.ToString(); - } - - private class DebianLayoutDirectories - { - private string _layoutDirectory; - - public DebianLayoutDirectories(string layoutDirectory) - { - _layoutDirectory = layoutDirectory; - } - - public string LayoutDirectory => _layoutDirectory; - public string PackageRoot => Path.Combine(_layoutDirectory, "package_root"); - public string AbsolutePlacement => Path.Combine(_layoutDirectory, "$"); - public string Samples => Path.Combine(_layoutDirectory, "samples"); - public string Docs => Path.Combine(_layoutDirectory, "docs"); - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/Dirs.cs b/src/test/build/shared-build-targets-utils/Utils/Dirs.cs deleted file mode 100644 index f5bf8a10..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/Dirs.cs +++ /dev/null @@ -1,54 +0,0 @@ -using System; -using System.IO; -using System.Runtime.InteropServices; -using Microsoft.DotNet.InternalAbstractions; - -namespace Microsoft.DotNet.Cli.Build -{ - public static class Dirs - { - public static readonly string RepoRoot = Directory.GetCurrentDirectory(); - - public static readonly string DebPackagingConfig = Path.Combine(Dirs.RepoRoot, "packaging", "deb"); - public static readonly string Output = Path.Combine( - RepoRoot, - "artifacts", - Environment.GetEnvironmentVariable("TARGETRID") ?? RuntimeEnvironment.GetRuntimeIdentifier()); - - public static readonly string Intermediate = Path.Combine(Output, "intermediate"); - public static readonly string PackagesIntermediate = Path.Combine(Output, "packages/intermediate"); - public static readonly string PackagesNoRID = Path.Combine(RepoRoot, "artifacts", "packages"); - public static readonly string Packages = Path.Combine(Output, "packages"); - public static readonly string Stage1 = Path.Combine(Output, "stage1"); - public static readonly string Stage1Compilation = Path.Combine(Output, "stage1compilation"); - public static readonly string Stage1Symbols = Path.Combine(Output, "stage1symbols"); - public static readonly string Stage2 = Path.Combine(Output, "stage2"); - public static readonly string Stage2Compilation = Path.Combine(Output, "stage2compilation"); - public static readonly string Stage2Symbols = Path.Combine(Output, "stage2symbols"); - public static readonly string CorehostLatest = Path.Combine(Output, "corehost"); // Not using Path.Combine(Output, "corehost", "latest") to keep signing working. - public static readonly string CorehostLocked = Path.Combine(Output, "corehost", "locked"); - public static readonly string CorehostLocalPackages = Path.Combine(Output, "corehost"); - public static readonly string SharedFrameworkPublish = Path.Combine(Intermediate, "sharedFrameworkPublish"); - public static readonly string TestOutput = Path.Combine(Output, "tests"); - public static readonly string TestArtifacts = Path.Combine(TestOutput, "artifacts"); - public static readonly string TestPackages = Path.Combine(TestOutput, "packages"); - public static readonly string TestPackagesBuild = Path.Combine(TestOutput, "packagesBuild"); - - public static readonly string OSXReferenceAssembliesPath = "/Library/Frameworks/Mono.framework/Versions/Current/lib/mono/xbuild-frameworks"; - public static readonly string UsrLocalReferenceAssembliesPath = "/usr/local/lib/mono/xbuild-frameworks"; - public static readonly string UsrReferenceAssembliesPath = "/usr/lib/mono/xbuild-frameworks"; - - - public static string NuGetPackages = Environment.GetEnvironmentVariable("NUGET_PACKAGES") ?? GetNuGetPackagesDir(); - public static string PkgNuGetPackages = Path.Combine(Dirs.RepoRoot, "pkg", "packages"); - - private static string GetNuGetPackagesDir() - { - if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) - { - return Path.Combine(Dirs.RepoRoot, ".nuget", "packages"); - } - return Path.Combine(Dirs.RepoRoot, ".nuget", "packages"); - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/DotNetCli.Stages.cs b/src/test/build/shared-build-targets-utils/Utils/DotNetCli.Stages.cs deleted file mode 100644 index 9d70db89..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/DotNetCli.Stages.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System; -using System.IO; -using System.Linq; -using System.Runtime.InteropServices; -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.DotNet.InternalAbstractions; - -namespace Microsoft.DotNet.Cli.Build -{ - public partial class DotNetCli - { - public static readonly DotNetCli Stage1 = new DotNetCli(Dirs.Stage1); - public static readonly DotNetCli Stage2 = new DotNetCli(Dirs.Stage2); - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/FS.cs b/src/test/build/shared-build-targets-utils/Utils/FS.cs deleted file mode 100644 index a34f164b..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/FS.cs +++ /dev/null @@ -1,124 +0,0 @@ -using System.IO; -using System.Runtime.InteropServices; -using System; - -using Microsoft.DotNet.Cli.Build.Framework; - -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; - -namespace Microsoft.DotNet.Cli.Build -{ - public static class FS - { - public static void Mkdirp(string dir) - { - if (!Directory.Exists(dir)) - { - Directory.CreateDirectory(dir); - } - } - - public static void Rm(string file) - { - if(File.Exists(file)) - { - File.Delete(file); - } - } - - public static void Rmdir(string dir) - { - if(Directory.Exists(dir)) - { - Directory.Delete(dir, recursive: true); - } - } - - public static void RmFilesInDirRecursive(string dir, string filePattern) - { - var files = Directory.EnumerateFiles(dir, filePattern, SearchOption.AllDirectories); - foreach (var file in files) - { - FS.Rm(file); - } - } - - public static void Chmod(string file, string mode, bool recursive = false) - { - if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) - { - if (recursive) - { - Command.Create("chmod", "-R", mode, file).Execute().EnsureSuccessful(); - } - else - { - Command.Create("chmod", mode, file).Execute().EnsureSuccessful(); - } - } - } - - public static void ChmodAll(string searchDir, string pattern, string mode) - { - Exec("find", searchDir, "-type", "f", "-name", pattern, "-exec", "chmod", mode, "{}", ";"); - } - - public static void FixModeFlags(string dir) - { - if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) - { - // Managed code doesn't need 'x' - ChmodAll(dir, "*.dll", "644"); - ChmodAll(dir, "*.exe", "644"); - - // Generally, dylibs and sos have 'x' (no idea if it's required ;)) - // (No need to condition this on OS since there shouldn't be any dylibs on Linux, - // but even if they are we may as well set their mode flags :)) - ChmodAll(dir, "*.dylib", "755"); - ChmodAll(dir, "*.so", "755"); - - // Executables (those without dots) are executable :) - Exec("find", dir, "-type", "f", "!", "-name", "*.*", "-exec", "chmod", "755", "{}", ";"); - } - } - - public static void CopyRecursive(string sourceDirectory, string destinationDirectory, bool overwrite = false) - { - Mkdirp(destinationDirectory); - - foreach(var dir in Directory.EnumerateDirectories(sourceDirectory)) - { - CopyRecursive(dir, Path.Combine(destinationDirectory, Path.GetFileName(dir)), overwrite); - } - - foreach(var file in Directory.EnumerateFiles(sourceDirectory)) - { - var dest = Path.Combine(destinationDirectory, Path.GetFileName(file)); - if (!File.Exists(dest) || overwrite) - { - // We say overwrite true, because we only get here if the file didn't exist (thus it doesn't matter) or we - // wanted to overwrite :) - File.Copy(file, dest, overwrite: true); - } - } - } - - public static void CleanBinObj(BuildTargetContext c, string dir) - { - dir = dir ?? c.BuildContext.BuildDirectory; - foreach(var candidate in Directory.EnumerateDirectories(dir)) - { - if (string.Equals(Path.GetFileName(candidate), "bin") || - string.Equals(Path.GetFileName(candidate), "Bin") || - string.Equals(Path.GetFileName(candidate), "obj")) - { - Utils.DeleteDirectory(candidate); - } - else - { - CleanBinObj(c, candidate); - } - } - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/JsonUtils.cs b/src/test/build/shared-build-targets-utils/Utils/JsonUtils.cs deleted file mode 100644 index 18fb5b22..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/JsonUtils.cs +++ /dev/null @@ -1,28 +0,0 @@ -using System; -using System.IO; -using Newtonsoft.Json; -using Newtonsoft.Json.Linq; - -namespace Microsoft.DotNet.Cli.Build -{ - public static class JsonUtils - { - public static JObject ReadProject(string projectJsonPath) - { - using (TextReader projectFileReader = File.OpenText(projectJsonPath)) - { - var projectJsonReader = new JsonTextReader(projectFileReader); - - var serializer = new JsonSerializer(); - return serializer.Deserialize(projectJsonReader); - } - } - - public static void WriteProject(JObject projectRoot, string projectJsonPath) - { - string projectJson = JsonConvert.SerializeObject(projectRoot, Formatting.Indented); - - File.WriteAllText(projectJsonPath, projectJson + Environment.NewLine); - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/Monikers.cs b/src/test/build/shared-build-targets-utils/Utils/Monikers.cs deleted file mode 100644 index 5e60164b..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/Monikers.cs +++ /dev/null @@ -1,94 +0,0 @@ -using Microsoft.DotNet.Cli.Build.Framework; -using Microsoft.DotNet.InternalAbstractions; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Cli.Build -{ - public class Monikers - { - public const string SharedFrameworkName = "Microsoft.NETCore.App"; - public const string CLISdkBrandName = "Microsoft .NET Core 1.0.0 - SDK Preview 2"; - - public static string GetProductMoniker(BuildTargetContext c, string artifactPrefix, string version) - { - string rid = Environment.GetEnvironmentVariable("TARGETRID") ?? RuntimeEnvironment.GetRuntimeIdentifier(); - - // Look for expected RIDs, including Portable ones - string platformRID = null; - if (Utils.IsPortableRID(rid, out platformRID) || rid == "ubuntu.16.04-x64" || rid == "ubuntu.16.04-arm" || rid == "ubuntu.16.10-x64" || rid == "fedora.24-x64" || rid == "opensuse.42.1-x64" || rid == "debian.8-armel" || rid == "tizen.4.0.0-armel") - { - return $"{artifactPrefix}-{rid}.{version}"; - } - else - { - string osname = GetOSShortName(); - string arch = Environment.GetEnvironmentVariable("TARGETPLATFORM") ?? CurrentArchitecture.Current.ToString(); - return $"{artifactPrefix}-{osname}-{arch}.{version}"; - } - } - - public static string GetBadgeMoniker(BuildTargetContext c) - { - string rid = c.BuildContext.Get("TargetRID"); - string platformRID = null; - if (Utils.IsPortableRID(rid, out platformRID)) - { - return $"{platformRID}_portable_{c.BuildContext.Get("Platform")}"; - } - - switch (rid) - { - case "ubuntu.16.04-x64": - return "Ubuntu_16_04_x64"; - case "ubuntu.16.04-arm": - return "Ubuntu_16_04_arm"; - case "ubuntu.16.10-x64": - return "Ubuntu_16_10_x64"; - case "fedora.24-x64": - return "Fedora_24_x64"; - case "opensuse.42.1-x64": - return "openSUSE_42_1_x64"; - case "debian.8-armel": - return "Debian_8_armel"; - case "tizen.4.0.0-armel": - return "Tizen_4_0_0_armel"; - } - - return $"{CurrentPlatform.Current}_{c.BuildContext.Get("Platform")}"; - } - - public static string GetDebianHostFxrPackageName(string hostfxrNugetVersion) - { - return $"dotnet-hostfxr-{hostfxrNugetVersion}".ToLower(); - } - - public static string GetDebianSharedFrameworkPackageName(string sharedFrameworkNugetVersion) - { - return $"dotnet-sharedframework-{SharedFrameworkName}-{sharedFrameworkNugetVersion}".ToLower(); - } - - public static string GetDebianSharedHostPackageName(BuildTargetContext c) - { - return $"dotnet-host".ToLower(); - } - - public static string GetOSShortName() - { - string osname = ""; - switch (CurrentPlatform.Current) - { - case BuildPlatform.Windows: - osname = "win"; - break; - default: - osname = CurrentPlatform.Current.ToString().ToLower(); - break; - } - - return osname; - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/PEUtils.cs b/src/test/build/shared-build-targets-utils/Utils/PEUtils.cs deleted file mode 100644 index 3899ade7..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/PEUtils.cs +++ /dev/null @@ -1,27 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Reflection.PortableExecutable; - -namespace Microsoft.DotNet.Cli.Build -{ - public static class PEUtils - { - public static bool HasMetadata(string pathToFile) - { - try - { - using (var inStream = File.OpenRead(pathToFile)) - { - using (var peReader = new PEReader(inStream)) - { - return peReader.HasMetadata; - } - } - } - catch (BadImageFormatException) { } - - return false; - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/PublishMutationUtilties.cs b/src/test/build/shared-build-targets-utils/Utils/PublishMutationUtilties.cs deleted file mode 100644 index e96bfe29..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/PublishMutationUtilties.cs +++ /dev/null @@ -1,87 +0,0 @@ -using Microsoft.DotNet.Cli.Build.Framework; -using Newtonsoft.Json; -using Newtonsoft.Json.Linq; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Cli.Build -{ - public class PublishMutationUtilties - { - public static void CleanPublishOutput( - string path, - string name, - bool deleteRuntimeConfigJson=false, - bool deleteDepsJson=false, - bool deleteAppHost=false) - { - File.Delete(Path.Combine(path, $"{name}{Constants.ExeSuffix}")); - File.Delete(Path.Combine(path, $"{Constants.DynamicLibPrefix}{name}{Constants.DynamicLibSuffix}")); - File.Delete(Path.Combine(path, $"{name}.pdb")); - - if (deleteRuntimeConfigJson) - { - File.Delete(Path.Combine(path, $"{name}.runtimeconfig.json")); - } - - if (deleteDepsJson) - { - File.Delete(Path.Combine(path, $"{name}.deps.json")); - } - - if (deleteAppHost) - { - File.Delete(Path.Combine(path, $"apphost{Constants.ExeSuffix}")); - } - } - - public static void ChangeEntryPointLibraryName(string depsFile, string newName) - { - JToken deps; - using (var file = File.OpenText(depsFile)) - using (JsonTextReader reader = new JsonTextReader(file)) - { - deps = JObject.ReadFrom(reader); - } - - string version = null; - foreach (JProperty target in deps["targets"]) - { - var targetLibrary = target.Value.Children().FirstOrDefault(); - if (targetLibrary == null) - { - continue; - } - version = targetLibrary.Name.Substring(targetLibrary.Name.IndexOf('/') + 1); - if (newName == null) - { - targetLibrary.Remove(); - } - else - { - targetLibrary.Replace(new JProperty(newName + '/' + version, targetLibrary.Value)); - } - } - if (version != null) - { - var library = deps["libraries"].Children().First(); - if (newName == null) - { - library.Remove(); - } - else - { - library.Replace(new JProperty(newName + '/' + version, library.Value)); - } - using (var file = File.CreateText(depsFile)) - using (var writer = new JsonTextWriter(file) { Formatting = Formatting.Indented }) - { - deps.WriteTo(writer); - } - } - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs b/src/test/build/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs deleted file mode 100644 index 8e0ee4e1..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/SharedFrameworkPublisher.cs +++ /dev/null @@ -1,280 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Threading.Tasks; -using Newtonsoft.Json.Linq; -using Microsoft.DotNet.InternalAbstractions; -using Microsoft.DotNet.Cli.Build.Framework; -using Newtonsoft.Json; - -using static Microsoft.DotNet.Cli.Build.Framework.BuildHelpers; -using static Microsoft.DotNet.Cli.Build.FS; - -namespace Microsoft.DotNet.Cli.Build -{ - public class SharedFrameworkPublisher - { - public static string s_sharedFrameworkName = "Microsoft.NETCore.App"; - - private string _sharedFrameworkTemplateSourceRoot; - private string _sharedFrameworkNugetVersion; - private string _sharedFrameworkRid; - private string _sharedFrameworkTarget; - private string _sharedFrameworkSourceRoot; - private string _repoRoot; - private string _corehostLockedDirectory; - private string _corehostLatestDirectory; - - private Crossgen _crossgenUtil; - private string _corehostPackageSource; - - public SharedFrameworkPublisher( - string repoRoot, - string corehostLockedDirectory, - string corehostLatestDirectory, - string corehostPackageSource, - string sharedFrameworkNugetVersion, - string sharedFrameworkRid, - string sharedFrameworkTarget) - { - _repoRoot = repoRoot; - _corehostLockedDirectory = corehostLockedDirectory; - _corehostLatestDirectory = corehostLatestDirectory; - _corehostPackageSource = corehostPackageSource; - - string crossgenRID = null; - - // If we are dealing with cross-targeting compilation, then specify the - // correct RID for crossgen to use when compiling SharedFramework. - // TODO-ARM-Crossgen: Add ubuntu.14.04-arm and ubuntu.16.04-arm - string portablePlatformRID = null; - if ((sharedFrameworkRid == "win8-arm") || (sharedFrameworkRid == "win10-arm64") || (Utils.IsPortableRID(sharedFrameworkRid, out portablePlatformRID))) - { - crossgenRID = sharedFrameworkRid; - } - - _crossgenUtil = new Crossgen(DependencyVersions.CoreCLRVersion, DependencyVersions.JitVersion, crossgenRID); - - _sharedFrameworkTemplateSourceRoot = Path.Combine(repoRoot, "src", "sharedframework", "framework"); - _sharedFrameworkNugetVersion = sharedFrameworkNugetVersion; - - _sharedFrameworkRid = sharedFrameworkRid; - _sharedFrameworkTarget = sharedFrameworkTarget; - - _sharedFrameworkSourceRoot = GenerateSharedFrameworkProject( - _sharedFrameworkNugetVersion, - _sharedFrameworkTemplateSourceRoot, - _sharedFrameworkRid, - _sharedFrameworkTarget); - } - - public static string GetSharedFrameworkPublishPath(string outputRootDirectory, string sharedFrameworkNugetVersion) - { - return Path.Combine( - outputRootDirectory, - "shared", - s_sharedFrameworkName, - sharedFrameworkNugetVersion); - } - - public static string GetNetCoreAppRuntimeLibSymbolsPath(string symbolsRoot, string sharedFrameworkRid, string sharedFrameworkTarget) - { - return Path.Combine(symbolsRoot, s_sharedFrameworkName, "runtimes", sharedFrameworkRid, "lib", sharedFrameworkTarget); - } - - public static string GetNetCoreAppRuntimeNativeSymbolsPath(string symbolsRoot, string sharedFrameworkRid) - { - return Path.Combine(symbolsRoot, s_sharedFrameworkName, "runtimes", sharedFrameworkRid, "native"); - } - - public static string GetNetCoreAppToolsSymbolsPath(string symbolsRoot) - { - return Path.Combine(symbolsRoot, s_sharedFrameworkName, "tools"); - } - - public void CopyMuxer(string sharedFrameworkPublishRoot) - { - File.Copy( - Path.Combine(_corehostLockedDirectory, HostArtifactNames.DotnetHostBaseName), - Path.Combine(sharedFrameworkPublishRoot, HostArtifactNames.DotnetHostBaseName), true); - } - - public void CopyHostFxrToVersionedDirectory(string rootDirectory, string hostFxrVersion) - { - var hostFxrVersionedDirectory = Path.Combine(rootDirectory, "host", "fxr", hostFxrVersion); - - FS.Mkdirp(hostFxrVersionedDirectory); - - File.Copy( - Path.Combine(_corehostLockedDirectory, HostArtifactNames.DotnetHostFxrBaseName), - Path.Combine(hostFxrVersionedDirectory, HostArtifactNames.DotnetHostFxrBaseName), true); - } - - public void PublishSharedFramework(string outputRootDirectory, string commitHash, DotNetCli dotnetCli, string hostFxrVersion) - { - dotnetCli.Restore( - "--verbosity", "verbose", - "--disable-parallel", - "--fallbacksource", _corehostPackageSource) - .WorkingDirectory(_sharedFrameworkSourceRoot) - .Execute() - .EnsureSuccessful(); - - // We publish to a sub folder of the PublishRoot so tools like heat and zip can generate folder structures easier. - string sharedFrameworkNameAndVersionRoot = GetSharedFrameworkPublishPath(outputRootDirectory, _sharedFrameworkNugetVersion); - if (Directory.Exists(sharedFrameworkNameAndVersionRoot)) - { - Utils.DeleteDirectory(sharedFrameworkNameAndVersionRoot); - } - - dotnetCli.Publish( - "--output", sharedFrameworkNameAndVersionRoot, - "-r", _sharedFrameworkRid, - _sharedFrameworkSourceRoot) - .Execute() - .EnsureSuccessful(); - - // Clean up artifacts that dotnet-publish generates which we don't need - PublishMutationUtilties.CleanPublishOutput( - sharedFrameworkNameAndVersionRoot, - "framework", - deleteRuntimeConfigJson: true, - deleteDepsJson: false, - deleteAppHost: true); - - // Rename the .deps file - var destinationDeps = Path.Combine(sharedFrameworkNameAndVersionRoot, $"{s_sharedFrameworkName}.deps.json"); - File.Move(Path.Combine(sharedFrameworkNameAndVersionRoot, "framework.deps.json"), destinationDeps); - PublishMutationUtilties.ChangeEntryPointLibraryName(destinationDeps, null); - - // Generate RID fallback graph - GenerateRuntimeGraph(dotnetCli, destinationDeps); - - CopyHostArtifactsToSharedFramework(sharedFrameworkNameAndVersionRoot, hostFxrVersion); - - _crossgenUtil.CrossgenDirectory(sharedFrameworkNameAndVersionRoot, sharedFrameworkNameAndVersionRoot); - - // Generate .version file for sharedfx - var version = _sharedFrameworkNugetVersion; - var content = $@"{commitHash}{Environment.NewLine}{version}{Environment.NewLine}"; - File.WriteAllText(Path.Combine(sharedFrameworkNameAndVersionRoot, ".version"), content); - - // Populate symbols publish folder - string sharedFrameworkNameAndVersionWithSymbolsRoot = $"{outputRootDirectory}.symbols"; - if (Directory.Exists(sharedFrameworkNameAndVersionWithSymbolsRoot)) - { - Utils.DeleteDirectory(sharedFrameworkNameAndVersionWithSymbolsRoot); - } - Directory.CreateDirectory(sharedFrameworkNameAndVersionWithSymbolsRoot); - - // Copy symbols to publish folder - List pdbFiles = new List(); - string symbolsRoot = Path.Combine(_repoRoot, "pkg", "bin", "symbols"); - string libPdbPath = GetNetCoreAppRuntimeLibSymbolsPath(symbolsRoot, _sharedFrameworkRid, _sharedFrameworkTarget); - string nativePdbPath = GetNetCoreAppRuntimeNativeSymbolsPath(symbolsRoot, _sharedFrameworkRid); - string toolsPdbPath = GetNetCoreAppToolsSymbolsPath(symbolsRoot); - if (Directory.Exists(libPdbPath)) - { - pdbFiles.AddRange(Directory.GetFiles(libPdbPath)); - } - if(Directory.Exists(nativePdbPath)) - { - pdbFiles.AddRange(Directory.GetFiles(nativePdbPath)); - } - if (Directory.Exists(toolsPdbPath)) - { - pdbFiles.AddRange(Directory.GetFiles(toolsPdbPath)); - } - foreach (string pdbFile in pdbFiles) - { - string destinationPath = Path.Combine(sharedFrameworkNameAndVersionWithSymbolsRoot, Path.GetFileName(pdbFile)); - if (!File.Exists(destinationPath)) - { - File.Copy(pdbFile, destinationPath); - } - } - - return; - } - - private void GenerateRuntimeGraph(DotNetCli dotnetCli, string destinationDeps) - { - string runtimeGraphGeneratorRuntime = null; - switch (RuntimeEnvironment.OperatingSystemPlatform) - { - case Platform.Windows: - runtimeGraphGeneratorRuntime = "win"; - break; - case Platform.Linux: - runtimeGraphGeneratorRuntime = "linux"; - break; - case Platform.Darwin: - runtimeGraphGeneratorRuntime = "osx"; - break; - } - if (!string.IsNullOrEmpty(runtimeGraphGeneratorRuntime)) - { - var runtimeGraphGeneratorName = "RuntimeGraphGenerator"; - var runtimeGraphGeneratorProject = Path.Combine(Dirs.RepoRoot, "setuptools", "independent", runtimeGraphGeneratorName); - var runtimeGraphGeneratorOutput = Path.Combine(Dirs.Output, "setuptools", "independent", runtimeGraphGeneratorName); - - dotnetCli.Publish( - "--output", runtimeGraphGeneratorOutput, - runtimeGraphGeneratorProject).Execute().EnsureSuccessful(); - var runtimeGraphGeneratorExe = Path.Combine(runtimeGraphGeneratorOutput, $"{runtimeGraphGeneratorName}{Constants.ExeSuffix}"); - - Cmd(runtimeGraphGeneratorExe, "--project", _sharedFrameworkSourceRoot, "--deps", destinationDeps, runtimeGraphGeneratorRuntime) - .Execute() - .EnsureSuccessful(); - } - else - { - throw new Exception($"Could not determine rid graph generation runtime for platform {RuntimeEnvironment.OperatingSystemPlatform}"); - } - } - - private void CopyHostArtifactsToSharedFramework(string sharedFrameworkNameAndVersionRoot, string hostFxrVersion) - { - File.Copy( - Path.Combine(_corehostLockedDirectory, HostArtifactNames.DotnetHostBaseName), - Path.Combine(sharedFrameworkNameAndVersionRoot, HostArtifactNames.DotnetHostBaseName), true); - File.Copy( - Path.Combine(_corehostLockedDirectory, HostArtifactNames.DotnetHostFxrBaseName), - Path.Combine(sharedFrameworkNameAndVersionRoot, HostArtifactNames.DotnetHostFxrBaseName), true); - - // Hostpolicy should be the latest and not the locked version as it is supposed to evolve for - // the framework and has a tight coupling with coreclr's API in the framework. - File.Copy( - Path.Combine(_corehostLatestDirectory, HostArtifactNames.HostPolicyBaseName), - Path.Combine(sharedFrameworkNameAndVersionRoot, HostArtifactNames.HostPolicyBaseName), true); - } - - private string GenerateSharedFrameworkProject( - string sharedFrameworkNugetVersion, - string sharedFrameworkTemplatePath, - string rid, - string targetFramework) - { - string sharedFrameworkProjectPath = Path.Combine(Dirs.Intermediate, "sharedFramework", "framework"); - Utils.DeleteDirectory(sharedFrameworkProjectPath); - CopyRecursive(sharedFrameworkTemplatePath, sharedFrameworkProjectPath, true); - - string templateFile = Path.Combine(sharedFrameworkProjectPath, "project.json.template"); - JObject sharedFrameworkProject = JsonUtils.ReadProject(templateFile); - - sharedFrameworkProject["dependencies"]["Microsoft.NETCore.App"] = sharedFrameworkNugetVersion; - ((JObject)sharedFrameworkProject["runtimes"]).RemoveAll(); - sharedFrameworkProject["runtimes"][rid] = new JObject(); - ((JObject)sharedFrameworkProject["frameworks"]).RemoveAll(); - sharedFrameworkProject["frameworks"][targetFramework] = new JObject(); - - string projectJsonPath = Path.Combine(sharedFrameworkProjectPath, "project.json"); - JsonUtils.WriteProject(sharedFrameworkProject, projectJsonPath); - - Rm(templateFile); - - return sharedFrameworkProjectPath; - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/Utils.cs b/src/test/build/shared-build-targets-utils/Utils/Utils.cs deleted file mode 100644 index 0740e7d5..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/Utils.cs +++ /dev/null @@ -1,191 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Runtime.InteropServices; -using System.Security.Cryptography; - -using Microsoft.DotNet.Cli.Build.Framework; - -namespace Microsoft.DotNet.Cli.Build -{ - public static class Utils - { - - public static bool IsCrossArchRID(string rid) { - if (!String.IsNullOrEmpty(rid)) - { - return (String.Compare(rid, "win8-arm", true) == 0) - || (String.Compare(rid, "win-arm", true) == 0) - || (String.Compare(rid, "win-arm64", true) == 0) - || (String.Compare(rid, "win10-arm64", true) == 0) - || (String.Compare(rid, "linux-arm", true) == 0) - || (String.Compare(rid, "ubuntu.14.04-arm", true) == 0) - || (String.Compare(rid, "ubuntu.16.04-arm", true) == 0) - || (rid.EndsWith("-armel")); - } - return false; - } - public static bool IsPortableRID(string rid, out string portablePlatformID) - { - bool fIsPortable = false; - portablePlatformID = null; - - Dictionary portablePlatformIDList = new Dictionary() - { - { "linux-", "linux" }, - { "win-", "win" }, - { "osx-", "osx" } - }; - - foreach(var platformRID in portablePlatformIDList) - { - if (rid.StartsWith(platformRID.Key)) - { - portablePlatformID = platformRID.Value; - fIsPortable = true; - break; - } - } - - return fIsPortable; - } - - public static void CleanNuGetTempCache() - { - // Clean NuGet Temp Cache on Linux (seeing some issues on Linux) - if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux) && Directory.Exists("/tmp/NuGet")) - { - Directory.Delete("/tmp/NuGet", recursive: true); - } - } - - public static string GetOSName() - { - if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) - { - return "win"; - } - else if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX)) - { - return "osx"; - } - else if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux)) - { - throw new NotImplementedException(); - } - else - { - throw new PlatformNotSupportedException(); - } - } - - // Generate a Version 5 (SHA1 Name Based) Guid from a name. - public static Guid GenerateGuidFromName(string name) - { - // Any fixed GUID will do for a namespace. - Guid namespaceId = new Guid("28F1468D-672B-489A-8E0C-7C5B3030630C"); - - using (SHA1 hasher = SHA1.Create()) - { - var nameBytes = System.Text.Encoding.UTF8.GetBytes(name ?? string.Empty); - var namespaceBytes = namespaceId.ToByteArray(); - - SwapGuidByteOrder(namespaceBytes); - - var streamToHash = new byte[namespaceBytes.Length + nameBytes.Length]; - - Array.Copy(namespaceBytes, streamToHash, namespaceBytes.Length); - Array.Copy(nameBytes, 0, streamToHash, namespaceBytes.Length, nameBytes.Length); - - var hashResult = hasher.ComputeHash(streamToHash); - - var res = new byte[16]; - - Array.Copy(hashResult, res, res.Length); - - unchecked { res[6] = (byte)(0x50 | (res[6] & 0x0F)); } - unchecked { res[8] = (byte)(0x40 | (res[8] & 0x3F)); } - - SwapGuidByteOrder(res); - - return new Guid(res); - } - } - - // Do a byte order swap, .NET GUIDs store multi byte components in little - // endian. - private static void SwapGuidByteOrder(byte[] b) - { - Swap(b, 0, 3); - Swap(b, 1, 2); - Swap(b, 5, 6); - Swap(b, 7, 8); - } - - private static void Swap(byte[] b, int x, int y) - { - byte t = b[x]; - b[x] = b[y]; - b[y] = t; - } - - public static void DeleteDirectory(string path) - { - if (Directory.Exists(path)) - { - string[] files = Directory.GetFiles(path, "*", SearchOption.AllDirectories); - foreach (string file in files) - { - File.SetAttributes(file, FileAttributes.Normal); - File.Delete(file); - } - var retry = 5; - while (retry >= 0) - { - try - { - Directory.Delete(path, true); - return; - } - catch (IOException) - { - if (retry == 0) - { - throw; - } - System.Threading.Thread.Sleep(200); - retry--; - } - } - } - } - - public static void CopyDirectoryRecursively(string path, string destination, bool keepParentDir = false) - { - if (keepParentDir) - { - path = path.TrimEnd(Path.DirectorySeparatorChar); - destination = Path.Combine(destination, Path.GetFileName(path)); - Directory.CreateDirectory(destination); - } - - foreach (var file in Directory.GetFiles(path, "*", SearchOption.AllDirectories)) - { - string destFile = file.Replace(path, destination); - Directory.CreateDirectory(Path.GetDirectoryName(destFile)); - File.Copy(file, destFile, true); - } - } - - public static string GetVersionFileContent(string commitHash, string version) - { - return $@"{commitHash}{Environment.NewLine}{version}{Environment.NewLine}"; - } - - public static string GetSharedFrameworkVersionFileContent(BuildTargetContext c) - { - string SharedFrameworkNugetVersion = c.BuildContext.Get("SharedFrameworkNugetVersion"); - return $@"{c.BuildContext["CommitHash"]}{Environment.NewLine}{SharedFrameworkNugetVersion}{Environment.NewLine}"; - } - } -} diff --git a/src/test/build/shared-build-targets-utils/Utils/YumDependencyUtility.cs b/src/test/build/shared-build-targets-utils/Utils/YumDependencyUtility.cs deleted file mode 100644 index 480c6ce4..00000000 --- a/src/test/build/shared-build-targets-utils/Utils/YumDependencyUtility.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using Microsoft.DotNet.Cli.Build.Framework; - -namespace Microsoft.DotNet.Cli.Build -{ - public class YumDependencyUtility - { - public static bool PackageIsInstalled(string packageName) - { - var result = Command.Create("yum", "list", "installed", packageName) - .CaptureStdOut() - .CaptureStdErr() - .QuietBuildReporter() - .Execute(); - - return result.ExitCode == 0; - } - } -} diff --git a/src/test/build/shared-build-targets-utils/VersionRepoUpdater.cs b/src/test/build/shared-build-targets-utils/VersionRepoUpdater.cs deleted file mode 100644 index f1906776..00000000 --- a/src/test/build/shared-build-targets-utils/VersionRepoUpdater.cs +++ /dev/null @@ -1,139 +0,0 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Net.Http; -using System.Text; -using System.Text.RegularExpressions; -using System.Threading.Tasks; -using Newtonsoft.Json.Linq; - -namespace Microsoft.DotNet.Cli.Build -{ - public class VersionRepoUpdater - { - private static Regex s_nugetFileRegex = new Regex("^(?.*?)\\.(?([0-9]+\\.)?[0-9]+\\.[0-9]+(-(?[A-z0-9-]+))?)(?\\.symbols)?\\.nupkg$"); - - private string _gitHubAuthToken; - private string _gitHubUser; - private string _gitHubEmail; - private string _versionsRepoOwner; - private string _versionsRepo; - - public VersionRepoUpdater( - string gitHubAuthToken, - string gitHubUser = null, - string gitHubEmail = null, - string versionRepoOwner = null, - string versionsRepo = null) - { - if (string.IsNullOrEmpty(gitHubAuthToken)) - { - throw new ArgumentNullException(nameof(gitHubAuthToken)); - } - - _gitHubAuthToken = gitHubAuthToken; - _gitHubUser = gitHubUser ?? "dotnet-bot"; - _gitHubEmail = gitHubEmail ?? "dotnet-bot@microsoft.com"; - _versionsRepoOwner = versionRepoOwner ?? "dotnet"; - _versionsRepo = versionsRepo ?? "versions"; - } - - public async Task UpdatePublishedVersions(string nupkgFilePath, string versionsRepoPath) - { - List publishedPackages = GetPackageInfo(nupkgFilePath); - - string packageInfoFileContent = string.Join( - Environment.NewLine, - publishedPackages - .OrderBy(t => t.Id) - .Select(t => $"{t.Id} {t.Version}")); - - string prereleaseVersion = publishedPackages - .Where(t => !string.IsNullOrEmpty(t.Prerelease)) - .Select(t => t.Prerelease) - .FirstOrDefault(); - - string packageInfoFilePath = $"{versionsRepoPath}_Packages.txt"; - string message = $"Adding package info to {packageInfoFilePath} for {prereleaseVersion}"; - - await UpdateGitHubFile(packageInfoFilePath, packageInfoFileContent, message); - } - - private static List GetPackageInfo(string nupkgFilePath) - { - List packages = new List(); - - foreach (string filePath in Directory.GetFiles(nupkgFilePath, "*.nupkg")) - { - Match match = s_nugetFileRegex.Match(Path.GetFileName(filePath)); - - // only look for non-symbols packages - if (string.IsNullOrEmpty(match.Groups["symbols"].Value)) - { - packages.Add(new NuGetPackageInfo() - { - Id = match.Groups["id"].Value, - Version = match.Groups["version"].Value, - Prerelease = match.Groups["prerelease"].Value, - }); - } - } - - return packages; - } - - private async Task UpdateGitHubFile(string path, string newFileContent, string commitMessage) - { - using (HttpClient client = new HttpClient()) - { - client.DefaultRequestHeaders.Add("Accept", "application/vnd.github.v3+json"); - client.DefaultRequestHeaders.Add("Authorization", $"token {_gitHubAuthToken}"); - client.DefaultRequestHeaders.Add("User-Agent", _gitHubUser); - - string fileUrl = $"https://api.github.com/repos/{_versionsRepoOwner}/{_versionsRepo}/contents/{path}"; - - Console.WriteLine($"Getting the 'sha' of the current contents of file '{_versionsRepoOwner}/{_versionsRepo}/{path}'"); - - string currentFile = await client.GetStringAsync(fileUrl); - string currentSha = JObject.Parse(currentFile)["sha"].ToString(); - - Console.WriteLine($"Got 'sha' value of '{currentSha}'"); - - Console.WriteLine($"Request to update file '{_versionsRepoOwner}/{_versionsRepo}/{path}' contents to:"); - Console.WriteLine(newFileContent); - - string updateFileBody = $@"{{ - ""message"": ""{commitMessage}"", - ""committer"": {{ - ""name"": ""{_gitHubUser}"", - ""email"": ""{_gitHubEmail}"" - }}, - ""content"": ""{ToBase64(newFileContent)}"", - ""sha"": ""{currentSha}"" -}}"; - - Console.WriteLine("Sending request..."); - StringContent content = new StringContent(updateFileBody); - - using (HttpResponseMessage response = await client.PutAsync(fileUrl, content)) - { - response.EnsureSuccessStatusCode(); - Console.WriteLine("Updated the file successfully..."); - } - } - } - - private static string ToBase64(string value) - { - return Convert.ToBase64String(Encoding.UTF8.GetBytes(value)); - } - - private class NuGetPackageInfo - { - public string Id { get; set; } - public string Version { get; set; } - public string Prerelease { get; set; } - } - } -} diff --git a/src/test/build/shared-build-targets-utils/project.json b/src/test/build/shared-build-targets-utils/project.json deleted file mode 100644 index 66cae121..00000000 --- a/src/test/build/shared-build-targets-utils/project.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "version": "1.0.0-*", - "description": "Build scripts for dotnet-cli", - "dependencies": { - "NETStandard.Library": "1.6.1-beta-24506-02", - "Microsoft.CSharp": "4.0.1", - "System.Dynamic.Runtime": "4.0.11", - "System.Reflection.Metadata": "1.3.0", - "System.Runtime.Serialization.Primitives": "4.1.1", - "System.Threading.Thread": "4.0.0", - "System.Xml.XmlSerializer": "4.0.11", - "WindowsAzure.Storage": "8.1.1", - "Microsoft.DotNet.Cli.Build.Framework": { - "target": "project" - } - }, - "frameworks": { - "netstandard1.6": { - "imports": [ - "dnxcore50", - "portable-net45+win8" - ] - } - } -} diff --git a/src/test/build/shared-build-targets-utils/shared-build-targets-utils.xproj b/src/test/build/shared-build-targets-utils/shared-build-targets-utils.xproj deleted file mode 100644 index de94e225..00000000 --- a/src/test/build/shared-build-targets-utils/shared-build-targets-utils.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0.25123 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - b768bd29-12bf-4c7c-b093-03193fe244d1 - Microsoft.DotNet.Cli.Build - ..\..\..\..\Bin\obj\$(MSBuildProjectName) - ..\..\..\..\Bin - - - - 2.0 - - - \ No newline at end of file diff --git a/tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.csproj b/tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.csproj index ef8fea2e..e3f79e5c 100644 --- a/tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.csproj +++ b/tools-local/setuptools/dotnet-deb-tool/dotnet-deb-tool.csproj @@ -10,7 +10,7 @@ - + lib/$(TargetFramework)/tool/%(RecursiveDir)%(FileName)%(Extension) From 168ddf2f83af65039da6ed6194ce424d5d2fd540 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Thu, 11 May 2017 13:30:41 -0700 Subject: [PATCH 391/625] Fix Arm CI (#2367) --- netci.groovy | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/netci.groovy b/netci.groovy index a4054c5c..51b2b5ac 100644 --- a/netci.groovy +++ b/netci.groovy @@ -48,8 +48,8 @@ platformList.each { platform -> else if (os == 'Ubuntu16.04') { dockerContainer = "ubuntu-16.04-cross-ef0ac75-20175511035548" } - dockerCommand = "docker run --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" - buildCommand = "${dockerCommand} -e ROOTFS_DIR=/crossrootfs/${architecture} ./build.sh -ConfigurationGroup=${configuration} -TargetArchitecture=${architecture} -PortableBuild=true -DistroRid=linux-${architecture} -SkipTests=true -DisableCrossgen=true${crossbuildargs}" + dockerCommand = "docker run -e ROOTFS_DIR=/crossrootfs/${architecture} --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" + buildCommand = "${dockerCommand} ./build.sh -ConfigurationGroup=${configuration} -TargetArchitecture=${architecture} -PortableBuild=true -DistroRid=linux-${architecture} -SkipTests=true -DisableCrossgen=true${crossbuildargs}" } else if (os == "Ubuntu") { dockerContainer = "ubuntu-14.04-debpkg-e5cf912-20175003025046" From 037d3d4eed600367c384c4cccee313011d000cb8 Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Thu, 11 May 2017 13:14:34 -0700 Subject: [PATCH 392/625] Add doc files to framework packages I've also removed the de-duping in netcoreapp since it's no longer needed. --- .../src/Microsoft.NETCore.App.depproj | 57 ++++++------------- ...t.NETCore.UniversalWindowsPlatform.depproj | 9 +++ 2 files changed, 26 insertions(+), 40 deletions(-) diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index 13683f86..240b86cd 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -116,58 +116,35 @@ - <_FilesToPackage Include="@(ReferenceCopyLocalPaths)"> + true - - <_FilesToPackage> - runtimes/$(NuGetRuntimeIdentifier)/lib/$(PackageTargetFramework) - runtimes/$(NuGetRuntimeIdentifier)/native - - <_FilesToPackage Include="$(_runtimePackagePath)/tools/*.*"> + + + runtimes/$(NuGetRuntimeIdentifier)/lib/$(PackageTargetFramework) + runtimes/$(NuGetRuntimeIdentifier)/native + + $(_runtimePackageId) tools - + - <_FilesToPackage Include="@(Reference)"> + ref/$(PackageTargetFramework) - + + + + <_docFilesToPackage Include="%(FilesToPackage.RootDir)%(FilesToPackage.Directory)**\%(FilesToPackage.FileName).xml" /> + + + ref/$(PackageTargetFramework)/%(RecursiveDir) + - - - <_FilesToPackage> - %(Identity) - %(TargetPath)/%(FileName)%(Extension) - - - - <_primaryFilesByPackagePath Include="@(_FilesToPackage->'%(PackagePath)')" Condition="$([System.String]::new('%(NuGetPackageId)').EndsWith('$(PrimaryPackage)'))"/> - <_secondaryFilesByPackagePath Include="@(_FilesToPackage->'%(PackagePath)')" Condition="!$([System.String]::new('%(NuGetPackageId)').EndsWith('$(PrimaryPackage)'))"/> - - - <_secondaryFilesByPackagePath Remove="@(_primaryFilesByPackagePath)" /> - - <_filesByPackagePath Include="@(_primaryFilesByPackagePath);@(_secondaryFilesByPackagePath)" /> - - - - - - - - - <_secondarySystemPackages Include="@(_secondaryFilesByPackagePath->'%(NuGetPackageId)')" - Condition="$([System.String]::new('%(NuGetPackageId)').Contains('System.'))" /> - <_secondarySystemPackages Remove="@(PermittedSystemPackages)" /> - - - <_sourcePathCandidate Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\sources')" /> diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj index 7ca56d2d..4a6de09d 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj @@ -72,6 +72,15 @@ + + + <_docFilesToPackage Include="%(FilesToPackage.RootDir)%(FilesToPackage.Directory)**\%(FilesToPackage.FileName).xml" /> + + + ref/$(PackageTargetFramework)/%(RecursiveDir) + + + From 434268955f5d2fd0caf29e6f016152a9ad4f83cb Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Thu, 11 May 2017 13:48:25 -0700 Subject: [PATCH 393/625] Add target to validate runtime-specific packages --- .../Microsoft.NETCore.App.pkgproj | 4 ++++ .../Microsoft.NETCore.App.targets | 22 +++++++++++++++++++ ...t.NETCore.UniversalWindowsPlatform.pkgproj | 1 + tools-local/tasks/GenerateFileVersionProps.cs | 5 +++++ 4 files changed, 32 insertions(+) create mode 100644 src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.targets diff --git a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index b3a78cfe..9a4bda0c 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -53,6 +53,9 @@ build/$(NETCoreAppFramework) + + build/$(NETCoreAppFramework) + @@ -75,6 +78,7 @@ diff --git a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.targets b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.targets new file mode 100644 index 00000000..48d6da60 --- /dev/null +++ b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.targets @@ -0,0 +1,22 @@ + + + + + + <_netCoreAppPackageDependencies + Include="@(PackageDependencies->WithMetadataValue('ParentPackage', '$(MSBuildThisFileName)/$(_Microsoft_NETCore_App_Version)'))" /> + <_activeRIDNetCoreAppPackageDependencies + Include="@(_netCoreAppPackageDependencies->WithMetadataValue('ParentTarget', '$(NuGetTargetMoniker)/$(RuntimeIdentifier)'))" /> + <_activeTFMNetCoreAppPackageDependencies + Include="@(_netCoreAppPackageDependencies->WithMetadataValue('ParentTarget', '$(NuGetTargetMoniker)'))" /> + <_ridSpecificNetCoreAppPackageDependencies + Include="@(_activeRIDNetCoreAppPackageDependencies)" + Exclude="@(_activeTFMNetCoreAppPackageDependencies)" /> + + + + + \ No newline at end of file diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj index 746d80b6..f3dc1bd5 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj @@ -61,6 +61,7 @@ diff --git a/tools-local/tasks/GenerateFileVersionProps.cs b/tools-local/tasks/GenerateFileVersionProps.cs index 83c3c455..3adfd584 100644 --- a/tools-local/tasks/GenerateFileVersionProps.cs +++ b/tools-local/tasks/GenerateFileVersionProps.cs @@ -21,6 +21,9 @@ namespace Microsoft.DotNet.Build.Tasks [Required] public string PackageId { get; set; } + [Required] + public string PackageVersion { get; set; } + [Required] public string PlatformManifestFile { get; set; } @@ -105,6 +108,8 @@ namespace Microsoft.DotNet.Build.Tasks var propertyGroup = props.AddPropertyGroup(); propertyGroup.AddProperty(PreferredPackagesProperty, PreferredPackages); + var versionPropertyName = $"_{PackageId.Replace(".", "_")}_Version"; + propertyGroup.AddProperty(versionPropertyName, PackageVersion); props.Save(PropsFile); From f1033a8638aa62a252d8ea6efb24dcf287f3ce2a Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Thu, 11 May 2017 14:10:18 -0700 Subject: [PATCH 394/625] Package M.DN.PA and M.E.DM on *nix Build these packages on *nix, but don't publish them (they will not have all of the content, since we don't yet build desktop versions of the libraries when building on *nix). As part of this work, I removed the GetBuildArgsByFrameworks task, since we can just use conditional properties to remove the desktop TFMs when we are building on *nix. Fixes #2319 --- publish/dir.props | 4 +- publish/dir.targets | 2 +- ...crosoft.DotNet.PlatformAbstractions.csproj | 1 + ...icrosoft.Extensions.DependencyModel.csproj | 1 + src/managed/dir.proj | 15 +---- src/pkg/packaging/dir.proj | 4 +- tools-local/tasks/GetBuildableFrameworks.cs | 61 ------------------- 7 files changed, 10 insertions(+), 78 deletions(-) delete mode 100644 tools-local/tasks/GetBuildableFrameworks.cs diff --git a/publish/dir.props b/publish/dir.props index 54f84d71..dbf0742e 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -18,8 +18,8 @@ - - + + diff --git a/publish/dir.targets b/publish/dir.targets index 42883eac..6a6e8f7b 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -9,7 +9,7 @@ - + UploadToAzure %(Project.AdditionalProperties);ItemsToPublish=@(PublishFile);$(OutputVersionBadge);RelativeBlobPath=$(RelativeBlobPath) diff --git a/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj b/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj index 28426043..f4c66a35 100644 --- a/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj +++ b/src/managed/Microsoft.DotNet.PlatformAbstractions/Microsoft.DotNet.PlatformAbstractions.csproj @@ -4,6 +4,7 @@ Abstractions for making code that uses file system and environment testable. net45;netstandard1.3 + netstandard1.3 true diff --git a/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj b/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj index e77ce0b9..c05bac39 100644 --- a/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj +++ b/src/managed/Microsoft.Extensions.DependencyModel/Microsoft.Extensions.DependencyModel.csproj @@ -4,6 +4,7 @@ Abstractions for reading `.deps` files. net451;netstandard1.3;netstandard1.6 + netstandard1.3;netstandard1.6 diff --git a/src/managed/dir.proj b/src/managed/dir.proj index a2c685cb..519e8252 100644 --- a/src/managed/dir.proj +++ b/src/managed/dir.proj @@ -3,11 +3,8 @@ - - - - + /p:Configuration=$(ConfigurationGroup) @@ -18,13 +15,7 @@ - - - - - -
\ No newline at end of file + diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 78d2e3f0..b4a50465 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -160,8 +160,8 @@ - - + + diff --git a/tools-local/tasks/GetBuildableFrameworks.cs b/tools-local/tasks/GetBuildableFrameworks.cs deleted file mode 100644 index f95572be..00000000 --- a/tools-local/tasks/GetBuildableFrameworks.cs +++ /dev/null @@ -1,61 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using System; -using Microsoft.Build.Framework; -using System.IO; -using Newtonsoft.Json; -using Newtonsoft.Json.Linq; -using System.Collections.Generic; -using System.Text.RegularExpressions; -using Microsoft.Build.Utilities; - -namespace Microsoft.DotNet.Build.Tasks -{ - /// - /// This target opens the json files and extracts the frameworks that are buildable - /// according to the current OSGroup. - /// In short it removes net45 and similar from *nix systems. - /// The output is an ItemGroup that can be batch called when executing 'dotnet build' - /// - public class GetBuildArgsByFrameworks : BuildTask - { - [Required] - public ITaskItem[] ProjectPaths { get; set; } - [Required] - public string OSGroup { get; set; } - [Output] - public ITaskItem[] BuildArgs { get; set; } - public override bool Execute() - { - List args = new List(); - foreach (var projectPath in ProjectPaths) - { - string text = File.ReadAllText(projectPath.ItemSpec); - Match match = Regex.Match(text, "(.*)"); - if (match.Groups.Count == 2) - { - string[] tfms = match.Groups[1].Value.Split(';'); - foreach (string framework in tfms) - { - if (OSGroup == "Windows_NT" - || framework.StartsWith("netstandard") - || framework.StartsWith("netcoreapp")) - { - args.Add($"--framework {framework} {projectPath}"); - } - } - } - } - - BuildArgs = new ITaskItem[args.Count]; - for (int i = 0; i < BuildArgs.Length; i++) - { - BuildArgs[i] = new TaskItem(args[i]); - } - - return true; - } - } -} From e8a80549a38bc15a9845260f76dfea9dbd30361b Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Thu, 11 May 2017 14:52:47 -0700 Subject: [PATCH 395/625] Fix baseurl for deb packages --- publish/dir.props | 1 + publish/dir.targets | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/publish/dir.props b/publish/dir.props index 54f84d71..9209f4ec 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -4,6 +4,7 @@ dotnet + https://dotnetcli.blob.core.windows.net/ 3600 diff --git a/publish/dir.targets b/publish/dir.targets index 42883eac..827728d7 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -73,7 +73,7 @@ UploadJsonFilename="%(DebInstallerFile.UploadJsonFilename)" PackageName="%(DebInstallerFile.PackageName)" PackageVersion="$(SharedFrameworkNugetVersion)" - UploadUrl="$(ContainerName)/$(Channel)/Installers/$(SharedFrameworkNugetVersion)/%(DebInstallerFile.Identity)" /> + UploadUrl="$(BaseUrl)$(ContainerName)/$(Channel)/Installers/$(SharedFrameworkNugetVersion)/%(DebInstallerFile.Filename)%(DebInstallerFile.Extension)" /> From 78b6a2648a6d43c140ac6521fd95b3aecc1ff7db Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Thu, 11 May 2017 20:35:56 -0700 Subject: [PATCH 396/625] Update CoreFx to preview2-25311-04 (#2372) --- dependencies.props | 4 ++-- src/pkg/deps/project.json | 2 +- .../projects/Microsoft.NETCore.App/src/project.json.template | 4 ++-- .../src/project.json.template | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/dependencies.props b/dependencies.props index 0c4ee3f4..b6966c78 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,13 +9,13 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - a44d1158c8f2cf53d54cf35567f2ec59057b3093 + f37bb2d81830cefb80a785a2b2ce1bd664ab8a68 a44d1158c8f2cf53d54cf35567f2ec59057b3093 1117fab956560c88ebb3fbaa339b6fa04c29a364 - 2.0.0-preview2-25310-01 + 2.0.0-preview2-25311-04 2.0.0-preview2-25309-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) diff --git a/src/pkg/deps/project.json b/src/pkg/deps/project.json index 6439d70c..1a3c19d8 100644 --- a/src/pkg/deps/project.json +++ b/src/pkg/deps/project.json @@ -1,6 +1,6 @@ { "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25310-01" + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25311-04" }, "frameworks": { "dnxcore50": { diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template b/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template index 2dbe92fd..35080bb0 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template +++ b/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25310-01", + "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25311-04", "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25309-01", "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25310-01", + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25311-04", "NETStandard.Library": "2.0.0-preview2-25311-01" }, "frameworks": { diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template index 295a0f29..74c06af5 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template @@ -1,9 +1,9 @@ { "dependencies": { "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25310-01", + "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25311-04", "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25309-01", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25310-01", + "Microsoft.NETCore.Platforms": "2.0.0-preview2-25311-04", "NETStandard.Library": "2.0.0-preview2-25311-01", "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", "System.ServiceModel.Http": "4.4.0-beta-25205-01", From 05674843bb341493ec0000ca0f13e103f9a39cb5 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Fri, 12 May 2017 12:05:52 -0700 Subject: [PATCH 397/625] Fix branding quotes in installer --- src/pkg/packaging/dir.props | 6 +++--- src/pkg/packaging/windows/package.targets | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index c357a272..55abfc8c 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -35,8 +35,8 @@ Microsoft .NET Core $(ProductionVersion) Microsoft .NET Core $(ProductionVersion) $(ReleaseBrandSuffix) - '$(ProductBrandPrefix) Host' - '$(ProductBrandPrefix) Host FX Resolver' - '$(ProductBrandPrefix) Runtime' + $(ProductBrandPrefix) Host + $(ProductBrandPrefix) Host FX Resolver + $(ProductBrandPrefix) Runtime \ No newline at end of file diff --git a/src/pkg/packaging/windows/package.targets b/src/pkg/packaging/windows/package.targets index 9b7c2e70..06b81f98 100644 --- a/src/pkg/packaging/windows/package.targets +++ b/src/pkg/packaging/windows/package.targets @@ -79,9 +79,9 @@ $(MsiVersionString) $(SharedFrameworkName) $(SharedFrameworkNugetVersion) $(SharedFxUpgradeCode) $(ArchParams) - + - + $(SharedHostInstallerFile) $(HostFxrInstallerFile) $(CombinedInstallerFile) - '$(ProductBrandPrefix) Runtime' + $(ProductBrandPrefix) Runtime "$(MsiArch)" "$(TargetArchitecture)" @@ -102,7 +102,7 @@ - $(ShareFXMsi) $(HostMsi) $(HostFxrMsi) $(SharedBundle) $(WixToolsDir) $(SharedBrandName) $(MsiVersionString) $(BundleDisplayVersion) $(SharedFrameworkName) $(SharedFrameworkNugetVersion) $(SharedBundleCode) $(ArchParams) + $(ShareFXMsi) $(HostMsi) $(HostFxrMsi) $(SharedBundle) $(WixToolsDir) '$(SharedBrandName)' $(MsiVersionString) $(BundleDisplayVersion) $(SharedFrameworkName) $(SharedFrameworkNugetVersion) $(SharedBundleCode) $(ArchParams) From 0eed46462cc9b3354d440eae5c933a55b1572d3f Mon Sep 17 00:00:00 2001 From: Bjarke Istrup Pedersen Date: Fri, 12 May 2017 19:26:23 +0000 Subject: [PATCH 398/625] Update PlatformApis to handle Gentoo Linux. --- .../Native/PlatformApis.cs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs b/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs index f982012c..3a2c7cd2 100644 --- a/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs +++ b/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs @@ -128,6 +128,13 @@ namespace Microsoft.DotNet.PlatformAbstractions.Native // are backwards compatible. private static DistroInfo NormalizeDistroInfo(DistroInfo distroInfo) { + if (distroInfo.Id == "gentoo") + { + // Gentoo does not have versions, since they use rolling releases. + // Workaround this by setting VersionId to the current year and month. + distroInfo.VersionId = DateTime.Today.ToString("yyyy.MM"); + } + int minorVersionNumberSeparatorIndex = distroInfo.VersionId.IndexOf('.'); if (distroInfo.Id == "rhel" && minorVersionNumberSeparatorIndex != -1) From 50d699be379ae5c85a55efe7b8c3a763f5822e26 Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Fri, 12 May 2017 12:33:09 -0700 Subject: [PATCH 399/625] Update to Buildtools 2.0, Remove remaining project.json's (#2373) * Exclusively use the 2.0 CLI and 2.0 buildtools. * Fix Linux problems. * Don't run chmod on Windows. * Make sure DOTNET_SKIP_FIRST_TIME_EXPERIENCE is set in init-tools. * Clean up some MSBuild properties * Auto-update WCF dependencies * Delete root-level global.json * Change how dependency versions are specified. Use full versions rather than concatenated strings. * Use "azureedge" download URL in init-tools * Use TargetFramework=netstandard1.0 instead of dnxcore50 in deps.csproj * Link CoreFxVersion to Microsoft.Private.CoreFx.NETCoreApp * Use "DotnetRestoreCommand" instead of "DnuRestoreCommand" in properties. * Check RunningOnUnix in dir.props (recommended pattern) * Change an additional use of DnuSourceList to DotnetSourceList --- BuildToolsVersion.txt | 2 +- DotnetCLISdkVersion.txt | 1 - DotnetCLIVersion.txt | 2 +- build.proj | 10 +- dependencies.props | 28 +++- dir.props | 51 ++----- global.json | 4 - init-tools.cmd | 48 +------ init-tools.msbuild | 11 ++ init-tools.sh | 128 +++--------------- publish/publish.proj | 4 +- run.sh | 2 - src/managed/dir.proj | 2 +- src/pkg/deps/deps.csproj | 12 ++ src/pkg/deps/project.json | 10 -- src/pkg/dir.targets | 2 +- src/pkg/packaging/deb/package.targets | 12 +- src/pkg/packaging/dir.proj | 2 +- .../src/Microsoft.NETCore.App.depproj | 51 ++++--- .../src/project.json.template | 15 -- ...t.NETCore.UniversalWindowsPlatform.depproj | 57 +++++--- .../src/packagereferences.msbuild | 9 ++ .../src/project.json.template | 20 --- src/pkg/projects/dir.props | 4 - src/pkg/projects/dir.targets | 19 --- src/sharedFramework/sharedFramework.proj | 8 +- src/test/dir.proj | 14 +- src/test/dir.props | 6 +- .../Microsoft.DotNet.Build.Tasks.Local.builds | 4 +- .../Microsoft.DotNet.Build.Tasks.Local.csproj | 53 +++++++- .../project.json | 32 ----- tools-local/tasks/core-setup.tasks.builds | 4 +- tools-local/tasks/core-setup.tasks.csproj | 55 ++++++-- tools-local/tasks/project.json | 33 ----- tools-override/Roslyn.Common.props | 25 ---- tools-override/crossgen.sh | 90 ------------ 36 files changed, 294 insertions(+), 536 deletions(-) delete mode 100644 DotnetCLISdkVersion.txt delete mode 100644 global.json create mode 100644 init-tools.msbuild create mode 100644 src/pkg/deps/deps.csproj delete mode 100644 src/pkg/deps/project.json delete mode 100644 src/pkg/projects/Microsoft.NETCore.App/src/project.json.template create mode 100644 src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/packagereferences.msbuild delete mode 100644 src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/project.json delete mode 100644 tools-local/tasks/project.json delete mode 100644 tools-override/Roslyn.Common.props delete mode 100755 tools-override/crossgen.sh diff --git a/BuildToolsVersion.txt b/BuildToolsVersion.txt index 7f6d39cc..d58933b4 100644 --- a/BuildToolsVersion.txt +++ b/BuildToolsVersion.txt @@ -1 +1 @@ -1.0.27-prerelease-01430-03 +2.0.0-prerelease-01611-07 diff --git a/DotnetCLISdkVersion.txt b/DotnetCLISdkVersion.txt deleted file mode 100644 index ddee3053..00000000 --- a/DotnetCLISdkVersion.txt +++ /dev/null @@ -1 +0,0 @@ -2.0.0-preview1-005899 \ No newline at end of file diff --git a/DotnetCLIVersion.txt b/DotnetCLIVersion.txt index e42fc5fd..b8320e32 100644 --- a/DotnetCLIVersion.txt +++ b/DotnetCLIVersion.txt @@ -1 +1 @@ -1.0.0-preview2-1-003182 \ No newline at end of file +2.0.0-preview1-005899 diff --git a/build.proj b/build.proj index edc82c72..c08c0271 100644 --- a/build.proj +++ b/build.proj @@ -47,7 +47,7 @@ - + - - - - - + @@ -90,4 +86,4 @@
- \ No newline at end of file + diff --git a/dependencies.props b/dependencies.props index b6966c78..76f7c675 100644 --- a/dependencies.props +++ b/dependencies.props @@ -12,12 +12,17 @@ f37bb2d81830cefb80a785a2b2ce1bd664ab8a68 a44d1158c8f2cf53d54cf35567f2ec59057b3093 1117fab956560c88ebb3fbaa339b6fa04c29a364 + 284ab8a84d40ad2d42e6f3680ce159aaea82d77d + 4.4.0-preview2-25311-04 2.0.0-preview2-25311-04 2.0.0-preview2-25309-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) + 2.0.0-preview2-25311-01 + 1.4.1 + 4.4.0-preview2-25311-02 @@ -40,11 +45,20 @@ $(BaseDotNetBuildInfo)standard/$(DependencyBranch) $(StandardCurrentRef) + + $(BaseDotNetBuildInfo)wcf/$(DependencyBranch) + $(WCFCurrentRef) + https://raw.githubusercontent.com/dotnet/versions + + $(MSBuildThisFileFullPath) + CoreFxVersion + Microsoft.Private.CoreFx.NETCoreApp + $(MSBuildThisFileFullPath) PlatformPackageVersion @@ -55,9 +69,15 @@ MicrosoftNETCoreRuntimeCoreCLRPackageVersion Microsoft.NETCore.Runtime.CoreCLR - - - - + + $(MSBuildThisFileFullPath) + NETStandardVersion + NETStandard.Library + + + $(MSBuildThisFileFullPath) + WcfVersion + System.ServiceModel.Duplex + diff --git a/dir.props b/dir.props index 682d558f..41e6a796 100644 --- a/dir.props +++ b/dir.props @@ -54,11 +54,10 @@ $(LocalToolRuntimePath)net46/ $(BuildToolsTaskDir) $(ToolsDir)dotnetcli/ - $(ToolsDir)dotnetclisdk/ - - + + @@ -116,54 +115,30 @@ 2.0.0 - - - - - - - - - - + + + + + + + - + - <_DnuExcludeProjectJsonFiles Include="$(MSBuildThisFileDirectory)src\pkg\projects\**\project.json" /> - <_DnuExcludeProjectJsonFiles Include="$(MSBuildThisFileDirectory)src\test\**\project.json" /> - <_DnuExcludeProjectJsonFiles Include="$(MSBuildThisFileDirectory)Bin\**\project.json" /> - - <_ProjectJsonFiles Include="$(MSBuildThisFileDirectory)**\project.json" Exclude="@(_DnuExcludeProjectJsonFiles)" /> - - %(AdditionalArgs) --disable-parallel - - - + /p:VersionSuffix=$(VersionSuffix) - - $(DotnetCliPath)dotnet.exe - $(DotnetCliPath)dotnet - $(DotnetSdkPath)dotnet.exe - $(DotnetSdkPath)dotnet - $(DotnetToolCommand) - @(DnuSourceList -> '--source %(Identity)', ' ') - DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 - $(DnuRestorePrefix) "$(DotnetToolCommand)" - $(DnuRestoreCommand) restore - $(DnuRestoreCommand) --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" $(DnuRestoreSource) - $(DnuRestoreCommand) --lock - - $(DotnetSdkToolCommand) restore --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" $(DnuRestoreSource) + DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 + $(DotnetRestorePrefix)$(DotnetRestoreCommand) diff --git a/global.json b/global.json deleted file mode 100644 index 2d77e6f7..00000000 --- a/global.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "projects": [ "src", "src/managed", "test", "tools-local" ], - "sdk": { "version": "1.0.0-preview2-003121" } -} diff --git a/init-tools.cmd b/init-tools.cmd index 1a63028b..40fca031 100644 --- a/init-tools.cmd +++ b/init-tools.cmd @@ -6,16 +6,11 @@ if [%PACKAGES_DIR%]==[] set PACKAGES_DIR=%~dp0packages\ if [%TOOLRUNTIME_DIR%]==[] set TOOLRUNTIME_DIR=%~dp0Tools set DOTNET_PATH=%TOOLRUNTIME_DIR%\dotnetcli\ if [%DOTNET_CMD%]==[] set DOTNET_CMD=%DOTNET_PATH%dotnet.exe -set DOTNET_SDK_PATH=%TOOLRUNTIME_DIR%\dotnetclisdk\ -if [%DOTNET_SDK_CMD%]==[] set DOTNET_SDK_CMD=%DOTNET_SDK_PATH%dotnet.exe if [%BUILDTOOLS_SOURCE%]==[] set BUILDTOOLS_SOURCE=https://dotnet.myget.org/F/dotnet-buildtools/api/v3/index.json set /P BUILDTOOLS_VERSION=< "%~dp0BuildToolsVersion.txt" set BUILD_TOOLS_PATH=%PACKAGES_DIR%Microsoft.DotNet.BuildTools\%BUILDTOOLS_VERSION%\lib\ -set PROJECT_JSON_PATH=%TOOLRUNTIME_DIR%\%BUILDTOOLS_VERSION% -set PROJECT_JSON_FILE=%PROJECT_JSON_PATH%\project.json -set PROJECT_JSON_CONTENTS={ "dependencies": { "Microsoft.DotNet.BuildTools": "%BUILDTOOLS_VERSION%" }, "frameworks": { "netcoreapp1.0": { } } } -set BUILD_TOOLS_SEMAPHORE=%PROJECT_JSON_PATH%\init-tools.completed -set DUMMY_GLOBAL_JSON_PATH=%PACKAGES_DIR%global.json +set INIT_TOOLS_RESTORE_PROJECT=%~dp0init-tools.msbuild +set BUILD_TOOLS_SEMAPHORE=%TOOLRUNTIME_DIR%\%BUILDTOOLS_VERSION%\init-tools.completed :: We do not want to run the first-time experience. set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 @@ -34,21 +29,15 @@ if exist "%BUILD_TOOLS_SEMAPHORE%" ( if exist "%TOOLRUNTIME_DIR%" rmdir /S /Q "%TOOLRUNTIME_DIR%" -if NOT exist "%PROJECT_JSON_PATH%" mkdir "%PROJECT_JSON_PATH%" -echo %PROJECT_JSON_CONTENTS% > "%PROJECT_JSON_FILE%" echo Running %0 > "%INIT_TOOLS_LOG%" set /p DOTNET_VERSION=< "%~dp0DotnetCLIVersion.txt" if exist "%DOTNET_CMD%" goto :afterdotnetinstall -:: core-setup repo has a global.json which causes a conflict with the init-tools publish step -if NOT exist "%PACKAGES_DIR%" mkdir %PACKAGES_DIR% > nul 2>&1 -echo { "projects": [] } > %DUMMY_GLOBAL_JSON_PATH% - echo Installing dotnet cli... if NOT exist "%DOTNET_PATH%" mkdir "%DOTNET_PATH%" set DOTNET_ZIP_NAME=dotnet-dev-win-x64.%DOTNET_VERSION%.zip -set DOTNET_REMOTE_PATH=https://dotnetcli.azureedge.net/dotnet/preview/Binaries/%DOTNET_VERSION%/%DOTNET_ZIP_NAME% +set DOTNET_REMOTE_PATH=https://dotnetcli.azureedge.net/dotnet/Sdk/%DOTNET_VERSION%/%DOTNET_ZIP_NAME% set DOTNET_LOCAL_PATH=%DOTNET_PATH%%DOTNET_ZIP_NAME% echo Installing '%DOTNET_REMOTE_PATH%' to '%DOTNET_LOCAL_PATH%' >> "%INIT_TOOLS_LOG%" powershell -NoProfile -ExecutionPolicy unrestricted -Command "$retryCount = 0; $success = $false; do { try { (New-Object Net.WebClient).DownloadFile('%DOTNET_REMOTE_PATH%', '%DOTNET_LOCAL_PATH%'); $success = $true; } catch { if ($retryCount -ge 6) { throw; } else { $retryCount++; Start-Sleep -Seconds (5 * $retryCount); } } } while ($success -eq $false); Add-Type -Assembly 'System.IO.Compression.FileSystem' -ErrorVariable AddTypeErrors; if ($AddTypeErrors.Count -eq 0) { [System.IO.Compression.ZipFile]::ExtractToDirectory('%DOTNET_LOCAL_PATH%', '%DOTNET_PATH%') } else { (New-Object -com shell.application).namespace('%DOTNET_PATH%').CopyHere((new-object -com shell.application).namespace('%DOTNET_LOCAL_PATH%').Items(),16) }" >> "%INIT_TOOLS_LOG%" @@ -59,27 +48,10 @@ if NOT exist "%DOTNET_LOCAL_PATH%" ( :afterdotnetinstall -if exist "%DOTNET_SDK_CMD%" goto :afterdotnetsdkinstall - -echo Installing dotnet sdk... -set /p DOTNET_SDK_VERSION=< "%~dp0DotnetCLISdkVersion.txt" -if NOT exist "%DOTNET_SDK_PATH%" mkdir "%DOTNET_SDK_PATH%" -set DOTNET_ZIP_NAME=dotnet-dev-win-x64.%DOTNET_SDK_VERSION%.zip -set DOTNET_REMOTE_PATH=https://dotnetcli.azureedge.net/dotnet/Sdk/%DOTNET_SDK_VERSION%/%DOTNET_ZIP_NAME% -set DOTNET_LOCAL_PATH=%DOTNET_SDK_PATH%%DOTNET_ZIP_NAME% -echo Installing '%DOTNET_REMOTE_PATH%' to '%DOTNET_LOCAL_PATH%' >> "%INIT_TOOLS_LOG%" -powershell -NoProfile -ExecutionPolicy unrestricted -Command "$retryCount = 0; $success = $false; do { try { (New-Object Net.WebClient).DownloadFile('%DOTNET_REMOTE_PATH%', '%DOTNET_LOCAL_PATH%'); $success = $true; } catch { if ($retryCount -ge 6) { throw; } else { $retryCount++; Start-Sleep -Seconds (5 * $retryCount); } } } while ($success -eq $false); Add-Type -Assembly 'System.IO.Compression.FileSystem' -ErrorVariable AddTypeErrors; if ($AddTypeErrors.Count -eq 0) { [System.IO.Compression.ZipFile]::ExtractToDirectory('%DOTNET_LOCAL_PATH%', '%DOTNET_SDK_PATH%') } else { (New-Object -com shell.application).namespace('%DOTNET_SDK_PATH%').CopyHere((new-object -com shell.application).namespace('%DOTNET_LOCAL_PATH%').Items(),16) }" >> "%INIT_TOOLS_LOG%" -if NOT exist "%DOTNET_LOCAL_PATH%" ( - echo ERROR: Could not install dotnet cli correctly. See '%INIT_TOOLS_LOG%' for more details. 1>&2 - exit /b 1 -) - -:afterdotnetsdkinstall - if exist "%BUILD_TOOLS_PATH%" goto :afterbuildtoolsrestore echo Restoring BuildTools version %BUILDTOOLS_VERSION%... -echo Running: "%DOTNET_CMD%" restore "%PROJECT_JSON_FILE%" --no-cache --packages %PACKAGES_DIR% --source "%BUILDTOOLS_SOURCE%" >> "%INIT_TOOLS_LOG%" -call "%DOTNET_CMD%" restore "%PROJECT_JSON_FILE%" --no-cache --packages %PACKAGES_DIR% --source "%BUILDTOOLS_SOURCE%" >> "%INIT_TOOLS_LOG%" +echo Running: "%DOTNET_CMD%" restore "%INIT_TOOLS_RESTORE_PROJECT%" --no-cache --packages %PACKAGES_DIR% --source "%BUILDTOOLS_SOURCE%" /p:BuildToolsPackageVersion=%BUILDTOOLS_VERSION% >> "%INIT_TOOLS_LOG%" +call "%DOTNET_CMD%" restore "%INIT_TOOLS_RESTORE_PROJECT%" --no-cache --packages %PACKAGES_DIR% --source "%BUILDTOOLS_SOURCE%" /p:BuildToolsPackageVersion=%BUILDTOOLS_VERSION% >> "%INIT_TOOLS_LOG%" if NOT exist "%BUILD_TOOLS_PATH%init-tools.cmd" ( echo ERROR: Could not restore build tools correctly. See '%INIT_TOOLS_LOG%' for more details. 1>&2 exit /b 1 @@ -96,16 +68,6 @@ if not [%INIT_TOOLS_ERRORLEVEL%]==[0] ( exit /b %INIT_TOOLS_ERRORLEVEL% ) -echo Updating CLI NuGet Frameworks map... -robocopy "%TOOLRUNTIME_DIR%" "%TOOLRUNTIME_DIR%\dotnetcli\sdk\%DOTNET_VERSION%" NuGet.Frameworks.dll /XO >> "%INIT_TOOLS_LOG%" -set UPDATE_CLI_ERRORLEVEL=%ERRORLEVEL% -if %UPDATE_CLI_ERRORLEVEL% GTR 1 ( - echo ERROR: Failed to update Nuget for CLI {Error level %UPDATE_CLI_ERRORLEVEL%}. Please check '%INIT_TOOLS_LOG%' for more details. 1>&2 - exit /b %UPDATE_CLI_ERRORLEVEL% -) - -if exist %~dp0tools-override xcopy /Y/e/s %~dp0tools-override\* %TOOLRUNTIME_DIR% - :: Create sempahore file echo Done initializing tools. echo Init-Tools.cmd completed for BuildTools Version: %BUILDTOOLS_VERSION% > "%BUILD_TOOLS_SEMAPHORE%" diff --git a/init-tools.msbuild b/init-tools.msbuild new file mode 100644 index 00000000..1ec33f67 --- /dev/null +++ b/init-tools.msbuild @@ -0,0 +1,11 @@ + + + netcoreapp1.0 + false + true + $(MSBuildThisFileDirectory)Tools/$(BuildToolsPackageVersion) + + + + + \ No newline at end of file diff --git a/init-tools.sh b/init-tools.sh index f26035e8..ddb8b75e 100755 --- a/init-tools.sh +++ b/init-tools.sh @@ -6,74 +6,18 @@ __PACKAGES_DIR=$__scriptpath/packages __TOOLRUNTIME_DIR=$__scriptpath/Tools __DOTNET_PATH=$__TOOLRUNTIME_DIR/dotnetcli __DOTNET_CMD=$__DOTNET_PATH/dotnet -__DOTNET_SDK_PATH=$__TOOLRUNTIME_DIR/dotnetclisdk -__DOTNET_SDK_CMD=$__DOTNET_SDK_PATH/dotnet if [ -z "$__BUILDTOOLS_SOURCE" ]; then __BUILDTOOLS_SOURCE=https://dotnet.myget.org/F/dotnet-buildtools/api/v3/index.json; fi +export __BUILDTOOLS_USE_CSPROJ=true __BUILD_TOOLS_PACKAGE_VERSION=$(cat $__scriptpath/BuildToolsVersion.txt) __DOTNET_TOOLS_VERSION=$(cat $__scriptpath/DotnetCLIVersion.txt) -__DOTNET_SDK_TOOLS_VERSION=$(cat $__scriptpath/DotnetCLISdkVersion.txt) -__BUILD_TOOLS_PATH=$__PACKAGES_DIR/Microsoft.DotNet.BuildTools/$__BUILD_TOOLS_PACKAGE_VERSION/lib -__PROJECT_JSON_PATH=$__TOOLRUNTIME_DIR/$__BUILD_TOOLS_PACKAGE_VERSION -__PROJECT_JSON_FILE=$__PROJECT_JSON_PATH/project.json -__PROJECT_JSON_CONTENTS="{ \"dependencies\": { \"Microsoft.DotNet.BuildTools\": \"$__BUILD_TOOLS_PACKAGE_VERSION\" }, \"frameworks\": { \"netcoreapp1.0\": { } } }" -__INIT_TOOLS_DONE_MARKER=$__PROJECT_JSON_PATH/done -__DUMMY_GLOBAL_JSON_PATH=$__PACKAGES_DIR/global.json +__BUILD_TOOLS_PATH=$__PACKAGES_DIR/microsoft.dotnet.buildtools/$__BUILD_TOOLS_PACKAGE_VERSION/lib +__INIT_TOOLS_RESTORE_PROJECT=$__scriptpath/init-tools.msbuild +__INIT_TOOLS_DONE_MARKER_DIR=$__TOOLRUNTIME_DIR/$__BUILD_TOOLS_PACKAGE_VERSION +__INIT_TOOLS_DONE_MARKER=$__INIT_TOOLS_DONE_MARKER_DIR/done # We do not want to run the first-time experience. export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 -# Extended version of platform detection logic from dotnet/cli/scripts/obtain/dotnet-install.sh 16692fc -get_current_linux_name() { - # Detect Distro - if [ "$(cat /etc/*-release | grep -cim1 ubuntu)" -eq 1 ]; then - if [ "$(cat /etc/*-release | grep -cim1 16.04)" -eq 1 ]; then - echo "ubuntu.16.04" - return 0 - fi - if [ "$(cat /etc/*-release | grep -cim1 16.10)" -eq 1 ]; then - echo "ubuntu.16.10" - return 0 - fi - - echo "ubuntu" - return 0 - elif [ "$(cat /etc/*-release | grep -cim1 centos)" -eq 1 ]; then - echo "centos" - return 0 - elif [ "$(cat /etc/*-release | grep -cim1 rhel)" -eq 1 ]; then - echo "rhel" - return 0 - elif [ "$(cat /etc/*-release | grep -cim1 debian)" -eq 1 ]; then - echo "debian" - return 0 - elif [ "$(cat /etc/*-release | grep -cim1 alpine)" -eq 1 ]; then - echo "alpine" - return 0 - elif [ "$(cat /etc/*-release | grep -cim1 fedora)" -eq 1 ]; then - if [ "$(cat /etc/*-release | grep -cim1 23)" -eq 1 ]; then - echo "fedora.23" - return 0 - fi - if [ "$(cat /etc/*-release | grep -cim1 24)" -eq 1 ]; then - echo "fedora.24" - return 0 - fi - elif [ "$(cat /etc/*-release | grep -cim1 opensuse)" -eq 1 ]; then - if [ "$(cat /etc/*-release | grep -cim1 13.2)" -eq 1 ]; then - echo "opensuse.13.2" - return 0 - fi - if [ "$(cat /etc/*-release | grep -cim1 42.1)" -eq 1 ]; then - echo "opensuse.42.1" - return 0 - fi - fi - - # Cannot determine Linux distribution, assuming Ubuntu 14.04. - echo "ubuntu" - return 0 -} - if [ -z "$__DOTNET_PKG" ]; then if [ "$(uname -m | grep "i[3456]86")" = "i686" ]; then echo "Warning: build not supported on 32 bit Unix" @@ -87,14 +31,14 @@ OSName=$(uname -s) ;; Linux) - __DOTNET_PKG="dotnet-dev-$(get_current_linux_name)-x64" + __DOTNET_PKG=dotnet-dev-linux-x64 OS=Linux ;; *) - echo "Unsupported OS '$OSName' detected. Downloading ubuntu-x64 tools." + echo "Unsupported OS '$OSName' detected. Downloading linux-x64 tools." OS=Linux - __DOTNET_PKG=dotnet-dev-ubuntu-x64 + __DOTNET_PKG=dotnet-dev-linux-x64 ;; esac fi @@ -105,12 +49,6 @@ if [ ! -e $__INIT_TOOLS_DONE_MARKER ]; then if [ -e $__TOOLRUNTIME_DIR ]; then rm -rf -- $__TOOLRUNTIME_DIR; fi echo "Running: $__scriptpath/init-tools.sh" > $__init_tools_log - # core-setup repo has a global.json which causes a conflict with the init-tools publish step - if [ ! -e $__PACKAGES_DIR ]; then - mkdir -p $__PACKAGES_DIR - fi - echo '{ "projects": [] }' > $__DUMMY_GLOBAL_JSON_PATH - if [ ! -e $__DOTNET_PATH ]; then mkdir -p "$__DOTNET_PATH" @@ -123,7 +61,7 @@ if [ ! -e $__INIT_TOOLS_DONE_MARKER ]; then cp -r $DOTNET_TOOL_DIR/* $__DOTNET_PATH else echo "Installing dotnet cli..." - __DOTNET_LOCATION="https://dotnetcli.azureedge.net/dotnet/preview/Binaries/${__DOTNET_TOOLS_VERSION}/${__DOTNET_PKG}.${__DOTNET_TOOLS_VERSION}.tar.gz" + __DOTNET_LOCATION="https://dotnetcli.azureedge.net/dotnet/Sdk/${__DOTNET_TOOLS_VERSION}/${__DOTNET_PKG}.${__DOTNET_TOOLS_VERSION}.tar.gz" # curl has HTTPS CA trust-issues less often than wget, so lets try that first. echo "Installing '${__DOTNET_LOCATION}' to '$__DOTNET_PATH/dotnet.tar'" >> $__init_tools_log which curl > /dev/null 2> /dev/null @@ -141,25 +79,6 @@ if [ ! -e $__INIT_TOOLS_DONE_MARKER ]; then fi fi - if [ ! -e $__DOTNET_SDK_PATH ]; then - - mkdir -p "$__DOTNET_SDK_PATH" - - echo "Installing dotnet cli..." - __DOTNET_LOCATION="https://dotnetcli.azureedge.net/dotnet/Sdk/${__DOTNET_SDK_TOOLS_VERSION}/${__DOTNET_PKG}.${__DOTNET_SDK_TOOLS_VERSION}.tar.gz" - # curl has HTTPS CA trust-issues less often than wget, so lets try that first. - echo "Installing '${__DOTNET_LOCATION}' to '$__DOTNET_SDK_PATH/dotnet.tar'" >> $__init_tools_log - which curl > /dev/null 2> /dev/null - if [ $? -ne 0 ]; then - wget -q -O $__DOTNET_SDK_PATH/dotnet.tar ${__DOTNET_LOCATION} - else - curl --retry 10 -sSL --create-dirs -o $__DOTNET_SDK_PATH/dotnet.tar ${__DOTNET_LOCATION} - fi - cd $__DOTNET_SDK_PATH - tar -xf $__DOTNET_SDK_PATH/dotnet.tar - - cd $__scriptpath - fi if [ -n "$BUILD_TOOLS_TOOLSET_DIR" ] && [ -d "$BUILD_TOOLS_TOOLSET_DIR/$__BUILD_TOOLS_PACKAGE_VERSION" ]; then echo "Copying $BUILD_TOOLS_TOOLSET_DIR/$__BUILD_TOOLS_PACKAGE_VERSION to $__TOOLRUNTIME_DIR" >> $__init_tools_log @@ -168,18 +87,18 @@ if [ ! -e $__INIT_TOOLS_DONE_MARKER ]; then echo "Copying $BUILD_TOOLS_TOOL_DIR to $__TOOLRUNTIME_DIR" >> $__init_tools_log cp -r $BUILD_TOOLS_TOOL_DIR/* $__TOOLRUNTIME_DIR else - if [ ! -d "$__PROJECT_JSON_PATH" ]; then mkdir "$__PROJECT_JSON_PATH"; fi - echo $__PROJECT_JSON_CONTENTS > "$__PROJECT_JSON_FILE" - if [ ! -e $__BUILD_TOOLS_PATH ]; then echo "Restoring BuildTools version $__BUILD_TOOLS_PACKAGE_VERSION..." - echo "Running: $__DOTNET_CMD restore \"$__PROJECT_JSON_FILE\" --no-cache --packages $__PACKAGES_DIR --source $__BUILDTOOLS_SOURCE" >> $__init_tools_log - $__DOTNET_CMD restore "$__PROJECT_JSON_FILE" --no-cache --packages $__PACKAGES_DIR --source $__BUILDTOOLS_SOURCE >> $__init_tools_log + echo "Running: $__DOTNET_CMD restore \"$__INIT_TOOLS_RESTORE_PROJECT\" --no-cache --packages $__PACKAGES_DIR --source $__BUILDTOOLS_SOURCE /p:BuildToolsPackageVersion=$__BUILD_TOOLS_PACKAGE_VERSION" >> $__init_tools_log + $__DOTNET_CMD restore "$__INIT_TOOLS_RESTORE_PROJECT" --no-cache --packages $__PACKAGES_DIR --source $__BUILDTOOLS_SOURCE /p:BuildToolsPackageVersion=$__BUILD_TOOLS_PACKAGE_VERSION >> $__init_tools_log if [ ! -e "$__BUILD_TOOLS_PATH/init-tools.sh" ]; then echo "ERROR: Could not restore build tools correctly. See '$__init_tools_log' for more details."1>&2; fi fi echo "Initializing BuildTools..." echo "Running: $__BUILD_TOOLS_PATH/init-tools.sh $__scriptpath $__DOTNET_CMD $__TOOLRUNTIME_DIR" >> $__init_tools_log + + # Executables restored with .NET Core 2.0 do not have executable permission flags. https://github.com/NuGet/Home/issues/4424 + chmod +x $__BUILD_TOOLS_PATH/init-tools.sh $__BUILD_TOOLS_PATH/init-tools.sh $__scriptpath $__DOTNET_CMD $__TOOLRUNTIME_DIR >> $__init_tools_log if [ "$?" != "0" ]; then echo "ERROR: An error occured when trying to initialize the tools. Please check '$__init_tools_log' for more details."1>&2 @@ -187,21 +106,14 @@ if [ ! -e $__INIT_TOOLS_DONE_MARKER ]; then fi fi - if [ $__PATCH_CLI_NUGET_FRAMEWORKS -eq 1 ]; then - echo "Updating CLI NuGet Frameworks map..." - cp $__TOOLRUNTIME_DIR/NuGet.Frameworks.dll $__TOOLRUNTIME_DIR/dotnetcli/sdk/$__DOTNET_TOOLS_VERSION >> $__init_tools_log - if [ "$?" != "0" ]; then - echo "ERROR: An error occured when updating Nuget for CLI . Please check '$__init_tools_log' for more details."1>&2 - exit 1 - fi - fi + echo "Making all .sh files executable under Tools." + # Executables restored with .NET Core 2.0 do not have executable permission flags. https://github.com/NuGet/Home/issues/4424 + ls $__scriptpath/Tools/*.sh | xargs chmod +x + ls $__scriptpath/Tools/scripts/docker/*.sh | xargs chmod +x - if [ -e $__scriptpath/tools-override/crossgen.sh ]; then - $__scriptpath/tools-override/crossgen.sh $__scriptpath/Tools - fi - - cp -fR $__scriptpath/tools-override/* $__TOOLRUNTIME_DIR + Tools/crossgen.sh $__scriptpath/Tools + mkdir -p $__INIT_TOOLS_DONE_MARKER_DIR touch $__INIT_TOOLS_DONE_MARKER echo "Done initializing tools." diff --git a/publish/publish.proj b/publish/publish.proj index d5d586fc..a1fa0211 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -121,8 +121,8 @@ - $(DnuRestorePrefix)$(DotnetSdkToolCommand) nuget push --source $(NuGetFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) - $(DnuRestorePrefix)$(DotnetSdkToolCommand) nuget push --source $(NuGetSymbolsFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) + $(DnuRestorePrefix)$(DotnetToolCommand) nuget push --source $(NuGetFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) + $(DnuRestorePrefix)$(DotnetToolCommand) nuget push --source $(NuGetSymbolsFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) diff --git a/run.sh b/run.sh index f01c2846..9b68d2d5 100755 --- a/run.sh +++ b/run.sh @@ -15,8 +15,6 @@ $__scriptpath/init-tools.sh __dotnet=$__toolsLocalPath/dotnetcli/dotnet -cp -fR $__scriptpath/tools-override/* $__toolsLocalPath - # We do not want to run the first-time experience. export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 $__dotnet $__toolsLocalPath/run.exe $* diff --git a/src/managed/dir.proj b/src/managed/dir.proj index 519e8252..ced354b0 100644 --- a/src/managed/dir.proj +++ b/src/managed/dir.proj @@ -15,7 +15,7 @@ -
diff --git a/src/pkg/deps/deps.csproj b/src/pkg/deps/deps.csproj new file mode 100644 index 00000000..a901013d --- /dev/null +++ b/src/pkg/deps/deps.csproj @@ -0,0 +1,12 @@ + + + + + netstandard1.0 + + + + + + + diff --git a/src/pkg/deps/project.json b/src/pkg/deps/project.json deleted file mode 100644 index 1a3c19d8..00000000 --- a/src/pkg/deps/project.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "dependencies": { - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25311-04" - }, - "frameworks": { - "dnxcore50": { - "imports": "portable-net45+win8" - } - } -} diff --git a/src/pkg/dir.targets b/src/pkg/dir.targets index 03b490b6..b785ba53 100644 --- a/src/pkg/dir.targets +++ b/src/pkg/dir.targets @@ -2,6 +2,6 @@ - $(ProjectDir)packages\$(PlatformPackageId)\$(PlatformPackageVersion)\runtime.json + $(ProjectDir)packages\$(PlatformPackageId.ToLowerInvariant())\$(PlatformPackageVersion)\runtime.json diff --git a/src/pkg/packaging/deb/package.targets b/src/pkg/packaging/deb/package.targets index 5aa78990..20626a5a 100644 --- a/src/pkg/packaging/deb/package.targets +++ b/src/pkg/packaging/deb/package.targets @@ -12,8 +12,8 @@ - - + + - @@ -99,7 +99,7 @@ DestinationFile="$(debLayoutDirectory)$(DebianConfigJsonName)" ReplacementItems="@(SharedHostTokenValue)" /> - @@ -175,7 +175,7 @@ DestinationFile="$(debLayoutDirectory)$(DebianConfigJsonName)" ReplacementItems="@(HostFxrTokenValue)" /> - @@ -254,7 +254,7 @@ DestinationFile="$(debLayoutDirectory)$(DebianConfigJsonName)" ReplacementItems="@(SharedFrameworkTokenValue)" /> - diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index b4a50465..1e5c30c3 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -170,7 +170,7 @@ --version-suffix $(VersionSuffix) - diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index 240b86cd..96fcb03c 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -8,13 +8,36 @@ null-refs when this isn't set and an analyzer is in the packages --> unused .NETCoreApp,Version=v2.0 + netcoreapp2.0 netcoreapp2.0 Microsoft.Private.CoreFx.NETCoreApp $(CrossGenRootPath)/$(MSBuildProjectName)/$(NuGetRuntimeIdentifier) + true + true + true + $(IntermediateOutputPath)$(NuGetRuntimeIdentifier) + $(IntermediateOutputPath) + /p:HasRuntimePackages=false /p:IntermediateOutputPath=$(IntermediateOutputPath) + - + + $(CoreFxVersion) + + + $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) + + + $(DiaSymReaderNativeVersion) + + + $(PlatformPackageVersion) + + + $(NETStandardVersion) + + @@ -43,7 +66,7 @@ <_runtimePackageId>%(_runtimeCLR.NuGetPackageId) <_runtimePackageVersion>%(_runtimeCLR.NuGetPackageVersion) - <_runtimePackagePath>$(PackagesDir)/$(_runtimePackageId)/$(_runtimePackageVersion) + <_runtimePackagePath>$(PackagesDir)/$(_runtimePackageId.ToLowerInvariant())/$(_runtimePackageVersion) <_crossGenPath>$(_runtimePackagePath)/tools$(_crossDir)/crossgen$(ApplicationFileExtension) <_runtimeDirectory>%(_runtimeCLR.RootDir)%(_runtimeCLR.Directory) @@ -56,7 +79,7 @@ <_jitPackageId>%(_runtimeJIT.NuGetPackageId) <_jitPackageVersion>%(_runtimeJIT.NuGetPackageVersion) - <_jitPackagePath>$(PackagesDir)/$(_jitPackageId)/$(_jitPackageVersion) + <_jitPackagePath>$(PackagesDir)/$(_jitPackageId.ToLowerInvariant())/$(_jitPackageVersion) <_jitPath>%(_runtimeJIT.FullPath) <_jitPath Condition="'$(_crossDir)' != ''">$(_jitPackagePath)/runtimes$(_crossDir)/native/$(LibraryFilePrefix)clrjit$(LibraryFileExtension) @@ -78,7 +101,7 @@ - $(PackagesDir)%(Reference.NuGetPackageId)/%(Reference.NuGetPackageVersion)/version.txt + $(PackagesDir)$([System.String]::new('%(Reference.NuGetPackageId)').ToLowerInvariant())/%(Reference.NuGetPackageVersion)/version.txt $(_runtimePackagePath)/version.txt @@ -178,6 +201,9 @@ <_crossGenIntermediatePath>$(IntermediateOutputPath)/crossgen + + <_filesToCrossGen Include="@(FilesToPackage)" Condition="'%(FilesToPackage.IsNative)' != 'true' AND '%(FileName)' != 'System.Private.CoreLib' AND '%(FileName)' != 'mscorlib' AND '%(Extension)' == '.dll'"> @@ -232,24 +258,9 @@ - - - - - - - $([System.Text.RegularExpressions.Regex]::Match('%(Identity)', '(\w[^:"]*)')) - $([System.Text.RegularExpressions.Regex]::Match('%(Identity)', '(\d+\.\d+.\d+[^"]*)')) - - - - %(PackageMatch.PackageVersion) - - - <_DependenciesToPackageWithVersion Include="@(ReferencedPackage)" Condition="'@(ReferencedPackage)' == '@(DependenciesToPackage)' AND '%(Identity)' != ''"> + <_DependenciesToPackageWithVersion Include="@(PackageReference)" Condition="'@(PackageReference)' == '@(DependenciesToPackage)' AND '%(Identity)' != ''"> $(PackageTargetFramework) diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template b/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template deleted file mode 100644 index 35080bb0..00000000 --- a/src/pkg/projects/Microsoft.NETCore.App/src/project.json.template +++ /dev/null @@ -1,15 +0,0 @@ -{ - "dependencies": { - "Microsoft.Private.CoreFx.NETCoreApp": "4.4.0-preview2-25311-04", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25309-01", - "Microsoft.DiaSymReader.Native": "1.4.1", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25311-04", - "NETStandard.Library": "2.0.0-preview2-25311-01" - }, - "frameworks": { - "netcoreapp2.0": {} - }, - "runtimes": { - "{RID}": {} - } -} diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj index 4a6de09d..aff8aa3b 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj @@ -8,12 +8,50 @@ null-refs when this isn't set and an analyzer is in the packages --> unused UAP,Version=v10.1 + uap10.1 uap10.1 Microsoft.Private.CoreFx.UAP + true + true + true + $(IntermediateOutputPath)$(NuGetRuntimeIdentifier) + $(IntermediateOutputPath) + /p:HasRuntimePackages=false /p:IntermediateOutputPath=$(IntermediateOutputPath) + - + + 1.6.1 + + + $(CoreFxVersion) + + + $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) + + + $(PlatformPackageVersion) + + + $(NETStandardVersion) + + + $(WcfVersion) + + + $(WcfVersion) + + + $(WcfVersion) + + + $(WcfVersion) + + + $(WcfVersion) + + - - - - - - $([System.Text.RegularExpressions.Regex]::Match('%(Identity)', '(\w[^:"]*)')) - $([System.Text.RegularExpressions.Regex]::Match('%(Identity)', '(\d+\.\d+.\d+[^"]*)')) - - - - %(PackageMatch.PackageVersion) - - - <_DependenciesToPackageWithVersion Include="@(ReferencedPackage)" Condition="'@(ReferencedPackage)' == '@(DependenciesToPackage)' AND '%(Identity)' != ''"> + <_DependenciesToPackageWithVersion Include="@(PackageReference)" Condition="'@(PackageReference)' == '@(DependenciesToPackage)' AND '%(Identity)' != ''"> $(PackageTargetFramework) diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/packagereferences.msbuild b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/packagereferences.msbuild new file mode 100644 index 00000000..2dac326c --- /dev/null +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/packagereferences.msbuild @@ -0,0 +1,9 @@ + + + + + true + uap10.1 + $(RestoreOutputPath) + + diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template deleted file mode 100644 index 74c06af5..00000000 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/project.json.template +++ /dev/null @@ -1,20 +0,0 @@ -{ - "dependencies": { - "Microsoft.Net.Native.Compiler": "1.6.1", - "Microsoft.Private.CoreFx.UAP": "4.4.0-preview2-25311-04", - "transport.Microsoft.NETCore.Runtime.CoreCLR": "2.0.0-preview2-25309-01", - "Microsoft.NETCore.Platforms": "2.0.0-preview2-25311-04", - "NETStandard.Library": "2.0.0-preview2-25311-01", - "System.ServiceModel.Duplex": "4.4.0-beta-25205-01", - "System.ServiceModel.Http": "4.4.0-beta-25205-01", - "System.ServiceModel.NetTcp": "4.4.0-beta-25205-01", - "System.ServiceModel.Primitives": "4.4.0-beta-25205-01", - "System.ServiceModel.Security": "4.4.0-beta-25205-01" - }, - "frameworks": { - "uap10.1": {} - }, - "runtimes": { - "{RID}": {} - } -} diff --git a/src/pkg/projects/dir.props b/src/pkg/projects/dir.props index 18771745..139a6cb6 100644 --- a/src/pkg/projects/dir.props +++ b/src/pkg/projects/dir.props @@ -6,10 +6,6 @@ obj/$(Configuration)/ $(IntermediateOutputPath)$(NuGetRuntimeIdentifier)/ - $(MSBuildThisProjectDirectory)project.json.template - $(IntermediateOutputPath)project.json - $(IntermediateOutputPath)project.lock.json - true $(PackageOutputPath) diff --git a/src/pkg/projects/dir.targets b/src/pkg/projects/dir.targets index f2ae3cd5..768d9b24 100644 --- a/src/pkg/projects/dir.targets +++ b/src/pkg/projects/dir.targets @@ -6,25 +6,6 @@ true - - - - - - - - - diff --git a/src/sharedFramework/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj index f1c70e9b..6ceba200 100644 --- a/src/sharedFramework/sharedFramework.proj +++ b/src/sharedFramework/sharedFramework.proj @@ -28,11 +28,11 @@ - - @@ -136,11 +136,11 @@ - - diff --git a/src/test/dir.proj b/src/test/dir.proj index 98b8dbc4..c8f6c353 100644 --- a/src/test/dir.proj +++ b/src/test/dir.proj @@ -46,13 +46,13 @@ @(RestoreTestSource->'--source %(Identity)', ' ') $(RestoreSourceArg) @(RestoreTestFallbackSource->'--source %(Identity)', ' ') - --disable-parallel --packages "$(PackagesDir.TrimEnd('/\'.ToCharArray()))" $(RestoreSourceArg) + --disable-parallel --packages "$(PackagesDir.TrimEnd('/').TrimEnd('\'))" $(RestoreSourceArg) $(RestoreArgs) /p:MNAVersion=$(ProductVersion) /p:TestTargetRid=$(TestTargetRid) DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 - + - + EnvironmentVariables="NUGET_PACKAGES=$(PackagesDir.TrimEnd('/').TrimEnd('\'))" /> true $(TestsOutputDir)$(TestProjectFilename)-testResults.trx - - + - + - \ No newline at end of file + diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.builds b/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.builds index 91d4a137..d09375c7 100644 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.builds +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.builds @@ -2,7 +2,9 @@ - + + TargetGroup=netstandard1.5 + TargetGroup=net45 diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.csproj b/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.csproj index ccc8fba4..7981e648 100644 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.csproj +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.csproj @@ -4,19 +4,41 @@ Library .NETStandard,Version=v1.5 - .NETFramework,Version=v4.5 + netstandard1.5 + .NETFramework,Version=v4.5.1 + net451 false {B507BED2-0A28-456A-99C6-AD7AA148E35F} $(LocalToolRuntimePath) - $(IntermediateOutputPath)\net45 $(LocalToolRuntimePath)\net46 + $(BaseIntermediateOutputPath)tools-local/$(MSBuildProjectName)/$(TargetGroup) + dnxcore50;portable-net45+win8+wpa81 + true + .NETStandard + $(IntermediateOutputPath) + true + true + + + 1.2.0-beta-001090 + + + 1.3.0 + + + 9.0.1 + + + + 1.0.1 + @@ -27,8 +49,29 @@ - - + + + 0.1.0-preview-00022 + + + 0.1.0-preview-00022 + + + 0.1.0-preview-00022 + + + 0.1.0-preview-00022 + + + 4.5.24 + None + + + 1.6.0 + + + 4.0.0 + - \ No newline at end of file + diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/project.json b/tools-local/Microsoft.DotNet.Build.Tasks.Local/project.json deleted file mode 100644 index 67fd805f..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/project.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "dependencies": { - "Microsoft.DotNet.PlatformAbstractions": "1.2.0-beta-001090", - "System.Reflection.Metadata": "1.3.0", - "Newtonsoft.Json": "9.0.1" - }, - "frameworks": { - "netstandard1.5": { - "dependencies": { - "Microsoft.Build": "0.1.0-preview-00022", - "Microsoft.Build.Framework": "0.1.0-preview-00022", - "Microsoft.Build.Tasks.Core": "0.1.0-preview-00022", - "Microsoft.Build.Utilities.Core": "0.1.0-preview-00022", - "Microsoft.Tpl.Dataflow": { - "version": "4.5.24", - "exclude": "all" - }, - "NETStandard.Library": "1.6.0", - "System.Diagnostics.FileVersionInfo": "4.0.0" - }, - "imports": [ - "dnxcore50", - "portable-net45+win8+wpa81" - ] - }, - "net451": { - "dependencies": { - "Microsoft.TargetingPack.NETFramework.v4.5.1": "1.0.1" - } - } - } -} diff --git a/tools-local/tasks/core-setup.tasks.builds b/tools-local/tasks/core-setup.tasks.builds index 91d4a137..d09375c7 100644 --- a/tools-local/tasks/core-setup.tasks.builds +++ b/tools-local/tasks/core-setup.tasks.builds @@ -2,7 +2,9 @@ - + + TargetGroup=netstandard1.5 + TargetGroup=net45 diff --git a/tools-local/tasks/core-setup.tasks.csproj b/tools-local/tasks/core-setup.tasks.csproj index c9b8d37e..b296cb4c 100644 --- a/tools-local/tasks/core-setup.tasks.csproj +++ b/tools-local/tasks/core-setup.tasks.csproj @@ -4,30 +4,68 @@ Library .NETStandard,Version=v1.5 - .NETFramework,Version=v4.5 + netstandard1.5 + .NETFramework,Version=v4.5.1 + net451 false {360F25FA-3CD9-4338-B961-A4F3122B88B2} $(LocalToolRuntimePath) - $(IntermediateOutputPath)\net45 $(LocalToolRuntimePath)\net46 - - <_TargetFrameworkDirectories>$(MSBuildThisFileDirectory)/Documentation - <_FullFrameworkReferenceAssemblyPaths>$(MSBuildThisFileDirectory)/Documentation + $(BaseIntermediateOutputPath)tools-local/$(MSBuildProjectName)/$(TargetGroup) + dnxcore50;portable-net45+win8+wpa81 + true + .NETStandard + $(IntermediateOutputPath) + true + true + + + 3.5.0 + + + 1.1.1 + + + + 0.1.0-preview-00022 + + + 0.1.0-preview-00022 + + + 0.1.0-preview-00022 + + + 0.1.0-preview-00022 + + + 4.5.24 + None + + + 1.6.0 + + + 4.0.0 + + + 1.0.1 + + @@ -35,9 +73,6 @@ - - - {b507bed2-0a28-456a-99c6-ad7aa148e35f} @@ -45,4 +80,4 @@ - \ No newline at end of file + diff --git a/tools-local/tasks/project.json b/tools-local/tasks/project.json deleted file mode 100644 index 6404cb85..00000000 --- a/tools-local/tasks/project.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "dependencies": { - "System.Reflection.Metadata": "1.3.0", - "Newtonsoft.Json": "9.0.1", - "NuGet.ProjectModel": "3.5.0", - "Microsoft.Extensions.DependencyModel": "1.1.1" - }, - "frameworks": { - "netstandard1.5": { - "dependencies": { - "Microsoft.Build": "0.1.0-preview-00022", - "Microsoft.Build.Framework": "0.1.0-preview-00022", - "Microsoft.Build.Tasks.Core": "0.1.0-preview-00022", - "Microsoft.Build.Utilities.Core": "0.1.0-preview-00022", - "Microsoft.Tpl.Dataflow": { - "version": "4.5.24", - "exclude": "all" - }, - "NETStandard.Library": "1.6.0", - "System.Diagnostics.FileVersionInfo": "4.0.0" - }, - "imports": [ - "dnxcore50", - "portable-net45+win8+wpa81" - ] - }, - "net451": { - "dependencies": { - "Microsoft.TargetingPack.NETFramework.v4.5.1": "1.0.1" - } - } - } -} diff --git a/tools-override/Roslyn.Common.props b/tools-override/Roslyn.Common.props deleted file mode 100644 index 392ff343..00000000 --- a/tools-override/Roslyn.Common.props +++ /dev/null @@ -1,25 +0,0 @@ - - - - 2.0.0-rc - Microsoft.Net.Compilers - $(ToolRuntimePath) - - - - $(BuildToolsTaskDir)/roslyn/build/Microsoft.Net.Compilers.props - - - - - $(PackagesDir)/$(RoslynPackageName).$(RoslynVersion)/ - $(RoslynPackageDir)build/$(RoslynPackageName).props - - - Portable - - \ No newline at end of file diff --git a/tools-override/crossgen.sh b/tools-override/crossgen.sh deleted file mode 100755 index 880c43a6..00000000 --- a/tools-override/crossgen.sh +++ /dev/null @@ -1,90 +0,0 @@ -#!/usr/bin/env bash - -# Restores crossgen and runs it on all tools components. - -__CoreClrVersion=1.1.0 - -usage() -{ - echo "crossgen.sh " - echo " Restores crossgen and runs it on all assemblies in ." - exit 0 -} - -restore_crossgen() -{ - __crossgen=$__sharedFxDir/crossgen - if [ -e $__crossgen ]; then - return - fi - - __pjDir=$__toolsDir/crossgen - mkdir -p $__pjDir - echo "{\"frameworks\":{\"netcoreapp1.1\":{\"dependencies\":{\"Microsoft.NETCore.Runtime.CoreCLR\":\"$__CoreClrVersion\", \"Microsoft.NETCore.Platforms\": \"$__CoreClrVersion\"}}},\"runtimes\":{\"$__rid\":{}}}" > "$__pjDir/project.json" - $__dotnet restore $__pjDir/project.json --packages $__packagesDir - __crossgenInPackage=$__packagesDir/runtime.$__packageRid.Microsoft.NETCore.Runtime.CoreCLR/$__CoreClrVersion/tools/crossgen - if [ ! -e $__crossgenInPackage ]; then - echo "The crossgen executable could not be found at "$__crossgenInPackage". Aborting crossgen.sh." - exit 1 - fi - cp $__crossgenInPackage $__sharedFxDir - __crossgen=$__sharedFxDir/crossgen -} - -crossgen_everything() -{ - echo "Running crossgen on all assemblies in $__targetDir." - for file in $__targetDir/*.{dll,exe} - do - if [ $(basename $file) != "Microsoft.Build.Framework.dll" ]; then - crossgen_single $file & pid=$! - __pids+=" $pid" - fi - done - - trap "kill $__pids 2&> /dev/null" SIGINT - wait $__pids - echo "Crossgen finished." -} - -crossgen_single() -{ - __file=$1 - $__crossgen /Platform_Assemblies_Paths $__toolsDir:$__sharedFxDir /nologo /MissingDependenciesOK $__file > /dev/null - if [ $? -eq 0 ]; then - __outname="${__file/.dll/.ni.dll}" - __outname="${__outname/.exe/.ni.exe}" - echo "$__file -> $__outname" - else - echo "Unable to successfully compile $__file" - fi -} - -if [ ! -z $BUILDTOOLS_SKIP_CROSSGEN ]; then - echo "BUILDTOOLS_SKIP_CROSSGEN is set. Skipping crossgen step." - exit 0 -fi - -if [[ -z "$1" || "$1" == "-?" || "$1" == "--help" || "$1" == "-h" ]]; then - usage -fi - -__targetDir=$1 -__scriptpath=$(cd "$(dirname "$0")"; pwd -P) -__toolsDir=$__scriptpath/../Tools -__dotnet=$__toolsDir/dotnetcli/dotnet -__packagesDir=$__scriptpath/../packages -__sharedFxDir=$__toolsDir/dotnetcli/shared/Microsoft.NETCore.App/$__CoreClrVersion/ -__rid=$($__dotnet --info | sed -n -e 's/^.*RID:[[:space:]]*//p') - -if [[ $__rid == *"osx"* ]]; then - __packageRid="osx.10.10-x64" -elif [[ $__rid == *"rhel.7"* || $__rid == *"centos.7"* ]]; then - __packageRid="rhel.7-x64" -else - __packageRid=$__rid -fi - -restore_crossgen -crossgen_everything -exit 0 From 70092562b7af7d8d5475641d0b589516a5c8cefd Mon Sep 17 00:00:00 2001 From: Bjarke Istrup Pedersen Date: Fri, 12 May 2017 20:04:41 +0000 Subject: [PATCH 400/625] Changed workaround to not being Gentoo specific. --- .../Native/PlatformApis.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs b/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs index 3a2c7cd2..af8772ad 100644 --- a/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs +++ b/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs @@ -128,11 +128,11 @@ namespace Microsoft.DotNet.PlatformAbstractions.Native // are backwards compatible. private static DistroInfo NormalizeDistroInfo(DistroInfo distroInfo) { - if (distroInfo.Id == "gentoo") + if (string.IsNullOrEmpty(distroInfo.VersionId)) { - // Gentoo does not have versions, since they use rolling releases. - // Workaround this by setting VersionId to the current year and month. - distroInfo.VersionId = DateTime.Today.ToString("yyyy.MM"); + // Some distribution does not have VERSION_ID defined. + // Since we need it, we workaround this by giving it the value "unavailable". + distroInfo.VersionId = "unavailable"; } int minorVersionNumberSeparatorIndex = distroInfo.VersionId.IndexOf('.'); From d10ad47c447ccb6827b7b57a8ff58b594671cc20 Mon Sep 17 00:00:00 2001 From: William Godbe Date: Fri, 12 May 2017 13:27:53 -0700 Subject: [PATCH 401/625] Revert "Sign arm binaries in pipeline" --- ...son => Core-Setup-Signing-Windows-BT.json} | 191 ++++++- buildpipeline/Core-Setup-Windows-BT.json | 483 ++---------------- buildpipeline/pipeline.json | 10 +- 3 files changed, 210 insertions(+), 474 deletions(-) rename buildpipeline/{Core-Setup-Windows-Arm-BT.json => Core-Setup-Signing-Windows-BT.json} (71%) diff --git a/buildpipeline/Core-Setup-Windows-Arm-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json similarity index 71% rename from buildpipeline/Core-Setup-Windows-Arm-BT.json rename to buildpipeline/Core-Setup-Signing-Windows-BT.json index f1f6f708..e20b5d72 100644 --- a/buildpipeline/Core-Setup-Windows-Arm-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -264,6 +264,168 @@ "msbuildLocation": "" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build and run tests", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\test\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=diag;LogFile=$(PB_SourcesDirectory)\\tests.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign MSI and cab", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignMsiAndCab $(PB_CommonMSBuildArgs) $(MsbuildSigningArguments)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Extract engine from bundle", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:ExtractEngineBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\extractengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign engine", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Reattach engine to bundle", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:ReattachEngineToBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\reattachengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign Bundle", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signbundle.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, { "enabled": true, "continueOnError": false, @@ -279,7 +441,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -477,29 +639,27 @@ "value": "real" }, "PB_CommonMSBuildArgs": { - "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild) /p:DisableCrossgen=true $(PB_AdditionalBuildArguments)" - }, - "PB_AdditionalBuildArguments": { - "value": "" + "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild)" }, "OfficialBuildId": { "value": "$(Build.BuildNumber)" }, "PB_TargetArchitecture": { - "value": "arm", + "value": "x64", "allowOverride": true }, "PB_CleanAgent": { "value": "true" }, + "PB_PublishRidAgnosticPackages": { + "value": "false" + }, "PB_BuildFullPlatformManifest": { "value": "false" } }, "demands": [ - "Agent.OS -equals Windows_NT", - "DotNetFramework", - "Cmd" + "Agent.OS -equals Windows_NT" ], "retentionRules": [ { @@ -511,15 +671,15 @@ "FilePath", "SymbolStore" ], - "daysToKeep": 7, + "daysToKeep": 2, "minimumToKeep": 1, "deleteBuildRecord": true, "deleteTestResults": true } ], - "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)", + "buildNumberFormat": "$(Date:yyyyMMdd)$(Rev:-rr)", "jobAuthorizationScope": "projectCollection", - "jobTimeoutInMinutes": 90, + "jobTimeoutInMinutes": 120, "jobCancelTimeoutInMinutes": 5, "badgeEnabled": true, "repository": { @@ -529,7 +689,7 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "0" + "cleanOptions": "3" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -539,7 +699,6 @@ "clean": "false", "checkoutSubmodules": false }, - "processParameters": {}, "quality": "definition", "queue": { "id": 36, @@ -549,8 +708,8 @@ "name": "DotNet-Build" } }, - "id": 4371, - "name": "Core-Setup-Windows-Arm-BT", + "id": 6102, + "name": "Core-Setup-Signing-Windows-BT", "path": "\\", "type": "build", "project": { diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 39b08751..8c1b8db1 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -60,44 +60,7 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Install Signing Plugin", - "timeoutInMinutes": 0, - "task": { - "id": "30666190-6959-11e5-9f96-f56098202fef", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "signType": "$(PB_SignType)", - "zipSources": "false", - "version": "", - "feedSource": "https://devdiv.pkgs.visualstudio.com/DefaultCollection/_packaging/MicroBuildToolset/nuget/v3/index.json" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Run init-tools.cmd", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "$(PB_SourcesDirectory)\\init-tools.cmd", - "arguments": "", - "modifyEnvironment": "false", - "workingFolder": "$(PB_SourcesDirectory)", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Generate version assets", + "displayName": "Build", "timeoutInMinutes": 0, "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", @@ -106,326 +69,11 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)\\build.cmd", - "arguments": "-- /t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId) $(PB_CommonMSBuildArgs)", + "arguments": "-- $(PB_CommonMSBuildArgs)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build traversal build dependencies", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "$(PB_SourcesDirectory)\\build.cmd", - "arguments": "-- $(PB_CommonMSBuildArgs) /t:BuildTraversalBuildDependencies /flp:v=diag", - "workingFolder": "$(PB_SourcesDirectory)", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build binaries", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)/src/src.builds", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign binaries", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\sign.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignBinaries $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build nuget packages", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\pkg\\dir.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packages.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build sharedframework layout", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\sharedFramework\\sharedFramework.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\sharedframework.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Package", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packaging.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "true", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build and run tests", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\test\\dir.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=diag;LogFile=$(PB_SourcesDirectory)\\tests.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign MSI and cab", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\sign.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignMsiAndCab $(PB_CommonMSBuildArgs) $(MsbuildSigningArguments)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Extract engine from bundle", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:ExtractEngineBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\extractengine.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign engine", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\sign.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signengine.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Reattach engine to bundle", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:ReattachEngineToBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\reattachengine.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign Bundle", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\sign.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signbundle.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, { "enabled": true, "continueOnError": false, @@ -441,7 +89,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -457,7 +105,7 @@ "enabled": true, "continueOnError": true, "alwaysRun": false, - "displayName": "Cleanup VSTS Agent", + "displayName": "Clean up VSTS agent", "timeoutInMinutes": 0, "task": { "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", @@ -479,38 +127,6 @@ "msbuildArchitecture": "x64", "msbuildLocation": "" } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Perform Cleanup Tasks", - "timeoutInMinutes": 0, - "task": { - "id": "521a94ea-9e68-468a-8167-6dcf361ea776", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": {} - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Copy Publish Artifact: Build Logs", - "timeoutInMinutes": 0, - "task": { - "id": "1d341bb0-2106-458c-8422-d00bcea6512a", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "CopyRoot": "", - "Contents": "**\\*.log", - "ArtifactName": "Build Logs", - "ArtifactType": "Container", - "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" - } } ], "options": [ @@ -557,13 +173,11 @@ } ], "variables": { - "BuildConfiguration": { - "value": "Release", - "allowOverride": true + "GITHUB_PASSWORD": { + "value": "PassedViaPipeBuild" }, "COREHOST_TRACE": { - "value": "0", - "allowOverride": true + "value": "0" }, "STORAGE_ACCOUNT": { "value": "dotnetcli" @@ -575,54 +189,27 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "true" - }, - "NUGET_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" - }, - "NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, - "GITHUB_PASSWORD": { - "value": "PassedViaPipeBuild" - }, - "BUILD_FULL_PLATFORM_MANIFEST": { - "value": "true" - }, - "PUBLISH_RID_AGNOSTIC_PACKAGES": { - "value": "true" - }, - "CertificateId": { - "value": "400" - }, - "PB_DistroRid": { - "value": "win-x64" - }, - "RID": { - "value": "win-x64", + "value": "true", "allowOverride": true }, - "MsbuildSigningArguments": { - "value": "/p:CertificateId=$(CertificateId) /v:detailed" + "BuildConfiguration": { + "value": "Release" }, - "TeamName": { - "value": "DotNetCore" - }, - "system.debug": { - "value": "false" + "PB_CommonMSBuildArgs": { + "value": "/p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) $(PB_AdditionalBuildArguments)" }, "PB_PortableBuild": { "value": "false", "allowOverride": true }, - "NUGET_SYMBOLS_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + "PB_CleanAgent": { + "value": "true" }, "PB_SourcesDirectory": { "value": "$(Build.SourcesDirectory)\\core-setup" }, - "PB_VsoRepoUrl": { - "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" + "PB_Branch": { + "value": "master" }, "PB_AzureAccountName": { "value": "sourcebuild" @@ -631,6 +218,9 @@ "value": null, "isSecret": true }, + "PB_VsoRepoUrl": { + "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" + }, "PB_VsoAccountName": { "value": "dn-bot" }, @@ -638,18 +228,9 @@ "value": null, "isSecret": true }, - "PB_Branch": { - "value": "buildtools" - }, "SourceVersion": { "value": "HEAD" }, - "PB_SignType": { - "value": "real" - }, - "PB_CommonMSBuildArgs": { - "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild)" - }, "OfficialBuildId": { "value": "$(Build.BuildNumber)" }, @@ -657,18 +238,15 @@ "value": "x64", "allowOverride": true }, - "PB_CleanAgent": { - "value": "true" - }, - "PB_PublishRidAgnosticPackages": { - "value": "false" - }, - "PB_BuildFullPlatformManifest": { - "value": "false" + "PB_AdditionalBuildArguments": { + "value": "", + "allowOverride": true } }, "demands": [ - "Agent.OS -equals Windows_NT" + "Agent.OS -equals Windows_NT", + "DotNetFramework", + "Cmd" ], "retentionRules": [ { @@ -680,15 +258,15 @@ "FilePath", "SymbolStore" ], - "daysToKeep": 2, + "daysToKeep": 7, "minimumToKeep": 1, "deleteBuildRecord": true, "deleteTestResults": true } ], - "buildNumberFormat": "$(Date:yyyyMMdd)$(Rev:-rr)", + "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)", "jobAuthorizationScope": "projectCollection", - "jobTimeoutInMinutes": 120, + "jobTimeoutInMinutes": 90, "jobCancelTimeoutInMinutes": 5, "badgeEnabled": true, "repository": { @@ -698,7 +276,7 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "3" + "cleanOptions": "0" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -708,6 +286,7 @@ "clean": "false", "checkoutSubmodules": false }, + "processParameters": {}, "quality": "definition", "queue": { "id": 36, @@ -717,7 +296,7 @@ "name": "DotNet-Build" } }, - "id": 6102, + "id": 4371, "name": "Core-Setup-Windows-BT", "path": "\\", "type": "build", diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index f7b257cb..e53cc763 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -123,11 +123,10 @@ } }, { - "Name": "Core-Setup-Windows-Arm-BT", + "Name": "Core-Setup-Windows-BT", "Parameters": { "PB_AdditionalBuildArguments": "/p:SkipTests=true", "PB_TargetArchitecture": "arm", - "PB_DistroRid": "win-arm", "PB_PortableBuild": "true" }, "ReportingParameters": { @@ -138,11 +137,10 @@ } }, { - "Name": "Core-Setup-Windows-Arm-BT", + "Name": "Core-Setup-Windows-BT", "Parameters": { "PB_AdditionalBuildArguments": "/p:SkipTests=true /p:NativeToolSetDir=C:\\tools\\clr", "PB_TargetArchitecture": "arm64", - "PB_DistroRid": "win-arm64", "PB_PortableBuild": "true" }, "ReportingParameters": { @@ -153,7 +151,7 @@ } }, { - "Name": "Core-Setup-Windows-BT", + "Name": "Core-Setup-Signing-Windows-BT", "Parameters": { "PB_DistroRid": "win7-x64", "PB_TargetArchitecture": "x64", @@ -169,7 +167,7 @@ } }, { - "Name": "Core-Setup-Windows-BT", + "Name": "Core-Setup-Signing-Windows-BT", "Parameters": { "PB_DistroRid": "win7-x86", "PB_TargetArchitecture": "x86", From eba3d0819a11df5d9625fa690edc498ea7f7cedd Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Fri, 12 May 2017 14:14:00 -0700 Subject: [PATCH 402/625] Update CoreClr, CoreFx, Standard, WCF to preview2-25312-01, preview2-25312-04, preview2-25312-01, preview2-25312-01, respectively --- dependencies.props | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/dependencies.props b/dependencies.props index 76f7c675..3871f989 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - f37bb2d81830cefb80a785a2b2ce1bd664ab8a68 - a44d1158c8f2cf53d54cf35567f2ec59057b3093 - 1117fab956560c88ebb3fbaa339b6fa04c29a364 - 284ab8a84d40ad2d42e6f3680ce159aaea82d77d + 15ebc29a1396139b64602bce8f38088a6aba3c83 + 15ebc29a1396139b64602bce8f38088a6aba3c83 + 15ebc29a1396139b64602bce8f38088a6aba3c83 + 15ebc29a1396139b64602bce8f38088a6aba3c83 - 4.4.0-preview2-25311-04 - 2.0.0-preview2-25311-04 - 2.0.0-preview2-25309-01 + 4.4.0-preview2-25312-04 + 2.0.0-preview2-25312-04 + 2.0.0-preview2-25312-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.0.0-preview2-25311-01 + 2.0.0-preview2-25312-01 1.4.1 - 4.4.0-preview2-25311-02 + 4.4.0-preview2-25312-01 From bf90d5fba3fdd244adcd7100473cd00b90d74832 Mon Sep 17 00:00:00 2001 From: Jose Perez Rodriguez Date: Fri, 12 May 2017 15:49:32 -0700 Subject: [PATCH 403/625] Fix Microsoft.NETCore.App package version file location for RID specific packages (#2379) --- .../src/Microsoft.NETCore.App.depproj | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index 96fcb03c..69f4d7ee 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -129,12 +129,6 @@ Overwrite="true"/> - - - - - - @@ -175,6 +169,13 @@ <_sourcePath Include="@(_sourcePathCandidate)" Condition="Exists('%(Identity)')" /> + + + + + + + From ef33a1535be691cd3e348a01f819deebfd761a1d Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Sun, 14 May 2017 11:00:33 -0700 Subject: [PATCH 404/625] Update CoreClr, CoreFx, WCF to preview2-25314-02, preview2-25314-02, preview2-25314-01, respectively (#2386) --- dependencies.props | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/dependencies.props b/dependencies.props index 3871f989..28eb5311 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 15ebc29a1396139b64602bce8f38088a6aba3c83 - 15ebc29a1396139b64602bce8f38088a6aba3c83 + 6bd32707173e82d166560b6537e21bf693f6a263 + 6bd32707173e82d166560b6537e21bf693f6a263 15ebc29a1396139b64602bce8f38088a6aba3c83 - 15ebc29a1396139b64602bce8f38088a6aba3c83 + 6bd32707173e82d166560b6537e21bf693f6a263 - 4.4.0-preview2-25312-04 - 2.0.0-preview2-25312-04 - 2.0.0-preview2-25312-01 + 4.4.0-preview2-25314-02 + 2.0.0-preview2-25314-02 + 2.0.0-preview2-25314-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview2-25312-01 1.4.1 - 4.4.0-preview2-25312-01 + 4.4.0-preview2-25314-01 From 05c075e10f98c24a5f9ee4270ba79f8107f60b0c Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Sun, 14 May 2017 20:35:15 -0700 Subject: [PATCH 405/625] Update CoreClr, CoreFx to preview2-25315-01, preview2-25315-01, respectively (#2387) --- dependencies.props | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/dependencies.props b/dependencies.props index 28eb5311..8af5cfba 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,16 +9,16 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 6bd32707173e82d166560b6537e21bf693f6a263 - 6bd32707173e82d166560b6537e21bf693f6a263 + acad89974aca0c156fad490c616f51b0c632dd6e + acad89974aca0c156fad490c616f51b0c632dd6e 15ebc29a1396139b64602bce8f38088a6aba3c83 6bd32707173e82d166560b6537e21bf693f6a263 - 4.4.0-preview2-25314-02 - 2.0.0-preview2-25314-02 - 2.0.0-preview2-25314-02 + 4.4.0-preview2-25315-01 + 2.0.0-preview2-25315-01 + 2.0.0-preview2-25315-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview2-25312-01 1.4.1 From bf3a8b23e276892e6c1f1c7afaeaba6d80666e33 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 15 May 2017 10:07:59 -0500 Subject: [PATCH 406/625] Fix build by copying init-tools.msbuild to sandbox --- buildpipeline/Core-Setup-Linux-BT.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 6cefb929..2d104f3a 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -67,7 +67,7 @@ }, "inputs": { "SourceFolder": "$(PB_SourcesDirectory)", - "Contents": "init-tools.sh\nBuildToolsVersion.txt\nDotnetCLIVersion.txt", + "Contents": "init-tools.sh\nBuildToolsVersion.txt\nDotnetCLIVersion.txt\ninit-tools.msbuild", "TargetFolder": "$(PB_DockerHost_Sandbox)", "CleanTargetFolder": "false", "OverWrite": "false", From 8d2f9c5055950e21baa6ad81b4fada40217511dd Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Mon, 15 May 2017 08:23:16 -0700 Subject: [PATCH 407/625] Update CoreClr, Standard, WCF to preview2-25315-02, preview2-25315-01, preview2-25315-01, respectively (#2389) --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index 8af5cfba..c57147e9 100644 --- a/dependencies.props +++ b/dependencies.props @@ -10,19 +10,19 @@ --> acad89974aca0c156fad490c616f51b0c632dd6e - acad89974aca0c156fad490c616f51b0c632dd6e - 15ebc29a1396139b64602bce8f38088a6aba3c83 - 6bd32707173e82d166560b6537e21bf693f6a263 + 973abe81304e8047712106dd998bde1869c6a21a + 973abe81304e8047712106dd998bde1869c6a21a + 973abe81304e8047712106dd998bde1869c6a21a 4.4.0-preview2-25315-01 2.0.0-preview2-25315-01 - 2.0.0-preview2-25315-01 + 2.0.0-preview2-25315-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.0.0-preview2-25312-01 + 2.0.0-preview2-25315-01 1.4.1 - 4.4.0-preview2-25314-01 + 4.4.0-preview2-25315-01 From b6aa0e6bbe5476b6eef5e4945ad0095ec6fa8036 Mon Sep 17 00:00:00 2001 From: Bjarke Istrup Pedersen Date: Mon, 15 May 2017 17:25:41 +0000 Subject: [PATCH 408/625] Better handling of VersionId being missing. --- .../Native/PlatformApis.cs | 10 ++-------- .../RuntimeEnvironment.cs | 5 +++++ 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs b/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs index af8772ad..ab16ce36 100644 --- a/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs +++ b/src/managed/Microsoft.DotNet.PlatformAbstractions/Native/PlatformApis.cs @@ -128,14 +128,8 @@ namespace Microsoft.DotNet.PlatformAbstractions.Native // are backwards compatible. private static DistroInfo NormalizeDistroInfo(DistroInfo distroInfo) { - if (string.IsNullOrEmpty(distroInfo.VersionId)) - { - // Some distribution does not have VERSION_ID defined. - // Since we need it, we workaround this by giving it the value "unavailable". - distroInfo.VersionId = "unavailable"; - } - - int minorVersionNumberSeparatorIndex = distroInfo.VersionId.IndexOf('.'); + // Handle if VersionId is null by just setting the index to -1. + int minorVersionNumberSeparatorIndex = distroInfo.VersionId?.IndexOf('.') ?? -1; if (distroInfo.Id == "rhel" && minorVersionNumberSeparatorIndex != -1) { diff --git a/src/managed/Microsoft.DotNet.PlatformAbstractions/RuntimeEnvironment.cs b/src/managed/Microsoft.DotNet.PlatformAbstractions/RuntimeEnvironment.cs index 7bc731a5..ee68ffdc 100644 --- a/src/managed/Microsoft.DotNet.PlatformAbstractions/RuntimeEnvironment.cs +++ b/src/managed/Microsoft.DotNet.PlatformAbstractions/RuntimeEnvironment.cs @@ -52,6 +52,11 @@ namespace Microsoft.DotNet.PlatformAbstractions case Platform.Windows: return GetWindowsProductVersion(); case Platform.Linux: + if (string.IsNullOrEmpty(OperatingSystemVersion)) + { + return string.Empty; + } + return $".{OperatingSystemVersion}"; case Platform.Darwin: return $".{OperatingSystemVersion}"; From c6cbe6de7b8354c3e7d0b96679b21af99caf1546 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Mon, 15 May 2017 11:10:25 -0700 Subject: [PATCH 409/625] Fix deb package naming --- src/pkg/packaging/deb/package.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pkg/packaging/deb/package.props b/src/pkg/packaging/deb/package.props index e52aec35..8c05b94e 100644 --- a/src/pkg/packaging/deb/package.props +++ b/src/pkg/packaging/deb/package.props @@ -10,10 +10,10 @@ dotnet-host $(SharedHostDebPkgName.ToLower()) - dotnet-hostfxr-$(HostResolverVersion) + dotnet-hostfxr $(HostFxrDebPkgName.ToLower()) - dotnet-sharedframework-$(SharedFrameworkName)-$(SharedFrameworkNugetVersion) + dotnet-sharedframework $(SharedFxDebPkgName.ToLower()) \ No newline at end of file From 940b7e738dfc8df14cc8f0fae5753656be54002c Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Wed, 10 May 2017 16:57:37 -0700 Subject: [PATCH 410/625] Add checksum generation --- buildpipeline/Core-Setup-Linux-BT.json | 9 ++- buildpipeline/Core-Setup-OSX-BT.json | 9 ++- .../Core-Setup-Signing-Windows-BT.json | 9 ++- buildpipeline/Core-Setup-Windows-BT.json | 9 ++- publish/dir.props | 33 +++++++-- publish/dir.targets | 33 ++++++--- publish/publish.proj | 22 +++++- .../GenerateChecksums.cs | 68 +++++++++++++++++++ 8 files changed, 172 insertions(+), 20 deletions(-) create mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/GenerateChecksums.cs diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 6cefb929..ddb34bf3 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -177,7 +177,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --privileged --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)", + "arguments": "run --privileged --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -313,6 +313,13 @@ "value": null, "isSecret": true }, + "PB_ChecksumAzureAccountName": { + "value": "dotnetclichecksums" + }, + "PB_ChecksumAzureAccessToken": { + "value": null, + "isSecret": true + }, "PUBLISH_TO_AZURE_BLOB": { "value": "true", "allowOverride": true diff --git a/buildpipeline/Core-Setup-OSX-BT.json b/buildpipeline/Core-Setup-OSX-BT.json index a7be705a..c7bdbcf9 100644 --- a/buildpipeline/Core-Setup-OSX-BT.json +++ b/buildpipeline/Core-Setup-OSX-BT.json @@ -121,7 +121,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)/Tools/msbuild.sh", - "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=OSX", + "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=OSX", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -223,6 +223,13 @@ "value": null, "isSecret": true }, + "PB_ChecksumAzureAccountName": { + "value": "dotnetclichecksums" + }, + "PB_ChecksumAzureAccessToken": { + "value": null, + "isSecret": true + }, "PB_VsoRepoUrl": { "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" }, diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index e20b5d72..29e63a60 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -441,7 +441,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -622,6 +622,13 @@ "value": null, "isSecret": true }, + "PB_ChecksumAzureAccountName": { + "value": "dotnetclichecksums" + }, + "PB_ChecksumAzureAccessToken": { + "value": null, + "isSecret": true + }, "PB_VsoAccountName": { "value": "dn-bot" }, diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 8c1b8db1..19737bec 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -89,7 +89,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -218,6 +218,13 @@ "value": null, "isSecret": true }, + "PB_ChecksumAzureAccountName": { + "value": "dotnetclichecksums" + }, + "PB_ChecksumAzureAccessToken": { + "value": null, + "isSecret": true + }, "PB_VsoRepoUrl": { "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" }, diff --git a/publish/dir.props b/publish/dir.props index 93a1d7c5..9722309a 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -4,8 +4,13 @@ dotnet + dotnet https://dotnetcli.blob.core.windows.net/ 3600 + $(Channel)/Binaries/$(SharedFrameworkNugetVersion) + $(Channel)/Installers/$(SharedFrameworkNugetVersion) + Runtime/Checksums/$(ProductVersion) + .sha512 @@ -14,13 +19,27 @@ - - - - - - - + + $(BinariesRelativePath) + + + $(BinariesRelativePath) + + + $(BinariesRelativePath) + + + $(BinariesRelativePath) + + + $(BinariesRelativePath) + + + $(InstallersRelativePath) + + + $(InstallersRelativePath) + diff --git a/publish/dir.targets b/publish/dir.targets index 198fbaad..6d311ff7 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -1,33 +1,50 @@ + - - $(Channel)/Binaries/$(SharedFrameworkNugetVersion) - UploadToAzure - %(Project.AdditionalProperties);ItemsToPublish=@(PublishFile);$(OutputVersionBadge);RelativeBlobPath=$(RelativeBlobPath) + %(Project.AdditionalProperties);ItemsToPublish=@(PublishFile);$(OutputVersionBadge);RelativeBlobPath=$(BinariesRelativePath) - - $(Channel)/Installers/$(SharedFrameworkNugetVersion) - UploadToAzure - %(Project.AdditionalProperties);ItemsToPublish=@(InstallerFile);RelativeBlobPath=$(RelativeBlobPath) + %(Project.AdditionalProperties);ItemsToPublish=@(InstallerFile);RelativeBlobPath=$(InstallersRelativePath) + + + + + + UploadChecksumsToAzure + %(Project.AdditionalProperties);ItemsToPublish=@(ChecksumItems);RelativeBlobPath=$(ChecksumsRelativePath) + + + + + + + + + + %(ItemsToChecksum.FullPath)$(ChecksumExtension) + %(ItemsToChecksum.RelativeBlobPath)$(ChecksumExtension) + + + + diff --git a/publish/publish.proj b/publish/publish.proj index a1fa0211..7668658c 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -23,7 +23,7 @@ + DependsOnTargets="GatherPublishToAzureBinaries;GatherPublishToAzureInstallers;GatherPublishToAzureChecksums"> + + + + + + + + + + + $(RelativeBlobPath)/%(Filename)%(Extension) + + + + diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GenerateChecksums.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GenerateChecksums.cs new file mode 100644 index 00000000..4a134ed8 --- /dev/null +++ b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GenerateChecksums.cs @@ -0,0 +1,68 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using System; +using System.IO; +using System.Security.Cryptography; + +namespace Microsoft.DotNet.Build.Tasks +{ + public class GenerateChecksums : Task + { + /// + /// An item collection of files for which to generate checksums. Each item must have metadata + /// 'DestinationPath' that specifies the path of the checksum file to create. + /// + [Required] + public ITaskItem[] Items { get; set; } + + public override bool Execute() + { + foreach (ITaskItem item in Items) + { + try + { + string destinationPath = item.GetMetadata("DestinationPath"); + if (string.IsNullOrEmpty(destinationPath)) + { + throw new Exception($"Metadata 'DestinationPath' is missing for item '{item.ItemSpec}'."); + } + + if (!File.Exists(item.ItemSpec)) + { + throw new Exception($"The file '{item.ItemSpec}' does not exist."); + } + + Log.LogMessage( + MessageImportance.High, + "Generating checksum for '{0}' into '{1}'...", + item.ItemSpec, + destinationPath); + + using (FileStream stream = File.OpenRead(item.ItemSpec)) + { + using(HashAlgorithm hashAlgorithm = SHA512.Create()) + { + byte[] hash = hashAlgorithm.ComputeHash(stream); + string checksum = BitConverter.ToString(hash).Replace("-", string.Empty); + File.WriteAllText(destinationPath, checksum); + } + } + } + catch (Exception e) + { + // We have 2 log calls because we want a nice error message but we also want to capture the + // callstack in the log. + Log.LogError("An exception occurred while trying to generate a checksum for '{0}'.", item.ItemSpec); + Log.LogMessage(MessageImportance.Low, e.ToString()); + return false; + } + } + + return true; + } + } +} From 47f78d59831d66c431676620b8229257bd7051ef Mon Sep 17 00:00:00 2001 From: Tarek Mahmoud Sayed Date: Mon, 15 May 2017 11:20:05 -0700 Subject: [PATCH 411/625] Update License Info --- LICENSE => LICENSE.TXT | 0 ...D-PARTY-NOTICES => THIRD-PARTY-NOTICES.TXT | 0 dir.props | 1 - src/pkg/dir.props | 5 +- src/pkg/projects/ThirdPartyNotices.txt | 31 ----- src/pkg/projects/dir.targets | 2 +- src/pkg/projects/dotnet_library_license.txt | 128 ------------------ 7 files changed, 4 insertions(+), 163 deletions(-) rename LICENSE => LICENSE.TXT (100%) rename THIRD-PARTY-NOTICES => THIRD-PARTY-NOTICES.TXT (100%) delete mode 100644 src/pkg/projects/ThirdPartyNotices.txt delete mode 100644 src/pkg/projects/dotnet_library_license.txt diff --git a/LICENSE b/LICENSE.TXT similarity index 100% rename from LICENSE rename to LICENSE.TXT diff --git a/THIRD-PARTY-NOTICES b/THIRD-PARTY-NOTICES.TXT similarity index 100% rename from THIRD-PARTY-NOTICES rename to THIRD-PARTY-NOTICES.TXT diff --git a/dir.props b/dir.props index 41e6a796..b3c18d14 100644 --- a/dir.props +++ b/dir.props @@ -15,7 +15,6 @@ Preview 2 master master - https://github.com/dotnet/corefx/blob/master/LICENSE diff --git a/src/pkg/dir.props b/src/pkg/dir.props index ee2462b7..9137b13d 100644 --- a/src/pkg/dir.props +++ b/src/pkg/dir.props @@ -14,8 +14,9 @@ $(PackagesOutDir) $(SymbolPackagesOutDir) - $(ProjectDir)src/pkg/projects/dotnet_library_license.txt - $(ProjectDir)src/pkg/projects/ThirdPartyNotices.txt + $(ProjectDir)LICENSE.TXT + $(ProjectDir)THIRD-PARTY-NOTICES.TXT + https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT $(ProjectDir)src/pkg/projects/descriptions.json https://go.microsoft.com/fwlink/?LinkID=799417 diff --git a/src/pkg/projects/ThirdPartyNotices.txt b/src/pkg/projects/ThirdPartyNotices.txt deleted file mode 100644 index 55cfb208..00000000 --- a/src/pkg/projects/ThirdPartyNotices.txt +++ /dev/null @@ -1,31 +0,0 @@ -This Microsoft .NET Library may incorporate components from the projects listed -below. Microsoft licenses these components under the Microsoft .NET Library -software license terms. The original copyright notices and the licenses under -which Microsoft received such components are set forth below for informational -purposes only. Microsoft reserves all rights not expressly granted herein, -whether by implication, estoppel or otherwise. - -1. .NET Core (https://github.com/dotnet/core/) - -.NET Core -Copyright (c) .NET Foundation and Contributors - -The MIT License (MIT) - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. \ No newline at end of file diff --git a/src/pkg/projects/dir.targets b/src/pkg/projects/dir.targets index 768d9b24..4e3a65c4 100644 --- a/src/pkg/projects/dir.targets +++ b/src/pkg/projects/dir.targets @@ -74,7 +74,7 @@ - https://github.com/dotnet/corefx/blob/master/LICENSE + https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT diff --git a/src/pkg/projects/dotnet_library_license.txt b/src/pkg/projects/dotnet_library_license.txt deleted file mode 100644 index 92b6c443..00000000 --- a/src/pkg/projects/dotnet_library_license.txt +++ /dev/null @@ -1,128 +0,0 @@ - -MICROSOFT SOFTWARE LICENSE TERMS - - -MICROSOFT .NET LIBRARY - -These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft - -· updates, - -· supplements, - -· Internet-based services, and - -· support services - -for this software, unless other terms accompany those items. If so, those terms apply. - -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE. - - -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW. - -1. INSTALLATION AND USE RIGHTS. - -a. Installation and Use. You may install and use any number of copies of the software to design, develop and test your programs. - -b. Third Party Programs. The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only. - -2. ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS. - -a. DISTRIBUTABLE CODE. The software is comprised of Distributable Code. “Distributable Code” is code that you are permitted to distribute in programs you develop if you comply with the terms below. - -i. Right to Use and Distribute. - -· You may copy and distribute the object code form of the software. - -· Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs. - -ii. Distribution Requirements. For any Distributable Code you distribute, you must - -· add significant primary functionality to it in your programs; - -· require distributors and external end users to agree to terms that protect it at least as much as this agreement; - -· display your valid copyright notice on your programs; and - -· indemnify, defend, and hold harmless Microsoft from any claims, including attorneys’ fees, related to the distribution or use of your programs. - -iii. Distribution Restrictions. You may not - -· alter any copyright, trademark or patent notice in the Distributable Code; - -· use Microsoft’s trademarks in your programs’ names or in a way that suggests your programs come from or are endorsed by Microsoft; - -· include Distributable Code in malicious, deceptive or unlawful programs; or - -· modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that - -· the code be disclosed or distributed in source code form; or - -· others have the right to modify it. - -3. SCOPE OF LICENSE. The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not - -· work around any technical limitations in the software; - -· reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation; - -· publish the software for others to copy; - -· rent, lease or lend the software; - -· transfer the software or this agreement to any third party; or - -· use the software for commercial software hosting services. - -4. BACKUP COPY. You may make one backup copy of the software. You may use it only to reinstall the software. - -5. DOCUMENTATION. Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes. - -6. EXPORT RESTRICTIONS. The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see www.microsoft.com/exporting. - -7. SUPPORT SERVICES. Because this software is “as is,” we may not provide support services for it. - -8. ENTIRE AGREEMENT. This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services. - -9. APPLICABLE LAW. - -a. United States. If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort. - -b. Outside the United States. If you acquired the software in any other country, the laws of that country apply. - -10. LEGAL EFFECT. This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so. - -11. DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED “AS-IS.” YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - -FOR AUSTRALIA – YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS. - -12. LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES. - -This limitation applies to - -· anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and - -· claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law. - -It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages. - -Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French. - -Remarque : Ce logiciel étant distribué au Québec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en français. - -EXONÉRATION DE GARANTIE. Le logiciel visé par une licence est offert « tel quel ». Toute utilisation de ce logiciel est à votre seule risque et péril. Microsoft n’accorde aucune autre garantie expresse. Vous pouvez bénéficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualité marchande, d’adéquation à un usage particulier et d’absence de contrefaçon sont exclues. - -LIMITATION DES DOMMAGES-INTÉRÊTS ET EXCLUSION DE RESPONSABILITÉ POUR LES DOMMAGES. Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement à hauteur de 5,00 $ US. Vous ne pouvez prétendre à aucune indemnisation pour les autres dommages, y compris les dommages spéciaux, indirects ou accessoires et pertes de bénéfices. - -Cette limitation concerne : - -· tout ce qui est relié au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et - -· les réclamations au titre de violation de contrat ou de garantie, ou au titre de responsabilité stricte, de négligence ou d’une autre faute dans la limite autorisée par la loi en vigueur. - -Elle s’applique également, même si Microsoft connaissait ou devrait connaître l’éventualité d’un tel dommage. Si votre pays n’autorise pas l’exclusion ou la limitation de responsabilité pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l’exclusion ci-dessus ne s’appliquera pas à votre égard. - -EFFET JURIDIQUE. Le présent contrat décrit certains droits juridiques. Vous pourriez avoir d’autres droits prévus par les lois de votre pays. Le présent contrat ne modifie pas les droits que vous confèrent les lois de votre pays si celles-ci ne le permettent pas. - - From 371c2cd510578b415613ba9f2defb0734495cb2b Mon Sep 17 00:00:00 2001 From: Tarek Mahmoud Sayed Date: Mon, 15 May 2017 12:48:50 -0700 Subject: [PATCH 412/625] Remove un-needed target --- src/pkg/projects/dir.targets | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/pkg/projects/dir.targets b/src/pkg/projects/dir.targets index 4e3a65c4..6055b03f 100644 --- a/src/pkg/projects/dir.targets +++ b/src/pkg/projects/dir.targets @@ -71,11 +71,4 @@ - - - - https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT - - - \ No newline at end of file From c2ae7c4c57311e30b9041791ef23e1bf408d95e8 Mon Sep 17 00:00:00 2001 From: John Beisner Date: Mon, 15 May 2017 13:15:32 -0700 Subject: [PATCH 413/625] If user specifies a CLI version in the global.json, honor it - error out if not found. And search the multilevel sdk lookup to find that specified version. Addresses: https://github.com/dotnet/core-setup/issues/2334 https://github.com/dotnet/core-setup/issues/2336 --- run.cmd | 2 +- src/corehost/cli/fxr/fx_muxer.cpp | 14 ++++++- .../GivenThatICareAboutMultilevelSDKLookup.cs | 40 ++++++++++++++----- 3 files changed, 43 insertions(+), 13 deletions(-) diff --git a/run.cmd b/run.cmd index 03abcc80..2f52e07d 100644 --- a/run.cmd +++ b/run.cmd @@ -7,7 +7,7 @@ if not defined VisualStudioVersion ( goto :Run ) echo Error: Visual Studio 2015 required. - echo Please see https://github.com/dotnet/corefx/blob/master/Documentation/building/windows-instructions.md for build instructions. + echo Please see https://github.com/dotnet/core-setup/blob/master/Documentation/building/windows-instructions.md for build instructions. exit /b 1 ) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index fc850328..e1920f33 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -660,20 +660,26 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal } pal::string_t retval; + bool cli_version_specified = false; + bool cli_version_found = false; + pal::string_t cli_version; + for (pal::string_t dir : hive_dir) { trace::verbose(_X("Searching SDK directory in [%s]"), dir.c_str()); if (!global.empty()) { - pal::string_t cli_version = resolve_cli_version(global); + cli_version = resolve_cli_version(global); if (!cli_version.empty()) { + cli_version_specified = true; pal::string_t sdk_path = dir; append_path(&sdk_path, _X("sdk")); append_path(&sdk_path, cli_version.c_str()); if (pal::directory_exists(sdk_path)) { + cli_version_found = true; trace::verbose(_X("CLI directory [%s] from global.json exists"), sdk_path.c_str()); retval = sdk_path; } @@ -683,7 +689,7 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal } } } - if (retval.empty()) + if (retval.empty() && !cli_version_specified) { pal::string_t sdk_path = dir; append_path(&sdk_path, _X("sdk")); @@ -698,6 +704,10 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal } trace::verbose(_X("It was not possible to find any SDK version")); + if (cli_version_specified && !cli_version_found) + { + trace::error(_X("The specified SDK version [%s] from global.json [%s] doesn't exist; install specified SDK version [%s]"), cli_version.c_str(), global.c_str(), cli_version.c_str()); + } return false; } diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index 3c1af85e..0e91f24c 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -169,7 +169,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup } [Fact] - public void SdkLookup_Must_Look_For_Available_Versions_Before_Looking_Into_Another_Folder() + public void SdkLookup_Global_Json_Versioned_Behaviors() { var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture .Copy(); @@ -187,7 +187,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // CWD: empty // User: 9999.0.0, 9999.0.0-dummy // Exe: 9999.0.0-dummy - // Expected: 9999.0.0 from user dir + // Expected: no compatible version and specific error message dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) @@ -196,19 +196,18 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .CaptureStdErr() .Execute() .Should() - .Pass() + .Fail() .And - .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.0", _dotnetSdkDllMessageTerminator)); + .HaveStdErrContaining("global.json] doesn't exist; install specified SDK version [9999.0.0-global-dummy]"); - // Add some dummy versions - AddAvailableSdkVersions(_cwdSdkBaseDir, "9999.0.0"); + // Add specified CLI version AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0-global-dummy"); // Specified CLI version: 9999.0.0-global-dummy - // CWD: 9999.0.0 --> should not be picked + // CWD: empty // User: 9999.0.0, 9999.0.0-dummy // Exe: 9999.0.0-dummy, 9999.0.0-global-dummy - // Expected: 9999.0.0 from user dir + // Expected: 9999.0.0-global-dummy from exe dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) @@ -219,10 +218,31 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.0", _dotnetSdkDllMessageTerminator)); + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.0-global-dummy", _dotnetSdkDllMessageTerminator)); + + // Add more specified CLI versions + AddAvailableSdkVersions(_cwdSdkBaseDir, "9999.0.0-global-dummy"); + AddAvailableSdkVersions(_userSdkBaseDir, "9999.0.0-global-dummy"); + + // Specified CLI version: 9999.0.0-global-dummy + // CWD: 9999.0.0-global-dummy --> should not be picked + // User: 9999.0.0, 9999.0.0-dummy; 9999.0.0-global-dummy + // Exe: 9999.0.0-dummy, 9999.0.0-global-dummy + // Expected: 9999.0.0-global-dummy from user dir + dotnet.Exec("help") + .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) + .Environment(s_DefaultEnvironment) + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Pass() + .And + .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.0-global-dummy", _dotnetSdkDllMessageTerminator)); // Remove dummy folders from user dir - DeleteAvailableSdkVersions(_userSdkBaseDir, "9999.0.0", "9999.0.0-dummy"); + DeleteAvailableSdkVersions(_userSdkBaseDir, "9999.0.0", "9999.0.0-dummy", "9999.0.0-global-dummy"); } [Fact] From 50bccd08f7a6a2d52fd8bcd60fc815e7c8e8122b Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 15 May 2017 16:28:00 -0500 Subject: [PATCH 414/625] Add global NuGet.config that turns off the user and machine configs --- NuGet.config | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 NuGet.config diff --git a/NuGet.config b/NuGet.config new file mode 100644 index 00000000..19fd5525 --- /dev/null +++ b/NuGet.config @@ -0,0 +1,11 @@ + + + + + + + + + + From 624cdb27b8107b5414c5a8c8a99d8fdf5489fd59 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Mon, 15 May 2017 15:25:32 -0700 Subject: [PATCH 415/625] fix --- publish/dir.props | 2 +- publish/dir.targets | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/publish/dir.props b/publish/dir.props index 9722309a..593d5172 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -9,7 +9,7 @@ 3600 $(Channel)/Binaries/$(SharedFrameworkNugetVersion) $(Channel)/Installers/$(SharedFrameworkNugetVersion) - Runtime/Checksums/$(ProductVersion) + Runtime/$(ProductVersion) .sha512 diff --git a/publish/dir.targets b/publish/dir.targets index 6d311ff7..0977af82 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -40,7 +40,6 @@ %(ItemsToChecksum.FullPath)$(ChecksumExtension) - %(ItemsToChecksum.RelativeBlobPath)$(ChecksumExtension) From 0a540a4c44d8f9f4c270d636f4cff2a4d738abd4 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Mon, 15 May 2017 17:39:55 -0500 Subject: [PATCH 416/625] Generate crossgen symbols for the shared framework. --- src/dir.props | 7 ++- src/pkg/packaging/dir.proj | 6 --- .../src/Microsoft.NETCore.App.depproj | 52 ++++++++++++++++++- src/sharedFramework/sharedFramework.proj | 2 + 4 files changed, 59 insertions(+), 8 deletions(-) diff --git a/src/dir.props b/src/dir.props index c7a9edd5..d3a7863d 100644 --- a/src/dir.props +++ b/src/dir.props @@ -27,5 +27,10 @@ rhel.7-x64 rhel.7-x64 - + + + .ni.pdb + + .map + \ No newline at end of file diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 1e5c30c3..5175f8fb 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -117,12 +117,6 @@ - - - - - - diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index 69f4d7ee..6a414c08 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -18,6 +18,7 @@ $(IntermediateOutputPath)$(NuGetRuntimeIdentifier) $(IntermediateOutputPath) /p:HasRuntimePackages=false /p:IntermediateOutputPath=$(IntermediateOutputPath) + $(PackageSymbolsBinDir)/$(MSBuildProjectName) @@ -208,7 +209,13 @@ <_filesToCrossGen Include="@(FilesToPackage)" Condition="'%(FilesToPackage.IsNative)' != 'true' AND '%(FileName)' != 'System.Private.CoreLib' AND '%(FileName)' != 'mscorlib' AND '%(Extension)' == '.dll'"> + $(CrossGenOutputPath)/%(TargetPath)/ $(CrossGenOutputPath)/%(TargetPath)/%(FileName)%(Extension) + + + $(CrossGenSymbolsOutputPath)/%(TargetPath)/%(FileName)$(CrossGenSymbolExtension) @@ -235,6 +242,9 @@ + + @@ -256,7 +266,47 @@ - + + + <_crossGenSymbolsResponseFile>$(_crossGenIntermediatePath)/%(_filesToCrossGen.FileName).symbols.rsp + <_crossGenSymbolsOptionName Condition="'$(OS)' == 'Windows_NT'">CreatePDB + <_crossGenSymbolsOptionName Condition="'$(_crossGenSymbolsOptionName)' == ''">CreatePerfMap + <_crossGenSymbolsOutputDirectory>$([System.IO.Path]::GetDirectoryName('%(_filesToCrossGen.CrossGenSymbolPath)')) + + + + <_crossGenSymbolsArgs Include="-readytorun" /> + <_crossGenSymbolsArgs Include="-platform_assemblies_paths %(_filesToCrossGen.CrossGenedDirectory)$(_pathSeparatorEscaped)$(_coreLibDirectory)" /> + <_crossGenSymbolsArgs Include="-$(_crossGenSymbolsOptionName)" /> + <_crossGenSymbolsArgs Include="$(_crossGenSymbolsOutputDirectory)" /> + <_crossGenSymbolsArgs Include="%(_filesToCrossGen.CrossGenedPath)" /> + + + + + + + + + + + + + true + runtimes/$(NuGetRuntimeIdentifier)/lib/$(PackageTargetFramework) + + + + + diff --git a/src/sharedFramework/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj index 6ceba200..d287053a 100644 --- a/src/sharedFramework/sharedFramework.proj +++ b/src/sharedFramework/sharedFramework.proj @@ -70,6 +70,8 @@ + From f0d5de0341de611de9b0c4e0b02df42aea4b583f Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Mon, 15 May 2017 18:39:43 -0700 Subject: [PATCH 417/625] Fix issues with publish/dir.props (#2399) --- publish/dir.props | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/publish/dir.props b/publish/dir.props index 593d5172..46cd1454 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -10,7 +10,7 @@ $(Channel)/Binaries/$(SharedFrameworkNugetVersion) $(Channel)/Installers/$(SharedFrameworkNugetVersion) Runtime/$(ProductVersion) - .sha512 + .sha512 @@ -25,9 +25,6 @@ $(BinariesRelativePath) - - $(BinariesRelativePath) - $(BinariesRelativePath) From 8018778fdf879209c6e3c8539105af012760b4b2 Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Mon, 15 May 2017 18:41:08 -0700 Subject: [PATCH 418/625] =?UTF-8?q?Port=20of=20"Build=20Native=20Debian=20?= =?UTF-8?q?installers=20consuming=20portable=20Linux=20x64=20=E2=80=A6=20(?= =?UTF-8?q?#2374)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Port of "Build Native Debian installers consuming portable Linux x64 assemblies" * Updated per feedback. * updated per feedback --- buildpipeline/Core-Setup-Linux-Arm-BT.json | 472 +++++++++++++++++++++ buildpipeline/Core-Setup-Linux-BT.json | 467 ++++++++++++++++++++ buildpipeline/pipeline.json | 64 +-- src/pkg/packaging/dir.proj | 8 +- src/pkg/packaging/dir.props | 3 + 5 files changed, 948 insertions(+), 66 deletions(-) create mode 100644 buildpipeline/Core-Setup-Linux-Arm-BT.json diff --git a/buildpipeline/Core-Setup-Linux-Arm-BT.json b/buildpipeline/Core-Setup-Linux-Arm-BT.json new file mode 100644 index 00000000..677afc0c --- /dev/null +++ b/buildpipeline/Core-Setup-Linux-Arm-BT.json @@ -0,0 +1,472 @@ +{ + "build": [ + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup previous build", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "sudo", + "arguments": "rm -dfr $(PB_SourcesDirectory)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Clone repo", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "git", + "arguments": "clone $(PB_VsoRepoUrl) $(PB_SourcesDirectory)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "git checkout", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "git", + "arguments": "checkout $(SourceVersion)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Create host machine tools sandbox", + "timeoutInMinutes": 0, + "task": { + "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "SourceFolder": "$(PB_SourcesDirectory)", + "Contents": "init-tools.sh\nBuildToolsVersion.txt\nDotnetCLIVersion.txt\ninit-tools.msbuild", + "TargetFolder": "$(PB_DockerHost_Sandbox)", + "CleanTargetFolder": "false", + "OverWrite": "false", + "flattenFolders": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize tools in sandbox for host machine", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_DockerHost_Sandbox)/init-tools.sh", + "arguments": "", + "workingFolder": "$(PB_DockerHost_Sandbox)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize docker", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", + "arguments": "$(PB_DockerImageName)", + "workingFolder": "$(PB_DockerHost_Sandbox)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Init tools", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/init-tools.sh", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Generate version assets", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(PB_CrossBuildArgs)$(DockerCommonRunArgs) $(PB_GitDirectory)/build.sh -OfficialBuildId=$(OfficialBuildId) $(PB_BuildArguments)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Publish", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --privileged --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup Docker", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "perl", + "arguments": "$(PB_DockerHost_ToolsDirectory)/scripts/docker/cleanup-docker.sh", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Copy Publish Artifact: Build Logs", + "timeoutInMinutes": 0, + "task": { + "id": "1d341bb0-2106-458c-8422-d00bcea6512a", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "CopyRoot": "", + "Contents": "**/*.log", + "ArtifactName": "Build Logs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup VSTS Agent", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_DockerHost_ToolsDirectory)/msbuild.sh", + "arguments": "$(PB_DockerHost_ToolsDirectory)/scripts/vstsagent/cleanupagent.proj /p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", + "workingFolder": "$(DockerHost_ToolsDirectory)/scripts/vstsagent/", + "failOnStandardError": "false" + } + } + ], + "options": [ + { + "enabled": false, + "definition": { + "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" + }, + "inputs": { + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "7c555368-ca64-4199-add6-9ebaf0b0137d" + }, + "inputs": { + "multipliers": "[]", + "parallel": "false", + "continueOnError": "true", + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "a9db38f9-9fdc-478c-b0f9-464221e58316" + }, + "inputs": { + "workItemType": "4777", + "assignToRequestor": "true", + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "57578776-4c22-4526-aeb0-86b6da17ee9c" + }, + "inputs": { + "additionalFields": "{}" + } + } + ], + "variables": { + "BuildConfiguration": { + "value": "Release", + "allowOverride": true + }, + "PB_BuildArguments": { + "value": "-ConfigurationGroup=$(BuildConfiguration) $(PB_AdditionalBuildArguments)", + "allowOverride": true + }, + "CONNECTION_STRING": { + "value": "PassedViaPipeBuild" + }, + "DEB_REPO_PASSWORD": { + "value": null, + "isSecret": true + }, + "PB_DebianId_ubuntu1404-x64": { + "value": null, + "isSecret": true + }, + "PB_DebianId_debian8-x64": { + "value": null, + "isSecret": true + }, + "PB_DebianId_ubuntu1604-x64": { + "value": null, + "isSecret": true + }, + "PB_DebianId_ubuntu1610-x64": { + "value": null, + "isSecret": true + }, + "PUBLISH_TO_AZURE_BLOB": { + "value": "true", + "allowOverride": true + }, + "DOTNET_BUILD_CONTAINER_TAG": { + "value": "core-setup-$(PB_DockerOS)-$(Build.BuildId)" + }, + "PB_DockerOS": { + "value": "debian8", + "allowOverride": true + }, + "PB_CleanAgent": { + "value": "true" + }, + "PB_DockerHost_ToolsDirectory": { + "value": "$(PB_DockerHost_Sandbox)/Tools" + }, + "PB_DockerImageName": { + "value": "$(PB_DockerRepository):$(PB_DockerTag)" + }, + "PB_DockerRepository": { + "value": "microsoft/dotnet-buildtools-prereqs" + }, + "PB_DockerContainerName": { + "value": "coresetup-$(Build.BuildId)" + }, + "PB_DockerTag": { + "value": "ubuntu1404_prereqs_v3" + }, + "OfficialBuildId": { + "value": "$(Build.BuildNumber)" + }, + "PB_GitDirectory": { + "value": "/root/coresetup" + }, + "SourceVersion": { + "value": "HEAD" + }, + "ROOTFS_DIR": { + "value": "/crossrootfs/$(PB_TargetArchitecture)" + }, + "PB_CrossBuildArgs": { + "value": "", + "allowOverride": true + }, + "DockerCommonRunArgs": { + "value": "--name $(PB_DockerContainerName) -v \"$(PB_SourcesDirectory):$(PB_GitDirectory)\" -w=\"$(PB_GitDirectory)\" $(PB_DockerImageName)" + }, + "PB_VsoRepoUrl": { + "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" + }, + "PB_VsoAccountName": { + "value": "dn-bot" + }, + "PB_VsoPassword": { + "value": null, + "isSecret": true + }, + "PB_SourcesDirectory": { + "value": "$(Build.SourcesDirectory)/core-setup" + }, + "PB_Branch": { + "value": "master" + }, + "PB_DockerHost_Sandbox": { + "value": "$(Build.StagingDirectory)/HostSandbox" + }, + "PB_AzureAccountName": { + "value": "sourcebuild" + }, + "PB_AzureAccessToken": { + "value": null, + "isSecret": true + }, + "PB_DistroRid": { + "value": "ubuntu.14.04-x64" + }, + "PB_TargetArchitecture": { + "value": "x64" + }, + "PB_AdditionalBuildArguments": { + "value": "" + }, + "PB_PortableBuild": { + "value": "false" + }, + "PB_DebRepoUser": { + "value": "dotnet" + }, + "PB_DebRepoServer": { + "value": "azure-apt-cat.cloudapp.net" + } + }, + "demands": [ + "Agent.OS -equals linux" + ], + "retentionRules": [ + { + "branches": [ + "+refs/heads/*" + ], + "artifacts": [], + "artifactTypesToDelete": [ + "FilePath", + "SymbolStore" + ], + "daysToKeep": 2, + "minimumToKeep": 10, + "deleteBuildRecord": true, + "deleteTestResults": true + } + ], + "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)-$(PB_DockerTag)", + "jobAuthorizationScope": "projectCollection", + "jobTimeoutInMinutes": 90, + "jobCancelTimeoutInMinutes": 5, + "badgeEnabled": true, + "repository": { + "properties": { + "labelSources": "0", + "reportBuildStatus": "true", + "fetchDepth": "0", + "gitLfsSupport": "false", + "skipSyncSource": "true", + "cleanOptions": "3" + }, + "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", + "type": "TfsGit", + "name": "DotNet-Core-Setup-Trusted", + "url": "https://devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted", + "defaultBranch": "refs/heads/buildtools", + "clean": "false", + "checkoutSubmodules": false + }, + "processParameters": {}, + "quality": "definition", + "queue": { + "id": 36, + "name": "DotNet-Build", + "pool": { + "id": 39, + "name": "DotNet-Build" + } + }, + "id": 6057, + "name": "Core-Setup-Linux-Arm-BT", + "path": "\\", + "type": "build", + "project": { + "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", + "name": "DevDiv", + "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", + "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", + "state": "wellFormed", + "revision": 418097676 + } +} diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index a611fa27..3e24f241 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -182,6 +182,407 @@ "failOnStandardError": "false" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Copy built Portable binaries to staging directory", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "SourceFolder": "$(PB_SourcesDirectory)/Bin/obj/linux-x64.$(BuildConfiguration)/sharedFrameworkPublish", + "Contents": "**", + "TargetFolder": "$(Build.StagingDirectory)/sharedFrameworkPublish", + "CleanTargetFolder": "false", + "OverWrite": "false", + "flattenFolders": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize docker - Ubuntu14.04", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", + "arguments": "$(DockerImageName_Ubuntu1404)", + "workingFolder": "$(PB_DockerHost_Sandbox)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Init tools - Ubuntu14.04", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) /bin/bash -c \"HOME=$(PB_GitDirectory); git clean -X -d -f; $(PB_GitDirectory)/init-tools.sh\"", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build traversal build dependencies - Ubuntu 14.04", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Ubuntu1404) $(CommonMSBuildArguments)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Package - Ubuntu 14.04 ", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Ubuntu1404) $(CommonMSBuildArguments)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Publish - Ubuntu 14.04 ", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1404) $(CommonMSBuildArguments) $(CommonMSBuildPublishArgs)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize docker - Ubuntu16.04", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", + "arguments": "$(DockerImageName_Ubuntu1604)", + "workingFolder": "$(PB_DockerHost_Sandbox)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Init tools - Ubuntu16.04 ", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) /bin/bash -c \"HOME=$(PB_GitDirectory); git clean -X -d -f; $(PB_GitDirectory)/init-tools.sh\"", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build traversal build dependencies -Ubuntu 16.04 ", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Ubuntu1604) $(CommonMSBuildArguments)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Package - Ubuntu 16.04", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Ubuntu1604) $(CommonMSBuildArguments)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Publish - Ubuntu 16.04 ", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1604) $(CommonMSBuildArguments) $(CommonMSBuildPublishArgs)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize docker - Ubuntu16.10", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", + "arguments": "$(DockerImageName_Ubuntu1610)", + "workingFolder": "$(PB_DockerHost_Sandbox)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Init tools - Ubuntu16.10", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) /bin/bash -c \"HOME=$(PB_GitDirectory); git clean -X -d -f; $(PB_GitDirectory)/init-tools.sh\"", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build traversal build dependencies - Ubuntu 16.10", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Ubuntu1610) $(CommonMSBuildArguments)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Package - Ubuntu 16.10", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Ubuntu1610) $(CommonMSBuildArguments)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Publish - Ubuntu 16.10", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1610) $(CommonMSBuildArguments) $(CommonMSBuildPublishArgs)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize docker - Debian 8", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", + "arguments": "$(DockerImageName_Debian8)", + "workingFolder": "$(PB_DockerHost_Sandbox)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Init tools - Debian 8 container", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Debian8) /bin/bash -c \"HOME=$(PB_GitDirectory); git clean -X -d -f; $(PB_GitDirectory)/init-tools.sh\"", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build traversal build dependencies - Debian 8", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Debian8) $(CommonMSBuildArguments)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Package - Debian 8", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Debian8) $(CommonMSBuildArguments)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Publish - Debian 8", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Debian8) $(CommonMSBuildArguments) $(CommonMSBuildPublishArgs)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, { "enabled": true, "continueOnError": true, @@ -411,6 +812,72 @@ }, "PB_DebRepoServer": { "value": "azure-apt-cat.cloudapp.net" + }, + "AdditionalMSBuildProperties": { + "value": "/p:UsePrebuiltPortableBinaries=true /p:SharedFrameworkPublishDir=/root/sharedFrameworkPublish/" + }, + "CommonMSBuildArguments": { + "value": "/flp:v=diag /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:OSGroup=Linux" + }, + "CommonMSBuildPublishArgs": { + "value": "/p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) $(PB_DebianKeys)" + }, + "PB_DebianKeys": { + "value": "/p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)" + }, + "DockerTag_Ubuntu1404": { + "value": "ubuntu-14.04-debpkg-e5cf912-20175003025046" + }, + "DistroRid_Ubuntu1404": { + "value": "ubuntu.14.04-x64" + }, + "DockerImageName_Ubuntu1404": { + "value": "$(PB_DockerRepository):$(DockerTag_Ubuntu1404)" + }, + "DockerCommonRunArgs_Ubuntu1404": { + "value": "--name $(PB_DockerContainerName)$(DockerTag_Ubuntu1404) -v \"$(PB_SourcesDirectory):$(PB_GitDirectory)\" -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/root/sharedFrameworkPublish/ -w=\"$(PB_GitDirectory)\" $(DockerImageName_Ubuntu1404)" + }, + "DockerTag_Ubuntu1604": { + "value": "ubuntu-16.04-debpkg-e5cf912-20174703024721" + }, + "DistroRid_Ubuntu1604": { + "value": "ubuntu.16.04-x64" + }, + "DockerImageName_Ubuntu1604": { + "value": "$(PB_DockerRepository):$(DockerTag_Ubuntu1604)" + }, + "DockerCommonRunArgs_Ubuntu1604": { + "value": "--name $(PB_DockerContainerName)$(DockerTag_Ubuntu1604) -v \"$(PB_SourcesDirectory):$(PB_GitDirectory)\" -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/root/sharedFrameworkPublish/ -w=\"$(PB_GitDirectory)\" $(DockerImageName_Ubuntu1604)" + }, + "DockerTag_Ubuntu1610": { + "value": "ubuntu-16.10-debpkg-ec863bb-20170003030028" + }, + "DistroRid_Ubuntu1610": { + "value": "ubuntu.16.10-x64" + }, + "DockerImageName_Ubuntu1610": { + "value": "$(PB_DockerRepository):$(DockerTag_Ubuntu1610)" + }, + "DockerCommonRunArgs_Ubuntu1610": { + "value": "--name $(PB_DockerContainerName)$(DockerTag_Ubuntu1610) -v \"$(PB_SourcesDirectory):$(PB_GitDirectory)\" -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/root/sharedFrameworkPublish/ -w=\"$(PB_GitDirectory)\" $(DockerImageName_Ubuntu1610)" + }, + "DockerTag_Debian8": { + "value": "debian-8.2-debpkg-9f87c3c-20173003023006" + }, + "DistroRid_Debian8": { + "value": "debian.8-x64" + }, + "DockerImageName_Debian8": { + "value": "$(PB_DockerRepository):$(DockerTag_Debian8)" + }, + "DockerCommonRunArgs_Debian8": { + "value": "--name $(PB_DockerContainerName)$(DockerTag_Debian8) -v \"$(PB_SourcesDirectory):$(PB_GitDirectory)\" -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/root/sharedFrameworkPublish/ -w=\"$(PB_GitDirectory)\" $(DockerImageName_Debian8)" + }, + "CLI_NUGET_FEED_URL": { + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" + }, + "CLI_NUGET_SYMBOLS_FEED_URL": { + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" } }, "demands": [ diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index e53cc763..5b40fe39 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -15,68 +15,6 @@ "BuildConfiguration": "Release" }, "Definitions": [ - { - "Name": "Core-Setup-Linux-BT", - "Parameters": { - "PB_DistroRid": "debian.8-x64", - "PB_DockerTag": "debian-8.2-debpkg-9f87c3c-20173003023006", - "REPO_ID": "579f8fb0fedca9aeeb399132", - "REPO_USER": "dotnet", - "REPO_SERVER": "azure-apt-cat.cloudapp.net" - }, - "ReportingParameters": { - "OperatingSystem": "Debian 8.2", - "Type": "build/product/", - "Platform": "x64" - } - }, - { - "Name": "Core-Setup-Linux-BT", - "Parameters": { - "PB_DistroRid": "ubuntu.14.04-x64", - "PB_DockerTag": "ubuntu-14.04-debpkg-e5cf912-20175003025046", - "REPO_ID": "562fbfe0b2d7d0e0a43780c4", - "REPO_USER": "dotnet", - "REPO_SERVER": "azure-apt-cat.cloudapp.net", - "CLI_NUGET_FEED_URL": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package", - "CLI_NUGET_SYMBOLS_FEED_URL": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" - }, - "ReportingParameters": { - "OperatingSystem": "Ubuntu 14.04", - "Type": "build/product/", - "Platform": "x64" - } - }, - { - "Name": "Core-Setup-Linux-BT", - "Parameters": { - "PB_DistroRid": "ubuntu.16.04-x64", - "PB_DockerTag": "ubuntu-16.04-debpkg-e5cf912-20174703024721", - "REPO_ID": "575f40f3797ef7280505232f", - "REPO_USER": "dotnet", - "REPO_SERVER": "azure-apt-cat.cloudapp.net" - }, - "ReportingParameters": { - "OperatingSystem": "Ubuntu 16.04", - "Type": "build/product/", - "Platform": "x64" - } - }, - { - "Name": "Core-Setup-Linux-BT", - "Parameters": { - "PB_DistroRid": "ubuntu.16.10-x64", - "PB_DockerTag": "ubuntu-16.10-debpkg-ec863bb-20170003030028", - "REPO_ID": "575f40f3797ef7280505232f", - "REPO_USER": "dotnet", - "REPO_SERVER": "azure-apt-cat.cloudapp.net" - }, - "ReportingParameters": { - "OperatingSystem": "Ubuntu 16.10", - "Type": "build/product/", - "Platform": "x64" - } - }, { "Name": "Core-Setup-Linux-BT", "Parameters": { @@ -93,7 +31,7 @@ } }, { - "Name": "Core-Setup-Linux-BT", + "Name": "Core-Setup-Linux-Arm-BT", "Parameters": { "PB_DistroRid": "ubuntu.14.04-arm", "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 1e5c30c3..b9bb84ca 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -81,6 +81,8 @@ $(ProjectDir)resources/images/version_badge.svg + + - + - + - + diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index 55abfc8c..1c6f1aab 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -4,6 +4,9 @@ $(ProjectDir)src/pkg/packaging/ + + + false $(IntermediateOutputRootPath)packages/ $(IntermediateOutputRootPath)sharedHost/ From 4e9014930945b85884bf0bbec277c04ab83f157c Mon Sep 17 00:00:00 2001 From: Eric Mellino Date: Mon, 15 May 2017 18:53:52 -0700 Subject: [PATCH 419/625] [WIP] Publish artifacts to new structure in Azure storage. (#2385) * Publish artifacts to new structure in Azure storage. * PR feedback * Pass ProductVersion through to FinalizeBuild task * Update README.md with new blog storage locations. --- README.md | 118 ++++++++++++++--------------- publish/dir.props | 48 ++++-------- publish/dir.targets | 3 +- publish/publish.proj | 8 +- tools-local/tasks/FinalizeBuild.cs | 19 ++--- 5 files changed, 82 insertions(+), 114 deletions(-) diff --git a/README.md b/README.md index fbadcf4c..726837b0 100644 --- a/README.md +++ b/README.md @@ -61,11 +61,11 @@ Daily Builds [build-1.0.X]: https://devdiv.visualstudio.com/DevDiv/_build/index?definitionId=4187&_a=completed -[win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x64_Release_version_badge.svg -[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x64.version -[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x64.latest.exe -[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x64.latest.zip -[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x64.latest.zip +[win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-x64_Release_version_badge.svg +[win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.x64.version +[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.exe +[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.zip +[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-x64.latest.zip [win-x64-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x64_Release_version_badge.svg [win-x64-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x64.version @@ -77,11 +77,11 @@ Daily Builds [win-x64-installer-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-win-x64.latest.exe [win-x64-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x64.latest.zip -[win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-x86_Release_version_badge.svg -[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.x86.version -[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-win-x86.latest.exe -[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-x86.latest.zip -[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-x86.latest.zip +[win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-x86_Release_version_badge.svg +[win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.x86.version +[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.exe +[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.zip +[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-x86.latest.zip [win-x86-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x86_Release_version_badge.svg [win-x86-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x86.version @@ -93,21 +93,21 @@ Daily Builds [win-x86-installer-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-win-x86.latest.exe [win-x86-zip-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-win-x86.latest.zip -[win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-arm_Release_version_badge.svg -[win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm.version -[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm.latest.zip -[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm.latest.zip +[win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-arm_Release_version_badge.svg +[win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.arm.version +[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm.latest.zip +[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-arm.latest.zip -[win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_win-arm64_Release_version_badge.svg -[win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.win.arm64.version -[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-win-arm64.latest.zip -[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-win-arm64.latest.zip +[win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-arm64_Release_version_badge.svg +[win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.arm64.version +[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm64.latest.zip +[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-arm64.latest.zip -[osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_osx-x64_Release_version_badge.svg -[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.osx.x64.version -[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-osx-x64.latest.pkg -[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-osx-x64.latest.tar.gz -[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz +[osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_osx-x64_Release_version_badge.svg +[osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.osx.x64.version +[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.pkg +[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.tar.gz +[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz [osx-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_OSX_x64_Release_version_badge.svg [osx-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.osx.x64.version @@ -120,23 +120,23 @@ Daily Builds [osx-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-osx-x64.latest.tar.gz -[linux-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux-x64_Release_version_badge.svg -[linux-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.x64.version -[linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-x64.latest.tar.gz -[linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz +[linux-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_linux-x64_Release_version_badge.svg +[linux-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.linux.x64.version +[linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-x64.latest.tar.gz +[linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz -[linux-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_linux-arm_Release_version_badge.svg -[linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.linux.arm.version -[linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-linux-arm.latest.tar.gz -[linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-linux-arm.latest.tar.gz +[linux-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_linux-arm_Release_version_badge.svg +[linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.linux.arm.version +[linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-arm.latest.tar.gz +[linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-linux-arm.latest.tar.gz -[ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg -[ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.x64.version -[ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu-x64.latest.deb -[ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu-x64.latest.deb -[ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu-x64.latest.deb -[ubuntu-14.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu-x64.latest.tar.gz -[ubuntu-14.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu-x64.latest.tar.gz +[ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg +[ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.x64.version +[ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu-x64.latest.deb +[ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu-x64.latest.deb +[ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu-x64.latest.deb +[ubuntu-14.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-ubuntu-x64.latest.tar.gz +[ubuntu-14.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-ubuntu-x64.latest.tar.gz [ubuntu-14.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_x64_Release_version_badge.svg [ubuntu-14.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.x64.version @@ -153,13 +153,13 @@ Daily Builds [ubuntu-14.04-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-ubuntu-x64.latest.tar.gz -[ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg -[ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.04.x64.version -[ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu.16.04-x64.latest.tar.gz -[ubuntu-16.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu.16.04-x64.latest.tar.gz +[ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg +[ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.16.04.x64.version +[ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.04-x64.latest.deb +[ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb +[ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb +[ubuntu-16.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-ubuntu.16.04-x64.latest.tar.gz +[ubuntu-16.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-ubuntu.16.04-x64.latest.tar.gz [ubuntu-16.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_04_x64_Release_version_badge.svg [ubuntu-16.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.04.x64.version @@ -176,13 +176,13 @@ Daily Builds [ubuntu-16.04-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-ubuntu.16.04-x64.latest.tar.gz -[ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg -[ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.ubuntu.16.10.x64.version -[ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-ubuntu.16.10-x64.latest.tar.gz -[ubuntu-16.10-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-ubuntu.16.10-x64.latest.tar.gz +[ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg +[ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.16.10.x64.version +[ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.10-x64.latest.deb +[ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb +[ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb +[ubuntu-16.10-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-ubuntu.16.10-x64.latest.tar.gz +[ubuntu-16.10-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-ubuntu.16.10-x64.latest.tar.gz [ubuntu-16.10-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_10_x64_Release_version_badge.svg [ubuntu-16.10-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.10.x64.version @@ -192,13 +192,13 @@ Daily Builds [ubuntu-16.10-targz-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/dotnet-ubuntu.16.10-x64.latest.tar.gz -[debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/sharedfx_debian.8-x64_Release_version_badge.svg -[debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/dnvm/latest.sharedfx.debian.8.x64.version -[debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-host-debian-x64.latest.deb -[debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-hostfxr-debian-x64.latest.deb -[debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Installers/Latest/dotnet-sharedframework-debian-x64.latest.deb -[debian-8.2-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-debian-x64.latest.tar.gz -[debian-8.2-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/master/Binaries/Latest/dotnet-sharedframework-symbols-debian-x64.latest.tar.gz +[debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_debian.8-x64_Release_version_badge.svg +[debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.debian.8.x64.version +[debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-debian-x64.latest.deb +[debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-debian-x64.latest.deb +[debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-debian-x64.latest.deb +[debian-8.2-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-debian-x64.latest.tar.gz +[debian-8.2-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-debian-x64.latest.tar.gz [debian-8.2-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Debian_x64_Release_version_badge.svg [debian-8.2-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.debian.x64.version diff --git a/publish/dir.props b/publish/dir.props index 46cd1454..a54287c2 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -7,8 +7,8 @@ dotnet https://dotnetcli.blob.core.windows.net/ 3600 - $(Channel)/Binaries/$(SharedFrameworkNugetVersion) - $(Channel)/Installers/$(SharedFrameworkNugetVersion) + Runtime/$(SharedFrameworkNugetVersion) + Runtime/$(SharedFrameworkNugetVersion) Runtime/$(ProductVersion) .sha512 @@ -40,38 +40,16 @@ - - ubuntu.x64 - - - ubuntu.16.04.x64 - - - ubuntu.16.10.x64 - - - debian.x64 - - - linux.x64 - - - win.x86 - - - win.x64 - - - osx.x64 - - - win.arm - - - win.arm64 - - - linux.arm - + + + + + + + + + + + diff --git a/publish/dir.targets b/publish/dir.targets index 0977af82..a6c5543e 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -96,7 +96,7 @@ + FilterBlobNames="Runtime/$(SharedFrameworkNugetVersion)/"> @@ -105,7 +105,6 @@ Exclude="@(_FoundBlobNames)" /> diff --git a/publish/publish.proj b/publish/publish.proj index 7668658c..d32b2db3 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -89,14 +89,14 @@ @@ -113,7 +113,7 @@ + FilterblobNames="Runtime/$(SharedFrameworkNugetVersion)"> diff --git a/tools-local/tasks/FinalizeBuild.cs b/tools-local/tasks/FinalizeBuild.cs index e57aa5a8..63db7052 100644 --- a/tools-local/tasks/FinalizeBuild.cs +++ b/tools-local/tasks/FinalizeBuild.cs @@ -35,9 +35,9 @@ namespace Microsoft.DotNet.Build.Tasks [Required] public string SharedHostNugetVersion { get; set; } [Required] - public string Version { get; set; } + public string ProductVersion { get; set; } [Required] - public ITaskItem [] PublishRids { get; set; } + public string Version { get; set; } [Required] public string CommitHash { get; set; } public bool ForcePublish { get; set; } @@ -92,20 +92,11 @@ namespace Microsoft.DotNet.Build.Tasks try { - CopyBlobs($"{Channel}/Binaries/{SharedFrameworkNugetVersion}", $"{Channel}/Binaries/Latest/"); - - CopyBlobs($"{Channel}/Installers/{SharedFrameworkNugetVersion}", $"{Channel}/Installers/Latest/"); - - CopyBlobs($"{Channel}/Installers/{SharedHostNugetVersion}", $"{Channel}/Installers/Latest/"); - - // Generate the Sharedfx Version text files - List versionFiles = PublishRids.Select(p => $"{p.GetMetadata("VersionFileName")}.version").ToList(); + CopyBlobs($"Runtime/{ProductVersion}", $"Runtime/{Channel}/"); + // Generate the latest version text file string sfxVersion = GetSharedFrameworkVersionFileContent(); - foreach(string version in versionFiles) - { - PublishStringToBlob(ContainerName, $"{Channel}/dnvm/latest.sharedfx.{version}", sfxVersion, "text/plain"); - } + PublishStringToBlob(ContainerName, $"Runtime/{Channel}/latest.version", sfxVersion, "text/plain"); } finally { From 99f0543a6729421ffc82f50e753eeb71273d7e1e Mon Sep 17 00:00:00 2001 From: Rakesh Ranjan Singh Date: Mon, 15 May 2017 19:55:18 -0700 Subject: [PATCH 420/625] Pass required checksum properties during publish step --- buildpipeline/Core-Setup-Linux-Arm-BT.json | 2 +- buildpipeline/Core-Setup-Linux-BT.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-Arm-BT.json b/buildpipeline/Core-Setup-Linux-Arm-BT.json index 677afc0c..a9d87b21 100644 --- a/buildpipeline/Core-Setup-Linux-Arm-BT.json +++ b/buildpipeline/Core-Setup-Linux-Arm-BT.json @@ -177,7 +177,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --privileged --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)", + "arguments": "run --privileged --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 3e24f241..e306975b 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -820,7 +820,7 @@ "value": "/flp:v=diag /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:OSGroup=Linux" }, "CommonMSBuildPublishArgs": { - "value": "/p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) $(PB_DebianKeys)" + "value": "/p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) $(PB_DebianKeys)" }, "PB_DebianKeys": { "value": "/p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)" From 6389197837a811d7bf697cb5be8eff18665722f1 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Mon, 15 May 2017 21:02:56 -0700 Subject: [PATCH 421/625] Update CoreClr, CoreFx to preview2-25316-01, preview2-25316-01, respectively (#2396) --- dependencies.props | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/dependencies.props b/dependencies.props index c57147e9..210828ad 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,16 +9,16 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - acad89974aca0c156fad490c616f51b0c632dd6e - 973abe81304e8047712106dd998bde1869c6a21a + 703d40525af4a09f5566cd3d8f334b3736b68fae + 703d40525af4a09f5566cd3d8f334b3736b68fae 973abe81304e8047712106dd998bde1869c6a21a 973abe81304e8047712106dd998bde1869c6a21a - 4.4.0-preview2-25315-01 - 2.0.0-preview2-25315-01 - 2.0.0-preview2-25315-02 + 4.4.0-preview2-25316-01 + 2.0.0-preview2-25316-01 + 2.0.0-preview2-25316-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview2-25315-01 1.4.1 From e4df4d0d6c323f308e3d230bf2a101f281ea856f Mon Sep 17 00:00:00 2001 From: Jiyoung Giuliana Yun Date: Tue, 16 May 2017 14:00:41 +0900 Subject: [PATCH 422/625] Set default ROOTFS_DIR path when it does not set (#2388) --- src/corehost/build.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/corehost/build.sh b/src/corehost/build.sh index b8ddbb83..647d610e 100755 --- a/src/corehost/build.sh +++ b/src/corehost/build.sh @@ -74,6 +74,7 @@ while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symli [[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located done DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" +RootRepo="$DIR/../.." __build_arch= __host_ver= @@ -155,6 +156,13 @@ case $__build_arch in esac __cmake_defines="${__cmake_defines} ${__arch_define}" +# Configure environment if we are doing a cross compile. +if [ "$__CrossBuild" == 1 ]; then + if ! [[ -n $ROOTFS_DIR ]]; then + export ROOTFS_DIR="$RootRepo/cross/rootfs/$__build_arch" + fi +fi + # __rid_plat is the base RID that corehost is shipped for, effectively, the name of the folder in "runtimes/{__rid_plat}/native/" inside the nupkgs. __rid_plat= init_rid_plat From 0f4cec165f8681ffb1ef4020baca27748e59a093 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Mon, 15 May 2017 23:12:43 -0700 Subject: [PATCH 423/625] Do not check length for calls to realpath --- src/corehost/common/longfile.h | 1 + src/corehost/common/longfile.windows.cpp | 19 ++++++++++++++++++- src/corehost/common/pal.windows.cpp | 2 +- src/corehost/common/utils.cpp | 2 +- 4 files changed, 21 insertions(+), 3 deletions(-) diff --git a/src/corehost/common/longfile.h b/src/corehost/common/longfile.h index 800317a0..856d9be2 100644 --- a/src/corehost/common/longfile.h +++ b/src/corehost/common/longfile.h @@ -21,6 +21,7 @@ public: static bool IsDirectorySeparator(const pal::char_t c); static bool IsPathNotFullyQualified(const pal::string_t& path); static bool IsDevice(const pal::string_t& path); + static bool IsNormalized(const pal::string_t& path); static bool ShouldNormalize(const pal::string_t& path); }; #endif //_LONG_FILE_SUPPORT diff --git a/src/corehost/common/longfile.windows.cpp b/src/corehost/common/longfile.windows.cpp index 7e51d726..32bc7847 100644 --- a/src/corehost/common/longfile.windows.cpp +++ b/src/corehost/common/longfile.windows.cpp @@ -16,9 +16,13 @@ const pal::string_t LongFile::DevicePathPrefix = _X("\\\\.\\"); const pal::string_t LongFile::UNCExtendedPathPrefix = _X("\\\\?\\UNC\\"); const pal::string_t LongFile::UNCPathPrefix = _X("\\\\"); +bool LongFile::IsNormalized(const pal::string_t& path) +{ + return path.empty() || LongFile::IsDevice(path) || LongFile::IsExtended(path) || LongFile::IsUNCExtended(path); +} bool ShouldNormalizeWorker(const pal::string_t& path) { - if (path.empty() || LongFile::IsDevice(path) || LongFile::IsExtended(path) || LongFile::IsUNCExtended(path)) + if (LongFile::IsNormalized(path)) return false; if (!LongFile::IsPathNotFullyQualified(path) && path.size() < MAX_PATH) @@ -65,6 +69,19 @@ bool AssertRepeatingDirSeparator(const pal::string_t& path) assert(path_to_check.find(altDirSeparator) == pal::string_t::npos); + pal::string_t combDirSeparator1; + combDirSeparator1.push_back(LongFile::DirectorySeparatorChar); + combDirSeparator1.push_back(LongFile::AltDirectorySeparatorChar); + + assert(path_to_check.find(combDirSeparator1) == pal::string_t::npos); + + pal::string_t combDirSeparator2; + combDirSeparator2.push_back(LongFile::AltDirectorySeparatorChar); + combDirSeparator2.push_back(LongFile::DirectorySeparatorChar); + + assert(path_to_check.find(combDirSeparator2) == pal::string_t::npos); + + assert(path_to_check.find(_X("..")) == pal::string_t::npos); return true; } bool LongFile::ShouldNormalize(const pal::string_t& path) diff --git a/src/corehost/common/pal.windows.cpp b/src/corehost/common/pal.windows.cpp index 4fc45965..b13e0ab8 100644 --- a/src/corehost/common/pal.windows.cpp +++ b/src/corehost/common/pal.windows.cpp @@ -379,7 +379,7 @@ bool pal::clr_palstring(const char* cstr, pal::string_t* out) bool pal::realpath(string_t* path) { - if (!LongFile::ShouldNormalize(*path)) + if (LongFile::IsNormalized(*path)) { return true; } diff --git a/src/corehost/common/utils.cpp b/src/corehost/common/utils.cpp index 5aeb9820..e49039d7 100644 --- a/src/corehost/common/utils.cpp +++ b/src/corehost/common/utils.cpp @@ -55,7 +55,7 @@ void append_path(pal::string_t* path1, const pal::char_t* path2) } else { - if (path1->empty() || path1->back() != DIR_SEPARATOR) + if (!path1->empty() && path1->back() != DIR_SEPARATOR) { path1->push_back(DIR_SEPARATOR); } From e4e27675d11704e1528fb8dacab3f0d10b1c21a6 Mon Sep 17 00:00:00 2001 From: John Beisner Date: Tue, 16 May 2017 09:49:31 -0700 Subject: [PATCH 424/625] Changes per code review... --- src/corehost/cli/fxr/fx_muxer.cpp | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index e1920f33..f6e0a5eb 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -661,8 +661,8 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal pal::string_t retval; bool cli_version_specified = false; - bool cli_version_found = false; - pal::string_t cli_version; + bool cli_version_found = false; + pal::string_t cli_version; for (pal::string_t dir : hive_dir) { @@ -672,14 +672,14 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal cli_version = resolve_cli_version(global); if (!cli_version.empty()) { - cli_version_specified = true; + cli_version_specified = true; pal::string_t sdk_path = dir; append_path(&sdk_path, _X("sdk")); append_path(&sdk_path, cli_version.c_str()); if (pal::directory_exists(sdk_path)) { - cli_version_found = true; + cli_version_found = true; trace::verbose(_X("CLI directory [%s] from global.json exists"), sdk_path.c_str()); retval = sdk_path; } @@ -703,11 +703,14 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal } } - trace::verbose(_X("It was not possible to find any SDK version")); - if (cli_version_specified && !cli_version_found) - { - trace::error(_X("The specified SDK version [%s] from global.json [%s] doesn't exist; install specified SDK version [%s]"), cli_version.c_str(), global.c_str(), cli_version.c_str()); - } + if (cli_version_specified) + { + trace::error(_X("The specified SDK version [%s] from global.json [%s] not found; install specified SDK version"), cli_version.c_str(), global.c_str()); + } + else + { + trace::verbose(_X("It was not possible to find any SDK version")); + } return false; } From d29a8758a7ff094ae61640db91ea1ebd3dd0e094 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Tue, 16 May 2017 10:11:32 -0700 Subject: [PATCH 425/625] Update Standard, WCF to preview2-25316-01, preview2-25316-01, respectively (#2406) --- dependencies.props | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dependencies.props b/dependencies.props index 210828ad..f0e2105c 100644 --- a/dependencies.props +++ b/dependencies.props @@ -11,8 +11,8 @@ 703d40525af4a09f5566cd3d8f334b3736b68fae 703d40525af4a09f5566cd3d8f334b3736b68fae - 973abe81304e8047712106dd998bde1869c6a21a - 973abe81304e8047712106dd998bde1869c6a21a + cddd078e3efc27b2fc23c38d8028e3b647cd4fe3 + cddd078e3efc27b2fc23c38d8028e3b647cd4fe3 @@ -20,9 +20,9 @@ 2.0.0-preview2-25316-01 2.0.0-preview2-25316-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.0.0-preview2-25315-01 + 2.0.0-preview2-25316-01 1.4.1 - 4.4.0-preview2-25315-01 + 4.4.0-preview2-25316-01 From ff4abe13839f6f5f3bdbc5e0e2fd0c0fc5aeeeb8 Mon Sep 17 00:00:00 2001 From: John Beisner Date: Tue, 16 May 2017 10:30:59 -0700 Subject: [PATCH 426/625] Minor code refactoring; fixed a test... --- src/corehost/cli/fxr/fx_muxer.cpp | 16 +++++++--------- .../GivenThatICareAboutMultilevelSDKLookup.cs | 2 +- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index f6e0a5eb..4bea9107 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -589,10 +589,10 @@ pal::string_t resolve_sdk_version(pal::string_t sdk_path) trace::verbose(_X("Checking if resolved SDK dir [%s] exists"), sdk_path.c_str()); if (pal::directory_exists(sdk_path)) { - retval = sdk_path; + retval = max_ver_str; } - trace::verbose(_X("Resolved SDK dir is [%s]"), retval.c_str()); + trace::verbose(_X("Resolved SDK dir is [%s]"), sdk_path.c_str()); return retval; } @@ -661,25 +661,23 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal pal::string_t retval; bool cli_version_specified = false; - bool cli_version_found = false; pal::string_t cli_version; for (pal::string_t dir : hive_dir) { trace::verbose(_X("Searching SDK directory in [%s]"), dir.c_str()); + pal::string_t sdk_path = dir; + append_path(&sdk_path, _X("sdk")); if (!global.empty()) { cli_version = resolve_cli_version(global); if (!cli_version.empty()) { cli_version_specified = true; - pal::string_t sdk_path = dir; - append_path(&sdk_path, _X("sdk")); append_path(&sdk_path, cli_version.c_str()); if (pal::directory_exists(sdk_path)) { - cli_version_found = true; trace::verbose(_X("CLI directory [%s] from global.json exists"), sdk_path.c_str()); retval = sdk_path; } @@ -691,9 +689,9 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal } if (retval.empty() && !cli_version_specified) { - pal::string_t sdk_path = dir; - append_path(&sdk_path, _X("sdk")); - retval = resolve_sdk_version(sdk_path); + cli_version = resolve_sdk_version(sdk_path); + append_path(&sdk_path, cli_version.c_str()); + retval = sdk_path; } if (!retval.empty()) { diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index 0e91f24c..306883b2 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -198,7 +198,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Fail() .And - .HaveStdErrContaining("global.json] doesn't exist; install specified SDK version [9999.0.0-global-dummy]"); + .HaveStdErrContaining("global.json] not found; install specified SDK version"); // Add specified CLI version AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0-global-dummy"); From d31918fcbf99a8bf70aebaa934ee3c017c297dee Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Tue, 16 May 2017 10:32:13 -0700 Subject: [PATCH 427/625] OfficialBuildId property is required to generate version prop for official build. (#2411) --- buildpipeline/Core-Setup-Linux-BT.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index e306975b..49699ff0 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -817,7 +817,7 @@ "value": "/p:UsePrebuiltPortableBinaries=true /p:SharedFrameworkPublishDir=/root/sharedFrameworkPublish/" }, "CommonMSBuildArguments": { - "value": "/flp:v=diag /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:OSGroup=Linux" + "value": "/flp:v=diag /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:OSGroup=Linux /p:OfficialBuildId=$(OfficialBuildId)" }, "CommonMSBuildPublishArgs": { "value": "/p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) $(PB_DebianKeys)" From 936a2a6229bdd6385e3e8ab0c32ddf0317ac090c Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Tue, 16 May 2017 11:42:03 -0700 Subject: [PATCH 428/625] Update CoreClr to preview2-25316-03 (#2410) --- dependencies.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.props b/dependencies.props index f0e2105c..9a044357 100644 --- a/dependencies.props +++ b/dependencies.props @@ -10,7 +10,7 @@ --> 703d40525af4a09f5566cd3d8f334b3736b68fae - 703d40525af4a09f5566cd3d8f334b3736b68fae + fcd99ed86a703a16698fcd0027707739c8ef3501 cddd078e3efc27b2fc23c38d8028e3b647cd4fe3 cddd078e3efc27b2fc23c38d8028e3b647cd4fe3 @@ -18,7 +18,7 @@ 4.4.0-preview2-25316-01 2.0.0-preview2-25316-01 - 2.0.0-preview2-25316-01 + 2.0.0-preview2-25316-03 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview2-25316-01 1.4.1 From a1b09d8470b99458133933c6f1d6ae0dbdeed7ec Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Wed, 10 May 2017 16:57:37 -0700 Subject: [PATCH 429/625] Enable republishing of deb tool Remove DnuRestorePrefix --- buildpipeline/Core-Setup-Linux-BT.json | 10 +++++++--- publish/publish.proj | 19 ++++++++++++++++--- 2 files changed, 23 insertions(+), 6 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 49699ff0..ffc612f4 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -293,7 +293,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1404) $(CommonMSBuildArguments) $(CommonMSBuildPublishArgs)", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1404) /p:PublishDebToolToFeed=true /p:CliNuGetFeedUrl=$(CLI_NUGET_FEED_URL) /p:CliNuGetApiKey=$(CLI_NUGET_API_KEY) $(CommonMSBuildArguments) $(CommonMSBuildPublishArgs)", "workingFolder": "", "failOnStandardError": "false" } @@ -874,10 +874,14 @@ "value": "--name $(PB_DockerContainerName)$(DockerTag_Debian8) -v \"$(PB_SourcesDirectory):$(PB_GitDirectory)\" -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/root/sharedFrameworkPublish/ -w=\"$(PB_GitDirectory)\" $(DockerImageName_Debian8)" }, "CLI_NUGET_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/cli-deps/api/v2/package" }, "CLI_NUGET_SYMBOLS_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" + "value": "https:%2F%2Fdotnet.myget.org/F/cli-deps/symbols/api/v2/package" + }, + "CliNuGetApiKey": { + "value": null, + "isSecret": true } }, "demands": [ diff --git a/publish/publish.proj b/publish/publish.proj index d32b2db3..3cc9faf4 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -7,7 +7,7 @@ + DependsOnTargets="PublishToAzure;PublishDebFilesToDebianRepo;PublishDebToolPackageToFeed;PublishFinalOutput" /> - $(DnuRestorePrefix)$(DotnetToolCommand) nuget push --source $(NuGetFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) - $(DnuRestorePrefix)$(DotnetToolCommand) nuget push --source $(NuGetSymbolsFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) + $(DotnetToolCommand) nuget push --source $(NuGetFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) + $(DotnetToolCommand) nuget push --source $(NuGetSymbolsFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) @@ -152,6 +152,19 @@ + + + + + + + + $(DotnetToolCommand) nuget push --source $(CliNuGetFeedUrl) --api-key $(CliNuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) + + + + \ No newline at end of file From cf99f143b9f32fc2defa50a9016a7edf769dd0c7 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Tue, 16 May 2017 12:32:31 -0700 Subject: [PATCH 430/625] Adding test for AltDirectorySeparatorChar --- ...ivenThatICareAboutPortableAppActivation.cs | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/test/HostActivationTests/GivenThatICareAboutPortableAppActivation.cs b/src/test/HostActivationTests/GivenThatICareAboutPortableAppActivation.cs index 879ecb9e..c994e8b9 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutPortableAppActivation.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutPortableAppActivation.cs @@ -58,7 +58,25 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.PortableApp .And .HaveStdOutContaining("Hello World"); } - + + [Fact] + public void Muxer_activation_of_Apps_with_AltDirectorySeparatorChar() + { + var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture + .Copy(); + + var dotnet = fixture.BuiltDotnet; + var appDll = fixture.TestProject.AppDll.Replace(Path.DirectorySeparatorChar,Path.AltDirectorySeparatorChar); + + dotnet.Exec(appDll) + .CaptureStdErr() + .CaptureStdOut() + .Execute() + .Should() + .Pass() + .And + .HaveStdOutContaining("Hello World"); + } [Fact] public void Muxer_Exec_activation_of_Build_Output_Portable_DLL_with_DepsJson_Local_and_RuntimeConfig_Remote_Without_AdditionalProbingPath_Fails() { From c0d6894feb8fabf652df59d2868a82783ec1ec8f Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 16 May 2017 15:43:56 -0500 Subject: [PATCH 431/625] Respond to PR feedback. Add a semaphore file to ensure incremental build works on all platforms. GetCrossGenSymbolsFiles shouldn't 'build' anything since it runs during packaging. --- .../src/Microsoft.NETCore.App.depproj | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index 6a414c08..ed636139 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -207,15 +207,11 @@ - <_filesToCrossGen Include="@(FilesToPackage)" + <_filesToCrossGen Include="@(FilesToPackage)" Condition="'%(FilesToPackage.IsNative)' != 'true' AND '%(FileName)' != 'System.Private.CoreLib' AND '%(FileName)' != 'mscorlib' AND '%(Extension)' == '.dll'"> $(CrossGenOutputPath)/%(TargetPath)/ $(CrossGenOutputPath)/%(TargetPath)/%(FileName)%(Extension) - - - $(CrossGenSymbolsOutputPath)/%(TargetPath)/%(FileName)$(CrossGenSymbolExtension) + $(_crossGenIntermediatePath)/%(FileName).symbol.semaphore @@ -270,12 +266,12 @@ Condition="'$(CrossGenSymbolExtension)' != ''" DependsOnTargets="CreateCrossGenImages" Inputs="%(_filesToCrossGen.CrossGenedPath)" - Outputs="%(_filesToCrossGen.CrossGenSymbolPath)"> + Outputs="%(_filesToCrossGen.CrossGenSymbolSemaphorePath)"> <_crossGenSymbolsResponseFile>$(_crossGenIntermediatePath)/%(_filesToCrossGen.FileName).symbols.rsp <_crossGenSymbolsOptionName Condition="'$(OS)' == 'Windows_NT'">CreatePDB <_crossGenSymbolsOptionName Condition="'$(_crossGenSymbolsOptionName)' == ''">CreatePerfMap - <_crossGenSymbolsOutputDirectory>$([System.IO.Path]::GetDirectoryName('%(_filesToCrossGen.CrossGenSymbolPath)')) + <_crossGenSymbolsOutputDirectory>$(CrossGenSymbolsOutputPath)/%(_filesToCrossGen.TargetPath) @@ -291,11 +287,17 @@ + + + + Condition="'$(CrossGenSymbolExtension)' != ''"> true From 7646d1a218b4193f3b9ddabbcd3e9b14e0512197 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 16 May 2017 16:06:22 -0500 Subject: [PATCH 432/625] Respond to PR feedback. --- src/dir.props | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/dir.props b/src/dir.props index d3a7863d..31c597a4 100644 --- a/src/dir.props +++ b/src/dir.props @@ -29,8 +29,9 @@ + .map .ni.pdb - - .map + + \ No newline at end of file From f6ca7c915ab058661b601014649d741ead926e78 Mon Sep 17 00:00:00 2001 From: chcosta Date: Tue, 16 May 2017 14:31:37 -0700 Subject: [PATCH 433/625] Remove item include which is causing symbols packages to be included twice (#2415) --- publish/dir.props | 3 --- 1 file changed, 3 deletions(-) diff --git a/publish/dir.props b/publish/dir.props index a54287c2..8f739f8d 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -28,9 +28,6 @@ $(BinariesRelativePath) - - $(BinariesRelativePath) - $(InstallersRelativePath) From 1249bdbad21448ec72308de0bcbd0ef3d903185e Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Tue, 16 May 2017 14:39:17 -0700 Subject: [PATCH 434/625] Fixing Property typo issue causing incomplete nuget package push. (#2414) Fixing Property typo issue causing incomplete tar package push. --- buildpipeline/Core-Setup-Linux-BT.json | 2 +- src/pkg/packaging/dir.proj | 4 ++-- src/pkg/packaging/dir.props | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index ffc612f4..7e7112fd 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -814,7 +814,7 @@ "value": "azure-apt-cat.cloudapp.net" }, "AdditionalMSBuildProperties": { - "value": "/p:UsePrebuiltPortableBinaries=true /p:SharedFrameworkPublishDir=/root/sharedFrameworkPublish/" + "value": "/p:UsePrebuiltPortableBinariesForInstallers=true /p:SharedFrameworkPublishDir=/root/sharedFrameworkPublish/" }, "CommonMSBuildArguments": { "value": "/flp:v=diag /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:OSGroup=Linux /p:OfficialBuildId=$(OfficialBuildId)" diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index b9bb84ca..3fe82758 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -90,7 +90,7 @@ /> - + - + diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index 1c6f1aab..ffac9a01 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -6,7 +6,7 @@ $(ProjectDir)src/pkg/packaging/ - false + false $(IntermediateOutputRootPath)packages/ $(IntermediateOutputRootPath)sharedHost/ From 8a8ac07182e7d159b8f3ebd8e7232d1d07c511b6 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Tue, 16 May 2017 15:48:25 -0700 Subject: [PATCH 435/625] Add missing checksum parameters from arm linux build --- buildpipeline/Core-Setup-Linux-Arm-BT.json | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/buildpipeline/Core-Setup-Linux-Arm-BT.json b/buildpipeline/Core-Setup-Linux-Arm-BT.json index a9d87b21..f5421fbd 100644 --- a/buildpipeline/Core-Setup-Linux-Arm-BT.json +++ b/buildpipeline/Core-Setup-Linux-Arm-BT.json @@ -404,6 +404,13 @@ }, "PB_DebRepoServer": { "value": "azure-apt-cat.cloudapp.net" + }, + "PB_ChecksumAzureAccountName": { + "value": "dotnetclichecksums" + }, + "PB_ChecksumAzureAccessToken": { + "value": null, + "isSecret": true } }, "demands": [ From c86873095c1ac6f07d8c4b9a5de1f86c1aa62b6b Mon Sep 17 00:00:00 2001 From: Jiyoung Giuliana Yun Date: Wed, 17 May 2017 08:23:24 +0900 Subject: [PATCH 436/625] Add Tizen armel CI job (#2402) The tizen runtime pkgs are restored from Tizen dotnet-core feed. So, add the relevant feed by using OverridePackageSource property. --- netci.groovy | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/netci.groovy b/netci.groovy index 51b2b5ac..c7e20c89 100644 --- a/netci.groovy +++ b/netci.groovy @@ -10,7 +10,7 @@ def project = GithubProject def branch = GithubBranchName def isPR = true -def platformList = ['Debian8.2:x64:Debug', 'PortableLinux:x64:Release', 'Ubuntu:x64:Release', 'Ubuntu16.04:x64:Release', 'Ubuntu16.10:x64:Release', 'Ubuntu:arm:Release', 'Ubuntu16.04:arm:Release', 'OSX10.12:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Windows_NT:arm:Debug', 'Fedora24:x64:Debug', 'OpenSUSE42.1:x64:Debug'] +def platformList = ['Debian8.2:x64:Debug', 'PortableLinux:x64:Release', 'Ubuntu:x64:Release', 'Ubuntu16.04:x64:Release', 'Ubuntu16.10:x64:Release', 'Ubuntu:arm:Release', 'Ubuntu16.04:arm:Release', 'OSX10.12:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Windows_NT:arm:Debug', 'Fedora24:x64:Debug', 'OpenSUSE42.1:x64:Debug', 'Tizen:armel:Release'] def static getBuildJobName(def configuration, def os, def architecture) { return configuration.toLowerCase() + '_' + os.toLowerCase() + '_' + architecture.toLowerCase() @@ -38,6 +38,13 @@ platformList.each { platform -> buildCommand += " -PortableBuild=true -SkipTests=true" } } + else if (os == 'Tizen') { + dockerRepository = "hqueue/dotnetcore" + dockerContainer = "ubuntu1404_cross_prereqs_v4-tizen_rootfs" + + dockerCommand = "docker run -e ROOTFS_DIR=/crossrootfs/${architecture}.tizen.build --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" + buildCommand = "${dockerCommand} ./build.sh -ConfigurationGroup=${configuration} -TargetArchitecture=${architecture} -DistroRid=tizen.4.0.0-${architecture} -SkipTests=true -DisableCrossgen=true -CrossBuild=true -- /p:OverridePackageSource=https:%2F%2Ftizen.myget.org/F/dotnet-core/api/v3/index.json" + } else if ((os.startsWith("Ubuntu")) && (architecture == 'arm' || architecture == 'armel')) { From 1af49a2602515077f7e1037be808b42f69d30360 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 16 May 2017 18:24:53 -0500 Subject: [PATCH 437/625] Revert "Generate crossgen symbols for the shared framework." (#2418) --- src/dir.props | 8 +-- src/pkg/packaging/dir.proj | 6 ++ .../src/Microsoft.NETCore.App.depproj | 56 +------------------ src/sharedFramework/sharedFramework.proj | 2 - 4 files changed, 9 insertions(+), 63 deletions(-) diff --git a/src/dir.props b/src/dir.props index 31c597a4..c7a9edd5 100644 --- a/src/dir.props +++ b/src/dir.props @@ -27,11 +27,5 @@ rhel.7-x64 rhel.7-x64 - - - .map - .ni.pdb - - - + \ No newline at end of file diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 1bcbc1ef..3fe82758 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -119,6 +119,12 @@ + + + + + + diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index ed636139..69f4d7ee 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -18,7 +18,6 @@ $(IntermediateOutputPath)$(NuGetRuntimeIdentifier) $(IntermediateOutputPath) /p:HasRuntimePackages=false /p:IntermediateOutputPath=$(IntermediateOutputPath) - $(PackageSymbolsBinDir)/$(MSBuildProjectName) @@ -207,11 +206,9 @@ - <_filesToCrossGen Include="@(FilesToPackage)" + <_filesToCrossGen Include="@(FilesToPackage)" Condition="'%(FilesToPackage.IsNative)' != 'true' AND '%(FileName)' != 'System.Private.CoreLib' AND '%(FileName)' != 'mscorlib' AND '%(Extension)' == '.dll'"> - $(CrossGenOutputPath)/%(TargetPath)/ $(CrossGenOutputPath)/%(TargetPath)/%(FileName)%(Extension) - $(_crossGenIntermediatePath)/%(FileName).symbol.semaphore @@ -238,9 +235,6 @@ - - @@ -262,53 +256,7 @@ - - - <_crossGenSymbolsResponseFile>$(_crossGenIntermediatePath)/%(_filesToCrossGen.FileName).symbols.rsp - <_crossGenSymbolsOptionName Condition="'$(OS)' == 'Windows_NT'">CreatePDB - <_crossGenSymbolsOptionName Condition="'$(_crossGenSymbolsOptionName)' == ''">CreatePerfMap - <_crossGenSymbolsOutputDirectory>$(CrossGenSymbolsOutputPath)/%(_filesToCrossGen.TargetPath) - - - - <_crossGenSymbolsArgs Include="-readytorun" /> - <_crossGenSymbolsArgs Include="-platform_assemblies_paths %(_filesToCrossGen.CrossGenedDirectory)$(_pathSeparatorEscaped)$(_coreLibDirectory)" /> - <_crossGenSymbolsArgs Include="-$(_crossGenSymbolsOptionName)" /> - <_crossGenSymbolsArgs Include="$(_crossGenSymbolsOutputDirectory)" /> - <_crossGenSymbolsArgs Include="%(_filesToCrossGen.CrossGenedPath)" /> - - - - - - - - - - - - - - - - true - runtimes/$(NuGetRuntimeIdentifier)/lib/$(PackageTargetFramework) - - - - - + diff --git a/src/sharedFramework/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj index d287053a..6ceba200 100644 --- a/src/sharedFramework/sharedFramework.proj +++ b/src/sharedFramework/sharedFramework.proj @@ -70,8 +70,6 @@ - From 2294e8456f7b139eec641576ca3eeaacaf6cbb1f Mon Sep 17 00:00:00 2001 From: Rakesh Ranjan Singh Date: Tue, 16 May 2017 16:44:31 -0700 Subject: [PATCH 438/625] Fix readme for daily build paths for Ubuntu and Debian. 1. Removed Tar and symbol locations 2. Updated blob path for Ubuntu 14.04 and Debian to match the new filename convention. --- README.md | 28 ++++++++++------------------ 1 file changed, 10 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 726837b0..a87548e0 100644 --- a/README.md +++ b/README.md @@ -39,10 +39,10 @@ Daily Builds | **Mac OS X (x64)** | [![][osx-badge-master]][osx-version-master]
[Installer][osx-installer-master]
[tar.gz][osx-targz-master]
[Symbols (tar.gz)][osx-symbols-targz-master] | [![][osx-badge-1.1.X]][osx-version-1.1.X]
[Installer][osx-installer-1.1.X]
[tar.gz][osx-targz-1.1.X] | [![][osx-badge-preview]][osx-version-preview]
[Installer][osx-installer-preview]
[tar.gz][osx-targz-preview] | | **Linux (x64)** (for glibc based OS) | [![][linux-x64-badge-master]][linux-x64-version-master]
[tar.gz][linux-x64-targz-master]
[Symbols (tar.gz)][linux-x64-symbols-targz-master] | N/A | N/A | | **Linux (armhf)** (for glibc based OS) | [![][linux-arm-badge-master]][linux-arm-version-master]
[tar.gz][linux-arm-targz-master]
[Symbols (tar.gz)][linux-arm-symbols-targz-master] | N/A | N/A | -| **Ubuntu 14.04 (x64)** | [![][ubuntu-14.04-badge-master]][ubuntu-14.04-version-master]
[Host][ubuntu-14.04-host-master]
[Host FX Resolver][ubuntu-14.04-hostfxr-master]
[Shared Framework][ubuntu-14.04-sharedfx-master]
[tar.gz][ubuntu-14.04-targz-master]
[Symbols (tar.gz)][ubuntu-14.04-symbols-targz-master] | [![][ubuntu-14.04-badge-1.1.X]][ubuntu-14.04-version-1.1.X]
[Host][ubuntu-14.04-host-1.1.X]
[Host FX Resolver][ubuntu-14.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-14.04-sharedfx-1.1.X]
[tar.gz][ubuntu-14.04-targz-1.1.X] | [![][ubuntu-14.04-badge-preview]][ubuntu-14.04-version-preview]
[Host][ubuntu-14.04-host-preview]
[Host FX Resolver][ubuntu-14.04-hostfxr-preview]
[Shared Framework][ubuntu-14.04-sharedfx-preview]
[tar.gz][ubuntu-14.04-targz-preview] | -| **Ubuntu 16.04 (x64)** | [![][ubuntu-16.04-badge-master]][ubuntu-16.04-version-master]
[Host][ubuntu-16.04-host-master]
[Host FX Resolver][ubuntu-16.04-hostfxr-master]
[Shared Framework][ubuntu-16.04-sharedfx-master]
[tar.gz][ubuntu-16.04-targz-master]
[Symbols (tar.gz)][ubuntu-16.04-symbols-targz-master] | [![][ubuntu-16.04-badge-1.1.X]][ubuntu-16.04-version-1.1.X]
[Host][ubuntu-16.04-host-1.1.X]
[Host FX Resolver][ubuntu-16.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.04-sharedfx-1.1.X]
[tar.gz][ubuntu-16.04-targz-1.1.X] | [![][ubuntu-16.04-badge-preview]][ubuntu-16.04-version-preview]
[Host][ubuntu-16.04-host-preview]
[Host FX Resolver][ubuntu-16.04-hostfxr-preview]
[Shared Framework][ubuntu-16.04-sharedfx-preview]
[tar.gz][ubuntu-16.04-targz-preview] | -| **Ubuntu 16.10 (x64)** | [![][ubuntu-16.10-badge-master]][ubuntu-16.10-version-master]
[Host][ubuntu-16.10-host-master]
[Host FX Resolver][ubuntu-16.10-hostfxr-master]
[Shared Framework][ubuntu-16.10-sharedfx-master]
[tar.gz][ubuntu-16.10-targz-master]
[Symbols (tar.gz)][ubuntu-16.10-symbols-targz-master] | [![][ubuntu-16.10-badge-1.1.X]][ubuntu-16.10-version-1.1.X]
[Host][ubuntu-16.10-host-1.1.X]
[Host FX Resolver][ubuntu-16.10-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.10-sharedfx-1.1.X]
[tar.gz][ubuntu-16.10-targz-1.1.X] | N/A | -| **Debian 8.2 (x64)** | [![][debian-8.2-badge-master]][debian-8.2-version-master]
[Host][debian-8.2-host-master]
[Host FX Resolver][debian-8.2-hostfxr-master]
[Shared Framework][debian-8.2-sharedfx-master]
[tar.gz][debian-8.2-targz-master]
[Symbols (tar.gz)][debian-8.2-symbols-targz-master] | [![][debian-8.2-badge-1.1.X]][debian-8.2-version-1.1.X]
[Host][debian-8.2-host-1.1.X]
[Host FX Resolver][debian-8.2-hostfxr-1.1.X]
[Shared Framework][debian-8.2-sharedfx-1.1.X]
[tar.gz][debian-8.2-targz-1.1.X] | [![][debian-8.2-badge-preview]][debian-8.2-version-preview]
[Host][debian-8.2-host-preview]
[Host FX Resolver][debian-8.2-hostfxr-preview]
[Shared Framework][debian-8.2-sharedfx-preview]
[tar.gz][debian-8.2-targz-preview] | +| **Ubuntu 14.04 (x64)** | [![][ubuntu-14.04-badge-master]][ubuntu-14.04-version-master]
[Host][ubuntu-14.04-host-master]
[Host FX Resolver][ubuntu-14.04-hostfxr-master]
[Shared Framework][ubuntu-14.04-sharedfx-master]
| [![][ubuntu-14.04-badge-1.1.X]][ubuntu-14.04-version-1.1.X]
[Host][ubuntu-14.04-host-1.1.X]
[Host FX Resolver][ubuntu-14.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-14.04-sharedfx-1.1.X]
[tar.gz][ubuntu-14.04-targz-1.1.X] | [![][ubuntu-14.04-badge-preview]][ubuntu-14.04-version-preview]
[Host][ubuntu-14.04-host-preview]
[Host FX Resolver][ubuntu-14.04-hostfxr-preview]
[Shared Framework][ubuntu-14.04-sharedfx-preview]
[tar.gz][ubuntu-14.04-targz-preview] | +| **Ubuntu 16.04 (x64)** | [![][ubuntu-16.04-badge-master]][ubuntu-16.04-version-master]
[Host][ubuntu-16.04-host-master]
[Host FX Resolver][ubuntu-16.04-hostfxr-master]
[Shared Framework][ubuntu-16.04-sharedfx-master]
| [![][ubuntu-16.04-badge-1.1.X]][ubuntu-16.04-version-1.1.X]
[Host][ubuntu-16.04-host-1.1.X]
[Host FX Resolver][ubuntu-16.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.04-sharedfx-1.1.X]
[tar.gz][ubuntu-16.04-targz-1.1.X] | [![][ubuntu-16.04-badge-preview]][ubuntu-16.04-version-preview]
[Host][ubuntu-16.04-host-preview]
[Host FX Resolver][ubuntu-16.04-hostfxr-preview]
[Shared Framework][ubuntu-16.04-sharedfx-preview]
[tar.gz][ubuntu-16.04-targz-preview] | +| **Ubuntu 16.10 (x64)** | [![][ubuntu-16.10-badge-master]][ubuntu-16.10-version-master]
[Host][ubuntu-16.10-host-master]
[Host FX Resolver][ubuntu-16.10-hostfxr-master]
[Shared Framework][ubuntu-16.10-sharedfx-master]
| [![][ubuntu-16.10-badge-1.1.X]][ubuntu-16.10-version-1.1.X]
[Host][ubuntu-16.10-host-1.1.X]
[Host FX Resolver][ubuntu-16.10-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.10-sharedfx-1.1.X]
[tar.gz][ubuntu-16.10-targz-1.1.X] | N/A | +| **Debian 8.2 (x64)** | [![][debian-8.2-badge-master]][debian-8.2-version-master]
[Host][debian-8.2-host-master]
[Host FX Resolver][debian-8.2-hostfxr-master]
[Shared Framework][debian-8.2-sharedfx-master]
| [![][debian-8.2-badge-1.1.X]][debian-8.2-version-1.1.X]
[Host][debian-8.2-host-1.1.X]
[Host FX Resolver][debian-8.2-hostfxr-1.1.X]
[Shared Framework][debian-8.2-sharedfx-1.1.X]
[tar.gz][debian-8.2-targz-1.1.X] | [![][debian-8.2-badge-preview]][debian-8.2-version-preview]
[Host][debian-8.2-host-preview]
[Host FX Resolver][debian-8.2-hostfxr-preview]
[Shared Framework][debian-8.2-sharedfx-preview]
[tar.gz][debian-8.2-targz-preview] | | **CentOS 7.1 (x64)** | N/A | [![][centos-badge-1.1.X]][centos-version-1.1.X]
[tar.gz][centos-targz-1.1.X] | [![][centos-badge-preview]][centos-version-preview]
[tar.gz][centos-targz-preview] | | **RHEL 7.2 (x64)** | N/A | [![][rhel-badge-1.1.X]][rhel-version-1.1.X]
[tar.gz][rhel-targz-1.1.X] | [![][rhel-badge-preview]][rhel-version-preview]
[tar.gz][rhel-targz-preview] | | **Fedora 23 (x64)** | N/A | [![][fedora-23-badge-1.1.X]][fedora-23-version-1.1.X]
[tar.gz][fedora-23-targz-1.1.X] | [![][fedora-23-badge-preview]][fedora-23-version-preview]
[tar.gz][fedora-23-targz-preview] | @@ -132,11 +132,9 @@ Daily Builds [ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg [ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.x64.version -[ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu-x64.latest.deb -[ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu-x64.latest.deb -[ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu-x64.latest.deb -[ubuntu-14.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-ubuntu-x64.latest.tar.gz -[ubuntu-14.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-ubuntu-x64.latest.tar.gz +[ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.14.04-x64.latest.deb +[ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb +[ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb [ubuntu-14.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_x64_Release_version_badge.svg [ubuntu-14.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.x64.version @@ -158,8 +156,6 @@ Daily Builds [ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-ubuntu.16.04-x64.latest.tar.gz -[ubuntu-16.04-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-ubuntu.16.04-x64.latest.tar.gz [ubuntu-16.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_04_x64_Release_version_badge.svg [ubuntu-16.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.04.x64.version @@ -181,8 +177,6 @@ Daily Builds [ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.10-x64.latest.deb [ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb [ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-ubuntu.16.10-x64.latest.tar.gz -[ubuntu-16.10-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-ubuntu.16.10-x64.latest.tar.gz [ubuntu-16.10-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_10_x64_Release_version_badge.svg [ubuntu-16.10-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.10.x64.version @@ -194,11 +188,9 @@ Daily Builds [debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_debian.8-x64_Release_version_badge.svg [debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.debian.8.x64.version -[debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-debian-x64.latest.deb -[debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-debian-x64.latest.deb -[debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-debian-x64.latest.deb -[debian-8.2-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-debian-x64.latest.tar.gz -[debian-8.2-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-debian-x64.latest.tar.gz +[debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-debian.8-x64.latest.deb +[debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-debian.8-x64.latest.deb +[debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-debian.8-x64.latest.deb [debian-8.2-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Debian_x64_Release_version_badge.svg [debian-8.2-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.debian.x64.version From 4cd67144b65c9f126faac7dfadcd9081c47571a3 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Wed, 17 May 2017 10:09:38 -0500 Subject: [PATCH 439/625] Revert "Fix deb package naming" --- src/pkg/packaging/deb/package.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pkg/packaging/deb/package.props b/src/pkg/packaging/deb/package.props index 8c05b94e..e52aec35 100644 --- a/src/pkg/packaging/deb/package.props +++ b/src/pkg/packaging/deb/package.props @@ -10,10 +10,10 @@ dotnet-host $(SharedHostDebPkgName.ToLower()) - dotnet-hostfxr + dotnet-hostfxr-$(HostResolverVersion) $(HostFxrDebPkgName.ToLower()) - dotnet-sharedframework + dotnet-sharedframework-$(SharedFrameworkName)-$(SharedFrameworkNugetVersion) $(SharedFxDebPkgName.ToLower()) \ No newline at end of file From 4ae4e608e4bb8323f71ed9d4ada7338e96c0ba18 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Wed, 17 May 2017 13:17:49 -0500 Subject: [PATCH 440/625] Revert "Revert "Generate crossgen symbols for the shared framework." (#2418)" This reverts commit 1af49a2602515077f7e1037be808b42f69d30360. --- src/dir.props | 8 ++- src/pkg/packaging/dir.proj | 6 -- .../src/Microsoft.NETCore.App.depproj | 56 ++++++++++++++++++- src/sharedFramework/sharedFramework.proj | 2 + 4 files changed, 63 insertions(+), 9 deletions(-) diff --git a/src/dir.props b/src/dir.props index c7a9edd5..31c597a4 100644 --- a/src/dir.props +++ b/src/dir.props @@ -27,5 +27,11 @@ rhel.7-x64 rhel.7-x64 - + + + .map + .ni.pdb + + + \ No newline at end of file diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 3fe82758..1bcbc1ef 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -119,12 +119,6 @@ - - - - - - diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj index 69f4d7ee..ed636139 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj +++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj @@ -18,6 +18,7 @@ $(IntermediateOutputPath)$(NuGetRuntimeIdentifier) $(IntermediateOutputPath) /p:HasRuntimePackages=false /p:IntermediateOutputPath=$(IntermediateOutputPath) + $(PackageSymbolsBinDir)/$(MSBuildProjectName) @@ -206,9 +207,11 @@ - <_filesToCrossGen Include="@(FilesToPackage)" + <_filesToCrossGen Include="@(FilesToPackage)" Condition="'%(FilesToPackage.IsNative)' != 'true' AND '%(FileName)' != 'System.Private.CoreLib' AND '%(FileName)' != 'mscorlib' AND '%(Extension)' == '.dll'"> + $(CrossGenOutputPath)/%(TargetPath)/ $(CrossGenOutputPath)/%(TargetPath)/%(FileName)%(Extension) + $(_crossGenIntermediatePath)/%(FileName).symbol.semaphore @@ -235,6 +238,9 @@ + + @@ -256,7 +262,53 @@ - + + + <_crossGenSymbolsResponseFile>$(_crossGenIntermediatePath)/%(_filesToCrossGen.FileName).symbols.rsp + <_crossGenSymbolsOptionName Condition="'$(OS)' == 'Windows_NT'">CreatePDB + <_crossGenSymbolsOptionName Condition="'$(_crossGenSymbolsOptionName)' == ''">CreatePerfMap + <_crossGenSymbolsOutputDirectory>$(CrossGenSymbolsOutputPath)/%(_filesToCrossGen.TargetPath) + + + + <_crossGenSymbolsArgs Include="-readytorun" /> + <_crossGenSymbolsArgs Include="-platform_assemblies_paths %(_filesToCrossGen.CrossGenedDirectory)$(_pathSeparatorEscaped)$(_coreLibDirectory)" /> + <_crossGenSymbolsArgs Include="-$(_crossGenSymbolsOptionName)" /> + <_crossGenSymbolsArgs Include="$(_crossGenSymbolsOutputDirectory)" /> + <_crossGenSymbolsArgs Include="%(_filesToCrossGen.CrossGenedPath)" /> + + + + + + + + + + + + + + + + true + runtimes/$(NuGetRuntimeIdentifier)/lib/$(PackageTargetFramework) + + + + + diff --git a/src/sharedFramework/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj index 6ceba200..d287053a 100644 --- a/src/sharedFramework/sharedFramework.proj +++ b/src/sharedFramework/sharedFramework.proj @@ -70,6 +70,8 @@ + From 41da740545ef492b35660223fbf5b910efd21327 Mon Sep 17 00:00:00 2001 From: John Beisner Date: Wed, 17 May 2017 11:30:58 -0700 Subject: [PATCH 441/625] Fixing the minor code refactoring from ff4abe13 --- src/corehost/cli/fxr/fx_muxer.cpp | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index 4bea9107..78980e19 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -659,9 +659,10 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal hive_dir.push_back(global_dir); } - pal::string_t retval; bool cli_version_specified = false; pal::string_t cli_version; + pal::string_t probing_cli_version; + pal::string_t probing_sdk_path; for (pal::string_t dir : hive_dir) { @@ -670,32 +671,32 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal append_path(&sdk_path, _X("sdk")); if (!global.empty()) { - cli_version = resolve_cli_version(global); - if (!cli_version.empty()) + probing_cli_version = resolve_cli_version(global); + if (!probing_cli_version.empty()) { cli_version_specified = true; - append_path(&sdk_path, cli_version.c_str()); + probing_sdk_path = sdk_path; + append_path(&probing_sdk_path, probing_cli_version.c_str()); - if (pal::directory_exists(sdk_path)) + if (pal::directory_exists(probing_sdk_path)) { - trace::verbose(_X("CLI directory [%s] from global.json exists"), sdk_path.c_str()); - retval = sdk_path; + trace::verbose(_X("CLI directory [%s] from global.json exists"), probing_sdk_path.c_str()); + cli_version = probing_cli_version; } else { - trace::verbose(_X("CLI directory [%s] from global.json doesn't exist"), sdk_path.c_str()); + trace::verbose(_X("CLI directory [%s] from global.json doesn't exist"), probing_sdk_path.c_str()); } } } - if (retval.empty() && !cli_version_specified) + if (cli_version.empty() && !cli_version_specified) { cli_version = resolve_sdk_version(sdk_path); - append_path(&sdk_path, cli_version.c_str()); - retval = sdk_path; } - if (!retval.empty()) + if (!cli_version.empty()) { - cli_sdk->assign(retval); + append_path(&sdk_path, cli_version.c_str()); + cli_sdk->assign(sdk_path); trace::verbose(_X("Found CLI SDK in: %s"), cli_sdk->c_str()); return true; } @@ -705,7 +706,7 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal { trace::error(_X("The specified SDK version [%s] from global.json [%s] not found; install specified SDK version"), cli_version.c_str(), global.c_str()); } - else + else { trace::verbose(_X("It was not possible to find any SDK version")); } From 3876923f8ba073708ec0e7ffe2785401ba91b72f Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Wed, 17 May 2017 12:39:29 -0700 Subject: [PATCH 442/625] Fix package name in json for debian publish --- publish/dir.targets | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/publish/dir.targets b/publish/dir.targets index a6c5543e..73c9b908 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -74,10 +74,10 @@ dotnet-host - dotnet-hostfxr + dotnet-hostfxr-$(HostResolverVersion) - dotnet-sharedframework + dotnet-sharedframework-$(SharedFrameworkName)-$(SharedFrameworkNugetVersion) From c8c36a21f6d864c9ffbdbf936fcf2c88588b226c Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Wed, 17 May 2017 17:45:16 -0500 Subject: [PATCH 443/625] Fix official builds to work with crossgen -CreatePDB by using run.cmd to build. This ensures a VS Developer command prompt is initialized before the build. --- .../Core-Setup-Signing-Windows-BT.json | 19 ++------ config.json | 46 +++++++++++-------- 2 files changed, 31 insertions(+), 34 deletions(-) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Signing-Windows-BT.json index 29e63a60..ffea6418 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Signing-Windows-BT.json @@ -136,24 +136,15 @@ "displayName": "Build binaries", "timeoutInMinutes": 0, "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", "definitionType": "task" }, "inputs": { - "solution": "$(PB_SourcesDirectory)/src/src.builds", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "filename": "$(PB_SourcesDirectory)\\build.cmd", + "arguments": "-src-builds -- $(PB_CommonMSBuildArgs)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" } }, { diff --git a/config.json b/config.json index 491ce0f8..28ea6a0c 100644 --- a/config.json +++ b/config.json @@ -183,13 +183,19 @@ } }, "build":{ - "alias":{ - "binaries":{ + "alias": { + "binaries": { "description": "Only builds binaries. It doesn't restore packages.", - "settings":{ + "settings": { "RestoreDuringBuild": false } }, + "src-builds": { + "description": "Only build src\\src.builds project", + "settings": { + "Project": "src\\src.builds" + } + }, "GenerateVersion": { "description": "Generates the version header for native binaries.", "settings": { @@ -197,51 +203,51 @@ "GenerateVersionHeader": "default" } }, - "debug":{ + "debug": { "description": "Sets ConfigurationGroup=Debug or the value passed by the user.", - "settings":{ + "settings": { "ConfigurationGroup": "Debug" } }, - "release":{ + "release": { "description": "Sets ConfigurationGroup=Release or the value passed by the user.", - "settings":{ + "settings": { "ConfigurationGroup": "Release" } }, - "verbose":{ + "verbose": { "description": "Passes /flp:v=diag to the msbuild command or the value passed by the user.", - "settings":{ + "settings": { "MsBuildLogging": "/flp:v=diag" } }, - "cmakelog":{ + "cmakelog": { "description": "Writes msbuild log to cmake.log", - "settings":{ + "settings": { "MsBuildLogging": "/flp:v=diag;LogFile=msbuild-cmake.log" } }, - "os":{ + "os": { "description": "Sets OSGroup=AnyOS or the value passed by the user.", - "settings":{ + "settings": { "OSGroup": "default" } }, - "portable":{ + "portable": { "description": "Make the build-native script generate binaries that are portable for the platform.", "settings": { - "PortableBuild":"true" + "PortableBuild": "true" } - }, - "skipTests":{ + }, + "skipTests": { "description": "Skips running tests", - "settings":{ + "settings": { "SkipTests": "true" } }, - "disableCrossgen":{ + "disableCrossgen": { "description": "Disable crossgen during the build", - "settings":{ + "settings": { "DisableCrossgen": "true" } } From d8489a67e56303d27ad0eae5fed1c7fc1980a0be Mon Sep 17 00:00:00 2001 From: Jiyoung Giuliana Yun Date: Thu, 18 May 2017 09:21:45 +0900 Subject: [PATCH 444/625] Do not add MSTestResults in armel builds (#2421) Fixed Tizen armel Release CI failed issue --- netci.groovy | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/netci.groovy b/netci.groovy index c7e20c89..2f631258 100644 --- a/netci.groovy +++ b/netci.groovy @@ -93,7 +93,7 @@ platformList.each { platform -> Utilities.setMachineAffinity(newJob, os, version) Utilities.standardJobSetup(newJob, project, isPR, "*/${branch}") - if (!(architecture == 'arm')) { + if (!(architecture == 'arm' || architecture == 'armel') ) { Utilities.addMSTestResults(newJob, '**/*-testResults.trx') } From 5681ee8e91e5e0c8cc0f2ecdef783ad3f2595dbc Mon Sep 17 00:00:00 2001 From: chcosta Date: Thu, 18 May 2017 09:18:54 -0700 Subject: [PATCH 445/625] Strip xplat symbols and repackage (#2430) * Staging xplay sym stripping * Symbols are being stripped, need to package them * Package xplat symbols * Add _.pdb placeholder * Strip symbols for apphost and dotnet * Use tools version of pdb placeholder * Strip xplat symbols and repackage * Update official builds * Add EOF newlines * Remove debug message * Move cmakeoutput path properties --- buildpipeline/pipeline.json | 6 +- config.json | 12 ++ src/corehost/CMakeLists.txt | 124 ++++++++++++++++++ src/corehost/build.proj | 15 ++- src/corehost/build.sh | 7 +- src/corehost/cli/dll/CMakeLists.txt | 1 + src/corehost/cli/exe/apphost/CMakeLists.txt | 2 + src/corehost/cli/exe/dotnet/CMakeLists.txt | 2 + src/corehost/cli/fxr/CMakeLists.txt | 2 +- src/dir.props | 6 +- ...s_NT.Microsoft.NETCore.DotNetAppHost.props | 3 - ...dows_NT.Microsoft.NETCore.DotNetHost.props | 3 - ...T.Microsoft.NETCore.DotNetHostPolicy.props | 3 - ...Microsoft.NETCore.DotNetHostResolver.props | 3 - src/pkg/projects/dir.targets | 37 ++++++ 15 files changed, 203 insertions(+), 23 deletions(-) diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 5b40fe39..21bca77f 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -20,7 +20,7 @@ "Parameters": { "PB_DistroRid": "rhel.7.2-x64", "PB_DockerTag": "rhel7_prereqs_2", - "PB_AdditionalBuildArguments":"-PortableBuild=true", + "PB_AdditionalBuildArguments":"-PortableBuild=true -strip-symbols", "PB_PortableBuild": "true" }, "ReportingParameters": { @@ -36,7 +36,7 @@ "PB_DistroRid": "ubuntu.14.04-arm", "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", "PB_TargetArchitecture": "arm", - "PB_AdditionalBuildArguments":"-TargetArchitecture=arm -DistroRid=linux-arm -DisableCrossgen=true -PortableBuild=true -SkipTests=true -CrossBuild=true", + "PB_AdditionalBuildArguments":"-TargetArchitecture=arm -DistroRid=linux-arm -DisableCrossgen=true -PortableBuild=true -SkipTests=true -CrossBuild=true -strip-symbols", "PB_CrossBuildArgs": "-e ROOTFS_DIR ", "PB_PortableBuild": "true" }, @@ -50,7 +50,7 @@ { "Name": "Core-Setup-OSX-BT", "Parameters": { - "PB_PortableBuildArg": "-PortableBuild=true", + "PB_PortableBuildArg": "-PortableBuild=true -strip-symbols", "PB_PortableBuild": "true" }, "ReportingParameters": { diff --git a/config.json b/config.json index 491ce0f8..9e7dd6f6 100644 --- a/config.json +++ b/config.json @@ -72,6 +72,12 @@ "values": [], "defaultValue": "/flp:v=normal" }, + "StripSymbols": { + "description": "Pass additional argument to native build to configure symbol stripping.", + "valueType": "property", + "values": ["true", "false"], + "defaultValue": false + }, "Project": { "description": "Project where the commands are going to be applied.", "valueType": "passThrough", @@ -244,6 +250,12 @@ "settings":{ "DisableCrossgen": "true" } + }, + "strip-symbols": { + "description": "Strip native symbols.", + "settings": { + "StripSymbols": true + } } }, "defaultValues":{ diff --git a/src/corehost/CMakeLists.txt b/src/corehost/CMakeLists.txt index 0a76ce4f..f5c57422 100644 --- a/src/corehost/CMakeLists.txt +++ b/src/corehost/CMakeLists.txt @@ -1,2 +1,126 @@ cmake_minimum_required (VERSION 2.6) + +if(CMAKE_SYSTEM_NAME STREQUAL Linux) + set(CLR_CMAKE_PLATFORM_UNIX 1) + message("System name Linux") +endif(CMAKE_SYSTEM_NAME STREQUAL Linux) + +if(CMAKE_SYSTEM_NAME STREQUAL Darwin) + set(CLR_CMAKE_PLATFORM_UNIX 1) + message("System name Darwin") +endif(CMAKE_SYSTEM_NAME STREQUAL Darwin) + +if(CMAKE_SYSTEM_NAME STREQUAL FreeBSD) + set(CLR_CMAKE_PLATFORM_UNIX 1) + add_definitions(-D_BSD_SOURCE) # required for getline + message("System name FreeBSD") +endif(CMAKE_SYSTEM_NAME STREQUAL FreeBSD) + +if(CMAKE_SYSTEM_NAME STREQUAL OpenBSD) + set(CLR_CMAKE_PLATFORM_UNIX 1) + message("System name OpenBSD") +endif(CMAKE_SYSTEM_NAME STREQUAL OpenBSD) + +if(CMAKE_SYSTEM_NAME STREQUAL NetBSD) + set(CLR_CMAKE_PLATFORM_UNIX 1) + message("System name NetBSD") +endif(CMAKE_SYSTEM_NAME STREQUAL NetBSD) + +if(CMAKE_SYSTEM_NAME STREQUAL SunOS) + set(CLR_CMAKE_PLATFORM_UNIX 1) + message("System name SunOS") +endif(CMAKE_SYSTEM_NAME STREQUAL SunOS) + +if (NOT WIN32) + if (CMAKE_SYSTEM_NAME STREQUAL Darwin) + # Ensure that dsymutil and strip are present + find_program(DSYMUTIL dsymutil) + if (DSYMUTIL STREQUAL "DSYMUTIL-NOTFOUND") + message(FATAL_ERROR "dsymutil not found") + endif() + + find_program(STRIP strip) + if (STRIP STREQUAL "STRIP-NOTFOUND") + message(FATAL_ERROR "strip not found") + endif() + else (CMAKE_SYSTEM_NAME STREQUAL Darwin) + # Ensure that objcopy is present + if(DEFINED ENV{CROSSCOMPILE}) + if(CMAKE_SYSTEM_PROCESSOR STREQUAL armv7l OR CMAKE_SYSTEM_PROCESSOR STREQUAL aarch64 OR CMAKE_SYSTEM_PROCESSOR STREQUAL i686) + find_program(OBJCOPY ${TOOLCHAIN}-objcopy) + else() + message(FATAL_ERROR "Only AMD64, X86, ARM64 and ARM are supported") + endif() + else() + find_program(OBJCOPY objcopy) + endif() + if (OBJCOPY STREQUAL "OBJCOPY-NOTFOUND" AND NOT CMAKE_SYSTEM_PROCESSOR STREQUAL i686) + message(FATAL_ERROR "objcopy not found") + endif() + endif (CMAKE_SYSTEM_NAME STREQUAL Darwin) +endif () + +function(strip_symbols targetName outputFilename) + if(CLR_CMAKE_PLATFORM_UNIX) + if(STRIP_SYMBOLS) + + # On the older version of cmake (2.8.12) used on Ubuntu 14.04 the TARGET_FILE + # generator expression doesn't work correctly returning the wrong path and on + # the newer cmake versions the LOCATION property isn't supported anymore. + if(CMAKE_VERSION VERSION_EQUAL 3.0 OR CMAKE_VERSION VERSION_GREATER 3.0) + set(strip_source_file $) + else() + get_property(strip_source_file TARGET ${targetName} PROPERTY LOCATION) + endif() + + if(CMAKE_SYSTEM_NAME STREQUAL Darwin) + set(strip_destination_file ${strip_source_file}.dwarf) + + add_custom_command( + TARGET ${targetName} + POST_BUILD + VERBATIM + COMMAND ${DSYMUTIL} --flat --minimize ${strip_source_file} + COMMAND ${STRIP} -u -r ${strip_source_file} + COMMENT Stripping symbols from ${strip_source_file} into file ${strip_destination_file} + ) + else(CMAKE_SYSTEM_NAME STREQUAL Darwin) + set(strip_destination_file ${strip_source_file}.dbg) + + add_custom_command( + TARGET ${targetName} + POST_BUILD + VERBATIM + COMMAND ${OBJCOPY} --only-keep-debug ${strip_source_file} ${strip_destination_file} + COMMAND ${OBJCOPY} --strip-unneeded ${strip_source_file} + COMMAND ${OBJCOPY} --add-gnu-debuglink=${strip_destination_file} ${strip_source_file} + COMMENT Stripping symbols from ${strip_source_file} into file ${strip_destination_file} + ) + endif(CMAKE_SYSTEM_NAME STREQUAL Darwin) + + set(${outputFilename} ${strip_destination_file} PARENT_SCOPE) + endif(STRIP_SYMBOLS) + endif(CLR_CMAKE_PLATFORM_UNIX) +endfunction() + +function(install_library_and_symbols targetName) + strip_symbols(${targetName} strip_destination_file) + + # On the older version of cmake (2.8.12) used on Ubuntu 14.04 the TARGET_FILE + # generator expression doesn't work correctly returning the wrong path and on + # the newer cmake versions the LOCATION property isn't supported anymore. + if(CMAKE_VERSION VERSION_EQUAL 3.0 OR CMAKE_VERSION VERSION_GREATER 3.0) + set(install_source_file $) + else() + get_property(install_source_file TARGET ${targetName} PROPERTY LOCATION) + endif() + + install(PROGRAMS ${install_source_file} DESTINATION .) + if(WIN32) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/$/${targetName}.pdb DESTINATION PDB) + else() + install(FILES ${strip_destination_file} DESTINATION .) + endif() +endfunction() + add_subdirectory(cli) diff --git a/src/corehost/build.proj b/src/corehost/build.proj index bd20b95e..3d480e00 100644 --- a/src/corehost/build.proj +++ b/src/corehost/build.proj @@ -14,10 +14,14 @@ Condition="'$(OSGroup)' != 'Windows_NT'" DependsOnTargets="GetLatestCommitHash"> + $(IntermediateOutputRootPath)corehost\cmake\ + $(CMakeBuildDir)cli\fxr\$(DotnetHostFxrBaseName) + $(CMakeBuildDir)cli\dll\$(HostPolicyBaseName) + --arch $(TargetArchitecture) --apphostver $(AppHostVersion) --hostver $(HostVersion) --fxrver $(HostResolverVersion) --policyver $(HostPolicyVersion) --commithash $(LatestCommit) $(BuildArgs) -portable - $(IntermediateOutputRootPath)corehost\cmake\ - $(BuildArgs) --cross + $(BuildArgs) --cross + $(BuildArgs) --stripsymbols @@ -30,8 +34,11 @@ - - + + + + + lib + .so .dll .dylib - .so + .dbg + .dwarf + .pdb + $(LibPrefix)hostfxr$(LibSuffix) $(LibPrefix)hostpolicy$(LibSuffix) diff --git a/src/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props b/src/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props index 0e598ce8..29eb5dbb 100644 --- a/src/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetAppHost/runtime.Windows_NT.Microsoft.NETCore.DotNetAppHost.props @@ -2,9 +2,6 @@ - - true - runtimes/$(PackageTargetRuntime)/native diff --git a/src/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props b/src/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props index 3f97b80b..87ff19bf 100644 --- a/src/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHost/runtime.Windows_NT.Microsoft.NETCore.DotNetHost.props @@ -2,9 +2,6 @@ - - true - runtimes/$(PackageTargetRuntime)/native diff --git a/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props b/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props index 8f9e9b80..107a7fd6 100644 --- a/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHostPolicy/runtime.Windows_NT.Microsoft.NETCore.DotNetHostPolicy.props @@ -2,9 +2,6 @@ - - true - runtimes/$(PackageTargetRuntime)/native diff --git a/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props b/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props index 580df8f3..10268f6f 100644 --- a/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props +++ b/src/pkg/projects/Microsoft.NETCore.DotNetHostResolver/runtime.Windows_NT.Microsoft.NETCore.DotNetHostResolver.props @@ -2,9 +2,6 @@ - - true - runtimes/$(PackageTargetRuntime)/native diff --git a/src/pkg/projects/dir.targets b/src/pkg/projects/dir.targets index 6055b03f..868e4b5e 100644 --- a/src/pkg/projects/dir.targets +++ b/src/pkg/projects/dir.targets @@ -6,6 +6,43 @@ true + + + + + + + + + + + + + + + + + true + + + + + true + + + + + runtimes/$(PackageTargetRuntime)/native + true + + + + From 7fdc23923d2f4352eac6e32d92be0e109e9d18aa Mon Sep 17 00:00:00 2001 From: John Beisner Date: Thu, 18 May 2017 14:21:37 -0700 Subject: [PATCH 446/625] Enabling SDK mutilevel lookup to pick the highest semantical version out of all viable directories in the search stack. --- src/corehost/cli/fxr/fx_muxer.cpp | 98 ++++++++++++------- .../GivenThatICareAboutMultilevelSDKLookup.cs | 48 ++++----- 2 files changed, 91 insertions(+), 55 deletions(-) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index 78980e19..441e6931 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -563,7 +563,7 @@ pal::string_t fx_muxer_t::resolve_cli_version(const pal::string_t& global_json) return retval; } -pal::string_t resolve_sdk_version(pal::string_t sdk_path) +pal::string_t resolve_sdk_version(pal::string_t sdk_path, bool parse_only_production) { trace::verbose(_X("--- Resolving SDK version from SDK dir [%s]"), sdk_path.c_str()); @@ -577,7 +577,7 @@ pal::string_t resolve_sdk_version(pal::string_t sdk_path) trace::verbose(_X("Considering version... [%s]"), version.c_str()); fx_ver_t ver(-1, -1, -1); - if (fx_ver_t::parse(version, &ver, false)) // false -- implies both production and prerelease. + if (fx_ver_t::parse(version, &ver, parse_only_production)) { max_ver = std::max(ver, max_ver); } @@ -589,10 +589,10 @@ pal::string_t resolve_sdk_version(pal::string_t sdk_path) trace::verbose(_X("Checking if resolved SDK dir [%s] exists"), sdk_path.c_str()); if (pal::directory_exists(sdk_path)) { + trace::verbose(_X("Resolved SDK dir is [%s]"), sdk_path.c_str()); retval = max_ver_str; } - trace::verbose(_X("Resolved SDK dir is [%s]"), sdk_path.c_str()); return retval; } @@ -609,6 +609,24 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, pal::stri return resolve_sdk_dotnet_path(own_dir, cwd, cli_sdk); } +bool higher_sdk_version(const pal::string_t& new_version, pal::string_t* version, bool parse_only_production) +{ + bool retval = false; + fx_ver_t ver(-1, -1, -1); + fx_ver_t new_ver(-1, -1, -1); + + if (fx_ver_t::parse(new_version, &new_ver, parse_only_production)) + { + if (!fx_ver_t::parse(*version, &ver, parse_only_production) || (new_ver > ver)) + { + version->assign(new_version); + retval = true; + } + } + + return retval; +} + bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal::string_t& cwd, pal::string_t* cli_sdk) { pal::string_t global; @@ -661,47 +679,61 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal bool cli_version_specified = false; pal::string_t cli_version; - pal::string_t probing_cli_version; - pal::string_t probing_sdk_path; + pal::string_t sdk_path; + pal::string_t global_cli_version; + + if (!global.empty()) + { + global_cli_version = resolve_cli_version(global); + if (!global_cli_version.empty()) + { + cli_version_specified = true; + } + } for (pal::string_t dir : hive_dir) { trace::verbose(_X("Searching SDK directory in [%s]"), dir.c_str()); - pal::string_t sdk_path = dir; - append_path(&sdk_path, _X("sdk")); - if (!global.empty()) - { - probing_cli_version = resolve_cli_version(global); - if (!probing_cli_version.empty()) - { - cli_version_specified = true; - probing_sdk_path = sdk_path; - append_path(&probing_sdk_path, probing_cli_version.c_str()); + pal::string_t current_sdk_path = dir; + append_path(¤t_sdk_path, _X("sdk")); - if (pal::directory_exists(probing_sdk_path)) - { - trace::verbose(_X("CLI directory [%s] from global.json exists"), probing_sdk_path.c_str()); - cli_version = probing_cli_version; - } - else - { - trace::verbose(_X("CLI directory [%s] from global.json doesn't exist"), probing_sdk_path.c_str()); - } + if (cli_version_specified) + { + pal::string_t probing_sdk_path = current_sdk_path; + append_path(&probing_sdk_path, global_cli_version.c_str()); + + if (pal::directory_exists(probing_sdk_path)) + { + trace::verbose(_X("CLI directory [%s] from global.json exists"), probing_sdk_path.c_str()); + cli_version = global_cli_version; + sdk_path = current_sdk_path; + // Use the first matching version + break; + } + else + { + trace::verbose(_X("CLI directory [%s] from global.json doesn't exist"), probing_sdk_path.c_str()); } } - if (cli_version.empty() && !cli_version_specified) + else { - cli_version = resolve_sdk_version(sdk_path); - } - if (!cli_version.empty()) - { - append_path(&sdk_path, cli_version.c_str()); - cli_sdk->assign(sdk_path); - trace::verbose(_X("Found CLI SDK in: %s"), cli_sdk->c_str()); - return true; + bool parse_only_production = false; // false -- implies both production and prerelease. + pal::string_t new_cli_version = resolve_sdk_version(current_sdk_path, parse_only_production); + if (higher_sdk_version(new_cli_version, &cli_version, parse_only_production)) + { + sdk_path = current_sdk_path; + } } } + if (!cli_version.empty()) + { + append_path(&sdk_path, cli_version.c_str()); + cli_sdk->assign(sdk_path); + trace::verbose(_X("Found CLI SDK in: %s"), cli_sdk->c_str()); + return true; + } + if (cli_version_specified) { trace::error(_X("The specified SDK version [%s] from global.json [%s] not found; install specified SDK version"), cli_version.c_str(), global.c_str()); diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index 306883b2..8eb200f3 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -253,14 +253,15 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup var dotnet = fixture.BuiltDotnet; - // Add a dummy version in the exe dir + // Add dummy versions in the exe dir AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0"); + AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.1-dummy"); // Specified CLI version: none // CWD: empty // User: empty - // Exe: 9999.0.0 - // Expected: 9999.0.0 from exe dir + // Exe: 9999.0.0, 9999.0.1-dummy + // Expected: 9999.0.1-dummy from exe dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) @@ -271,7 +272,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.0", _dotnetSdkDllMessageTerminator)); + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.1-dummy", _dotnetSdkDllMessageTerminator)); // Add a dummy version in the exe dir AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.1"); @@ -279,7 +280,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // Specified CLI version: none // CWD: empty // User: empty - // Exe: 9999.0.0, 9999.0.1 + // Exe: 9999.0.0, 9999.0.1-dummy, 9999.0.1 // Expected: 9999.0.1 from exe dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) @@ -293,14 +294,15 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .And .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.1", _dotnetSdkDllMessageTerminator)); - // Add a dummy version in the exe dir - AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0-dummy"); + // Add dummy versions + AddAvailableSdkVersions(_userSdkBaseDir, "9999.0.1"); + AddAvailableSdkVersions(_cwdSdkBaseDir, "10000.0.0"); // Specified CLI version: none - // CWD: empty - // User: empty - // Exe: 9999.0.0, 9999.0.1, 9999.0.0-dummy - // Expected: 9999.0.1 from exe dir + // CWD: 10000.0.0 --> should not be picked + // User: 9999.0.1 + // Exe: 9999.0.0, 9999.0.1-dummy, 9999.0.1 + // Expected: 9999.0.1 from user dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) @@ -311,15 +313,15 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.1", _dotnetSdkDllMessageTerminator)); + .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.1", _dotnetSdkDllMessageTerminator)); // Add a dummy version in the exe dir AddAvailableSdkVersions(_exeSdkBaseDir, "10000.0.0-dummy"); // Specified CLI version: none - // CWD: empty - // User: empty - // Exe: 9999.0.0, 9999.0.1, 9999.0.0-dummy, 10000.0.0-dummy + // CWD: 10000.0.0 --> should not be picked + // User: 9999.0.1 + // Exe: 9999.0.0, 9999.0.1-dummy, 9999.0.1, 10000.0.0-dummy // Expected: 10000.0.0-dummy from exe dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) @@ -333,14 +335,14 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .And .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "10000.0.0-dummy", _dotnetSdkDllMessageTerminator)); - // Add a dummy version in the exe dir - AddAvailableSdkVersions(_exeSdkBaseDir, "10000.0.0"); + // Add a dummy version in the user dir + AddAvailableSdkVersions(_userSdkBaseDir, "10000.0.0"); // Specified CLI version: none - // CWD: empty - // User: empty - // Exe: 9999.0.0, 9999.0.1, 9999.0.0-dummy, 10000.0.0-dummy, 10000.0.0 - // Expected: 10000.0.0 from exe dir + // CWD: 10000.0.0 --> should not be picked + // User: 9999.0.1, 10000.0.0 + // Exe: 9999.0.0, 9999.0.1-dummy, 9999.0.1, 10000.0.0-dummy + // Expected: 10000.0.0 from user dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) @@ -351,8 +353,10 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "10000.0.0", _dotnetSdkDllMessageTerminator)); + .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "10000.0.0", _dotnetSdkDllMessageTerminator)); + // Remove dummy folders from user dir + DeleteAvailableSdkVersions(_userSdkBaseDir, "9999.0.1", "10000.0.0"); } // This method adds a list of new sdk version folders in the specified From 3542d52f0bd5ad6df84140120e954e43acd4b79a Mon Sep 17 00:00:00 2001 From: chcosta Date: Thu, 18 May 2017 16:27:13 -0700 Subject: [PATCH 447/625] Create symbols packages, add serviceable attribute, and update assembly info (#2331) * Include copyright info, serviceable attribute, and produce symbols packages for Microsoft.Extensions.DependencyModel and Microsoft.DotNet.PlatformAbstractions * Align AssemblyFileVersion with VersionPrefix, remove env vars from dotnet pack * Add license files * small tweak to packagepath * Add package licenseurl and projecturl --- BuildToolsVersion.txt | 2 +- src/managed/CommonManaged.props | 20 ++++++++++++++++++++ src/managed/dir.proj | 18 ++++++++++-------- src/pkg/packaging/dir.proj | 2 +- 4 files changed, 32 insertions(+), 10 deletions(-) diff --git a/BuildToolsVersion.txt b/BuildToolsVersion.txt index d58933b4..e079aa20 100644 --- a/BuildToolsVersion.txt +++ b/BuildToolsVersion.txt @@ -1 +1 @@ -2.0.0-prerelease-01611-07 +2.0.0-prerelease-01616-04 diff --git a/src/managed/CommonManaged.props b/src/managed/CommonManaged.props index 4361fd16..b15a7f12 100644 --- a/src/managed/CommonManaged.props +++ b/src/managed/CommonManaged.props @@ -6,8 +6,15 @@ $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)../..'))/ 2.0.0 + $(VersionPrefix) true true + true + true + https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT + https://dot.net + $(RepoRoot)LICENSE.TXT + $(RepoRoot)THIRD-PARTY-NOTICES.TXT @@ -26,4 +33,17 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/managed/dir.proj b/src/managed/dir.proj index ced354b0..69ec1759 100644 --- a/src/managed/dir.proj +++ b/src/managed/dir.proj @@ -3,19 +3,21 @@ - - - - - /p:Configuration=$(ConfigurationGroup) - + + - + + /p:Configuration=$(ConfigurationGroup) + $(BuildArgs) /p:LatestCommit=$(LatestCommit) + $(BuildArgs) /p:BuiltByString="$(BuiltByString)" + + + diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 3fe82758..c66170de 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -172,7 +172,7 @@ --version-suffix $(VersionSuffix) - From a2e09b8d6ac6b251d961b684ff34887a2bcbd3c7 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Thu, 18 May 2017 19:38:56 -0700 Subject: [PATCH 448/625] Move Core-Setup to 2.1 Preview1 (#2422) --- branchinfo.txt | 4 ++-- dir.props | 6 +++--- src/managed/CommonManaged.props | 2 +- .../Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj | 5 ++++- .../Microsoft.Net.UWPCoreRuntimeSdk.pkgproj | 2 +- 5 files changed, 11 insertions(+), 8 deletions(-) diff --git a/branchinfo.txt b/branchinfo.txt index 4c97cb55..a00ff3bc 100644 --- a/branchinfo.txt +++ b/branchinfo.txt @@ -2,10 +2,10 @@ # Any line that is not blank and does not start with '#' is interpreted as a variable to set. # Each line is expected to be in the format "[Name]=[Value]". MAJOR_VERSION=2 -MINOR_VERSION=0 +MINOR_VERSION=1 PATCH_VERSION=0 STABILIZE_PACKAGE_VERSION=false LOCK_HOST_VERSION=false -RELEASE_SUFFIX=preview2 +RELEASE_SUFFIX=preview1 CHANNEL=master BRANCH_NAME=master diff --git a/dir.props b/dir.props index b3c18d14..4d0a0d20 100644 --- a/dir.props +++ b/dir.props @@ -7,12 +7,12 @@ 2 - 0 + 1 0 false - preview2 + preview1 $(PreReleaseLabel) - Preview 2 + Preview 1 master master diff --git a/src/managed/CommonManaged.props b/src/managed/CommonManaged.props index b15a7f12..de4a7332 100644 --- a/src/managed/CommonManaged.props +++ b/src/managed/CommonManaged.props @@ -5,7 +5,7 @@ $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)../..'))/ - 2.0.0 + 2.1.0 $(VersionPrefix) true true diff --git a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index 9a4bda0c..e5c915f0 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -6,7 +6,10 @@ $(SharedFrameworkNugetVersion) - netcoreapp$([System.Version]::Parse('$(ProductionVersion)').ToString(2)) + + + + netcoreapp2.0 true true false diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj index 9c4a846d..0b6ea180 100644 --- a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj @@ -3,7 +3,7 @@ - 2.0.0 + $(ProductVersion) From 5eca223c1b4b0b4666b37306851c7abd02fbc57a Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Thu, 18 May 2017 20:45:24 -0700 Subject: [PATCH 449/625] Update CoreFx, WCF to preview2-25319-01, preview2-25317-01, respectively (#2440) --- dependencies.props | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/dependencies.props b/dependencies.props index 9a044357..5467b20f 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 703d40525af4a09f5566cd3d8f334b3736b68fae + 61076147ca863b39fc5d32253f31d889ccfd1d12 fcd99ed86a703a16698fcd0027707739c8ef3501 cddd078e3efc27b2fc23c38d8028e3b647cd4fe3 - cddd078e3efc27b2fc23c38d8028e3b647cd4fe3 + 61076147ca863b39fc5d32253f31d889ccfd1d12 - 4.4.0-preview2-25316-01 - 2.0.0-preview2-25316-01 + 4.5.0-preview2-25319-01 + 2.1.0-preview2-25319-01 2.0.0-preview2-25316-03 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview2-25316-01 1.4.1 - 4.4.0-preview2-25316-01 + 4.4.0-preview2-25317-01 From 4b5daa46104aa041645329d470842d3c1724a2eb Mon Sep 17 00:00:00 2001 From: John Beisner Date: Fri, 19 May 2017 08:53:37 -0700 Subject: [PATCH 450/625] Changes per code review... --- src/corehost/cli/fxr/fx_muxer.cpp | 37 +++++++++++++------------------ 1 file changed, 16 insertions(+), 21 deletions(-) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index 441e6931..806ed918 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -677,7 +677,6 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal hive_dir.push_back(global_dir); } - bool cli_version_specified = false; pal::string_t cli_version; pal::string_t sdk_path; pal::string_t global_cli_version; @@ -685,10 +684,6 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal if (!global.empty()) { global_cli_version = resolve_cli_version(global); - if (!global_cli_version.empty()) - { - cli_version_specified = true; - } } for (pal::string_t dir : hive_dir) @@ -697,7 +692,16 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal pal::string_t current_sdk_path = dir; append_path(¤t_sdk_path, _X("sdk")); - if (cli_version_specified) + if (global_cli_version.empty()) + { + bool parse_only_production = false; // false -- implies both production and prerelease. + pal::string_t new_cli_version = resolve_sdk_version(current_sdk_path, parse_only_production); + if (higher_sdk_version(new_cli_version, &cli_version, parse_only_production)) + { + sdk_path = current_sdk_path; + } + } + else { pal::string_t probing_sdk_path = current_sdk_path; append_path(&probing_sdk_path, global_cli_version.c_str()); @@ -715,17 +719,8 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal trace::verbose(_X("CLI directory [%s] from global.json doesn't exist"), probing_sdk_path.c_str()); } } - else - { - bool parse_only_production = false; // false -- implies both production and prerelease. - pal::string_t new_cli_version = resolve_sdk_version(current_sdk_path, parse_only_production); - if (higher_sdk_version(new_cli_version, &cli_version, parse_only_production)) - { - sdk_path = current_sdk_path; - } - } } - + if (!cli_version.empty()) { append_path(&sdk_path, cli_version.c_str()); @@ -734,14 +729,14 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal return true; } - if (cli_version_specified) - { - trace::error(_X("The specified SDK version [%s] from global.json [%s] not found; install specified SDK version"), cli_version.c_str(), global.c_str()); - } - else + if (global_cli_version.empty()) { trace::verbose(_X("It was not possible to find any SDK version")); } + else + { + trace::error(_X("The specified SDK version [%s] from global.json [%s] not found; install specified SDK version"), cli_version.c_str(), global.c_str()); + } return false; } From c06d6de5805a94979114df1bc40b7720ea915f92 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Fri, 19 May 2017 09:08:42 -0700 Subject: [PATCH 451/625] Update Standard, WCF to preview1-25319-01, preview1-25319-01, respectively (#2448) --- dependencies.props | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dependencies.props b/dependencies.props index 5467b20f..e2e15648 100644 --- a/dependencies.props +++ b/dependencies.props @@ -11,8 +11,8 @@ 61076147ca863b39fc5d32253f31d889ccfd1d12 fcd99ed86a703a16698fcd0027707739c8ef3501 - cddd078e3efc27b2fc23c38d8028e3b647cd4fe3 - 61076147ca863b39fc5d32253f31d889ccfd1d12 + a10b32352e820a22d976e9df11b0e737443045e2 + a10b32352e820a22d976e9df11b0e737443045e2 @@ -20,9 +20,9 @@ 2.1.0-preview2-25319-01 2.0.0-preview2-25316-03 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.0.0-preview2-25316-01 + 2.1.0-preview1-25319-01 1.4.1 - 4.4.0-preview2-25317-01 + 4.5.0-preview1-25319-01 From 25e665fd22d304ecd86498c1f24b9d7b1397e389 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Fri, 19 May 2017 13:37:44 -0700 Subject: [PATCH 452/625] Finalize checksums --- publish/publish.proj | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/publish/publish.proj b/publish/publish.proj index 3cc9faf4..37ec7a75 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -99,6 +99,22 @@ FinalizeContainer="Runtime/$(SharedFrameworkNugetVersion)" ForcePublish="true" Condition="'@(_MissingBlobNames)' == ''" /> + + + + + Date: Fri, 19 May 2017 17:02:48 -0500 Subject: [PATCH 453/625] Fix update dotnet/versions repo to update the correct path PB_Branch isn't a variable that flows through pipe-build. Need to use SourceBranch instead. --- buildpipeline/Core-Setup-Publish.json | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/buildpipeline/Core-Setup-Publish.json b/buildpipeline/Core-Setup-Publish.json index 2ad1b60a..26017418 100644 --- a/buildpipeline/Core-Setup-Publish.json +++ b/buildpipeline/Core-Setup-Publish.json @@ -117,7 +117,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:GitHubUser=$(PB_GitHubUser) /p:GitHubEmail=$(PB_GitHubEmail) /p:GitHubAuthToken=$(GITHUB_PASSWORD) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(PB_Branch) /p:Finalize=true /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", + "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:GitHubUser=$(PB_GitHubUser) /p:GitHubEmail=$(PB_GitHubEmail) /p:GitHubAuthToken=$(GITHUB_PASSWORD) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(SourceBranch) /p:Finalize=true /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -258,7 +258,7 @@ "value": "$(Build.SourcesDirectory)\\core-setup" }, "PB_VsoRepoUrl": { - "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" + "value": "--branch $(SourceBranch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" }, "PB_AzureAccountName": { "value": "dotnetcli" @@ -274,9 +274,6 @@ "value": null, "isSecret": true }, - "PB_Branch": { - "value": "master" - }, "SourceVersion": { "value": "HEAD" }, @@ -378,4 +375,4 @@ "state": "wellFormed", "revision": 418097676 } -} \ No newline at end of file +} From 1cec40d680ce75c78fc41c776cc1bb7e523cd7ec Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Fri, 19 May 2017 15:09:07 -0700 Subject: [PATCH 454/625] Fix Finalization of UniversalWindowsPlatform packages --- dir.props | 3 +++ publish/publish.proj | 2 ++ .../Microsoft.NETCore.UniversalWindowsPlatform.pkgproj | 2 +- tools-local/tasks/FinalizeBuild.cs | 5 ++++- 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/dir.props b/dir.props index 4d0a0d20..3ac162ea 100644 --- a/dir.props +++ b/dir.props @@ -74,6 +74,9 @@ $(ProductVersion) + 5.4.0 + $(UWPCoreRuntimeSdkVersion)$(ProductVersionSuffix) + $(SharedFrameworkNugetVersion) - 61076147ca863b39fc5d32253f31d889ccfd1d12 - fcd99ed86a703a16698fcd0027707739c8ef3501 - a10b32352e820a22d976e9df11b0e737443045e2 - a10b32352e820a22d976e9df11b0e737443045e2 + 5a0606fccb09fce4b47545ae9896139acca547f5 + 5a0606fccb09fce4b47545ae9896139acca547f5 + 5a0606fccb09fce4b47545ae9896139acca547f5 + 5a0606fccb09fce4b47545ae9896139acca547f5 - 4.5.0-preview2-25319-01 - 2.1.0-preview2-25319-01 - 2.0.0-preview2-25316-03 + 4.5.0-preview1-25322-02 + 2.1.0-preview1-25322-02 + 2.1.0-preview1-25321-03 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25319-01 + 2.1.0-preview1-25322-01 1.4.1 - 4.5.0-preview1-25319-01 + 4.5.0-preview1-25322-01 From ef82318df30a4d1c9dc27a2cfb2aed679d7c1953 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Fri, 19 May 2017 14:30:33 -0700 Subject: [PATCH 457/625] Update README to include 2.0.0 links --- README.md | 145 +++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 127 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index a87548e0..073b76a9 100644 --- a/README.md +++ b/README.md @@ -30,30 +30,33 @@ They can be downloaded from [here](https://www.microsoft.com/net/download#core). Daily Builds ------------ -| Platform | Master
[![][build-badge-master]][build-master] | Release/1.1.X
[![][build-badge-1.X.X]][build-1.X.X] | Release/1.0.X
[![][build-badge-1.0.X]][build-1.0.X] | -|---------|:----------:|:----------:|:----------:| -| **Windows (x64)** | [![][win-x64-badge-master]][win-x64-version-master]
[Installer][win-x64-installer-master]
[zip][win-x64-zip-master]
[Symbols (zip)][win-x64-symbols-zip-master] | [![][win-x64-badge-1.1.X]][win-x64-version-1.1.X]
[Installer][win-x64-installer-1.1.X]
[zip][win-x64-zip-1.1.X] | [![][win-x64-badge-preview]][win-x64-version-preview]
[Installer][win-x64-installer-preview]
[zip][win-x64-zip-preview] | -| **Windows (x86)** | [![][win-x86-badge-master]][win-x86-version-master]
[Installer][win-x86-installer-master]
[zip][win-x86-zip-master]
[Symbols (zip)][win-x86-symbols-zip-master] | [![][win-x86-badge-1.1.X]][win-x86-version-1.1.X]
[Installer][win-x86-installer-1.1.X]
[zip][win-x86-zip-1.1.X] | [![][win-x86-badge-preview]][win-x86-version-preview]
[Installer][win-x86-installer-preview]
[zip][win-x86-zip-preview] | -| **Windows (arm32)** | [![][win-arm-badge-master]][win-arm-version-master]
[zip][win-arm-zip-master]
[Symbols (zip)][win-arm-symbols-zip-master] | N/A | N/A | -| **Windows (arm64)** | [![][win-arm64-badge-master]][win-arm64-version-master]
[zip][win-arm64-zip-master]
[Symbols (zip)][win-arm64-symbols-zip-master] | N/A | N/A | -| **Mac OS X (x64)** | [![][osx-badge-master]][osx-version-master]
[Installer][osx-installer-master]
[tar.gz][osx-targz-master]
[Symbols (tar.gz)][osx-symbols-targz-master] | [![][osx-badge-1.1.X]][osx-version-1.1.X]
[Installer][osx-installer-1.1.X]
[tar.gz][osx-targz-1.1.X] | [![][osx-badge-preview]][osx-version-preview]
[Installer][osx-installer-preview]
[tar.gz][osx-targz-preview] | -| **Linux (x64)** (for glibc based OS) | [![][linux-x64-badge-master]][linux-x64-version-master]
[tar.gz][linux-x64-targz-master]
[Symbols (tar.gz)][linux-x64-symbols-targz-master] | N/A | N/A | -| **Linux (armhf)** (for glibc based OS) | [![][linux-arm-badge-master]][linux-arm-version-master]
[tar.gz][linux-arm-targz-master]
[Symbols (tar.gz)][linux-arm-symbols-targz-master] | N/A | N/A | -| **Ubuntu 14.04 (x64)** | [![][ubuntu-14.04-badge-master]][ubuntu-14.04-version-master]
[Host][ubuntu-14.04-host-master]
[Host FX Resolver][ubuntu-14.04-hostfxr-master]
[Shared Framework][ubuntu-14.04-sharedfx-master]
| [![][ubuntu-14.04-badge-1.1.X]][ubuntu-14.04-version-1.1.X]
[Host][ubuntu-14.04-host-1.1.X]
[Host FX Resolver][ubuntu-14.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-14.04-sharedfx-1.1.X]
[tar.gz][ubuntu-14.04-targz-1.1.X] | [![][ubuntu-14.04-badge-preview]][ubuntu-14.04-version-preview]
[Host][ubuntu-14.04-host-preview]
[Host FX Resolver][ubuntu-14.04-hostfxr-preview]
[Shared Framework][ubuntu-14.04-sharedfx-preview]
[tar.gz][ubuntu-14.04-targz-preview] | -| **Ubuntu 16.04 (x64)** | [![][ubuntu-16.04-badge-master]][ubuntu-16.04-version-master]
[Host][ubuntu-16.04-host-master]
[Host FX Resolver][ubuntu-16.04-hostfxr-master]
[Shared Framework][ubuntu-16.04-sharedfx-master]
| [![][ubuntu-16.04-badge-1.1.X]][ubuntu-16.04-version-1.1.X]
[Host][ubuntu-16.04-host-1.1.X]
[Host FX Resolver][ubuntu-16.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.04-sharedfx-1.1.X]
[tar.gz][ubuntu-16.04-targz-1.1.X] | [![][ubuntu-16.04-badge-preview]][ubuntu-16.04-version-preview]
[Host][ubuntu-16.04-host-preview]
[Host FX Resolver][ubuntu-16.04-hostfxr-preview]
[Shared Framework][ubuntu-16.04-sharedfx-preview]
[tar.gz][ubuntu-16.04-targz-preview] | -| **Ubuntu 16.10 (x64)** | [![][ubuntu-16.10-badge-master]][ubuntu-16.10-version-master]
[Host][ubuntu-16.10-host-master]
[Host FX Resolver][ubuntu-16.10-hostfxr-master]
[Shared Framework][ubuntu-16.10-sharedfx-master]
| [![][ubuntu-16.10-badge-1.1.X]][ubuntu-16.10-version-1.1.X]
[Host][ubuntu-16.10-host-1.1.X]
[Host FX Resolver][ubuntu-16.10-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.10-sharedfx-1.1.X]
[tar.gz][ubuntu-16.10-targz-1.1.X] | N/A | -| **Debian 8.2 (x64)** | [![][debian-8.2-badge-master]][debian-8.2-version-master]
[Host][debian-8.2-host-master]
[Host FX Resolver][debian-8.2-hostfxr-master]
[Shared Framework][debian-8.2-sharedfx-master]
| [![][debian-8.2-badge-1.1.X]][debian-8.2-version-1.1.X]
[Host][debian-8.2-host-1.1.X]
[Host FX Resolver][debian-8.2-hostfxr-1.1.X]
[Shared Framework][debian-8.2-sharedfx-1.1.X]
[tar.gz][debian-8.2-targz-1.1.X] | [![][debian-8.2-badge-preview]][debian-8.2-version-preview]
[Host][debian-8.2-host-preview]
[Host FX Resolver][debian-8.2-hostfxr-preview]
[Shared Framework][debian-8.2-sharedfx-preview]
[tar.gz][debian-8.2-targz-preview] | -| **CentOS 7.1 (x64)** | N/A | [![][centos-badge-1.1.X]][centos-version-1.1.X]
[tar.gz][centos-targz-1.1.X] | [![][centos-badge-preview]][centos-version-preview]
[tar.gz][centos-targz-preview] | -| **RHEL 7.2 (x64)** | N/A | [![][rhel-badge-1.1.X]][rhel-version-1.1.X]
[tar.gz][rhel-targz-1.1.X] | [![][rhel-badge-preview]][rhel-version-preview]
[tar.gz][rhel-targz-preview] | -| **Fedora 23 (x64)** | N/A | [![][fedora-23-badge-1.1.X]][fedora-23-version-1.1.X]
[tar.gz][fedora-23-targz-1.1.X] | [![][fedora-23-badge-preview]][fedora-23-version-preview]
[tar.gz][fedora-23-targz-preview] | -| **Fedora 24 (x64)** | N/A | [![][fedora-24-badge-1.1.X]][fedora-24-version-1.1.X]
[tar.gz][fedora-24-targz-1.1.X] | N/A | -| **OpenSUSE 42.1 (x64)** | N/A | [![][opensuse-42.1-badge-1.1.X]][opensuse-42.1-version-1.1.X]
[tar.gz][opensuse-42.1-targz-1.1.X] | N/A | +| Platform | Master
[![][build-badge-master]][build-master] | Release/2.0.X
[![][build-badge-2.0.X]][build-2.0.X] | Release/1.1.X
[![][build-badge-1.X.X]][build-1.X.X] | Release/1.0.X
[![][build-badge-1.0.X]][build-1.0.X] | +|---------|:----------:|:----------:|:----------:|:----------:| +| **Windows (x64)** | [![][win-x64-badge-master]][win-x64-version-master]
[Installer][win-x64-installer-master] ([Checksum][win-x64-installer-checksum-master])
[zip][win-x64-zip-master] ([Checksum][win-x64-zip-checksum-master])
[Symbols (zip)][win-x64-symbols-zip-master] | [![][win-x64-badge-2.0.X]][win-x64-version-2.0.X]
[Installer][win-x64-installer-2.0.X] ([Checksum][win-x64-installer-checksum-2.0.X])
[zip][win-x64-zip-2.0.X] ([Checksum][win-x64-zip-checksum-2.0.X])
[Symbols (zip)][win-x64-symbols-zip-2.0.X] | [![][win-x64-badge-1.1.X]][win-x64-version-1.1.X]
[Installer][win-x64-installer-1.1.X]
[zip][win-x64-zip-1.1.X] | [![][win-x64-badge-preview]][win-x64-version-preview]
[Installer][win-x64-installer-preview]
[zip][win-x64-zip-preview] | +| **Windows (x86)** | [![][win-x86-badge-master]][win-x86-version-master]
[Installer][win-x86-installer-master] ([Checksum][win-x86-installer-checksum-master])
[zip][win-x86-zip-master] ([Checksum][win-x86-zip-checksum-master])
[Symbols (zip)][win-x86-symbols-zip-master] | [![][win-x86-badge-2.0.X]][win-x86-version-2.0.X]
[Installer][win-x86-installer-2.0.X] ([Checksum][win-x86-installer-checksum-2.0.X])
[zip][win-x86-zip-2.0.X] ([Checksum][win-x86-zip-checksum-2.0.X])
[Symbols (zip)][win-x86-symbols-zip-2.0.X] |[![][win-x86-badge-1.1.X]][win-x86-version-1.1.X]
[Installer][win-x86-installer-1.1.X]
[zip][win-x86-zip-1.1.X] | [![][win-x86-badge-preview]][win-x86-version-preview]
[Installer][win-x86-installer-preview]
[zip][win-x86-zip-preview] | +| **Windows (arm32)** | [![][win-arm-badge-master]][win-arm-version-master]
[zip][win-arm-zip-master] ([Checksum][win-arm-zip-checksum-master])
[Symbols (zip)][win-arm-symbols-zip-master] | [![][win-arm-badge-2.0.X]][win-arm-version-2.0.X]
[zip][win-arm-zip-2.0.X] ([Checksum][win-arm-zip-checksum-2.0.X])
[Symbols (zip)][win-arm-symbols-zip-2.0.X] | N/A | N/A | +| **Windows (arm64)** | [![][win-arm64-badge-master]][win-arm64-version-master]
[zip][win-arm64-zip-master] ([Checksum][win-arm64-zip-checksum-master])
[Symbols (zip)][win-arm64-symbols-zip-master] | [![][win-arm64-badge-2.0.X]][win-arm64-version-2.0.X]
[zip][win-arm64-zip-2.0.X] ([Checksum][win-arm64-zip-checksum-2.0.X])
[Symbols (zip)][win-arm64-symbols-zip-2.0.X] | N/A | N/A | +| **Mac OS X (x64)** | [![][osx-badge-master]][osx-version-master]
[Installer][osx-installer-master] ([Checksum][osx-installer-checksum-master])
[tar.gz][osx-targz-master] ([Checksum][osx-targz-checksum-master])
[Symbols (tar.gz)][osx-symbols-targz-master] | [![][osx-badge-2.0.X]][osx-version-2.0.X]
[Installer][osx-installer-2.0.X] ([Checksum][osx-installer-checksum-2.0.X])
[tar.gz][osx-targz-2.0.X] ([Checksum][osx-targz-checksum-2.0.X])
[Symbols (tar.gz)][osx-symbols-targz-2.0.X] | [![][osx-badge-1.1.X]][osx-version-1.1.X]
[Installer][osx-installer-1.1.X]
[tar.gz][osx-targz-1.1.X] | [![][osx-badge-preview]][osx-version-preview]
[Installer][osx-installer-preview]
[tar.gz][osx-targz-preview] | +| **Linux (x64)** (for glibc based OS) | [![][linux-x64-badge-master]][linux-x64-version-master]
[tar.gz][linux-x64-targz-master] ([Checksum][linux-x64-targz-checksum-master])
[Symbols (tar.gz)][linux-x64-symbols-targz-master] | [![][linux-x64-badge-2.0.X]][linux-x64-version-2.0.X]
[tar.gz][linux-x64-targz-2.0.X] ([Checksum][linux-x64-targz-checksum-2.0.X])
[Symbols (tar.gz)][linux-x64-symbols-targz-2.0.X] | N/A | N/A | +| **Linux (armhf)** (for glibc based OS) | [![][linux-arm-badge-master]][linux-arm-version-master]
[tar.gz][linux-arm-targz-master] ([Checksum][linux-arm-targz-checksum-master])
[Symbols (tar.gz)][linux-arm-symbols-targz-master] | [![][linux-arm-badge-2.0.X]][linux-arm-version-2.0.X]
[tar.gz][linux-arm-targz-2.0.X] ([Checksum][linux-arm-targz-checksum-2.0.X])
[Symbols (tar.gz)][linux-arm-symbols-targz-2.0.X] | N/A | N/A | +| **Ubuntu 14.04 (x64)** | [![][ubuntu-14.04-badge-master]][ubuntu-14.04-version-master]
[Host][ubuntu-14.04-host-master] ([Checksum][ubuntu-14.04-host-checksum-master])
[Host FX Resolver][ubuntu-14.04-hostfxr-master] ([Checksum][ubuntu-14.04-hostfxr-checksum-master])
[Shared Framework][ubuntu-14.04-sharedfx-master] ([Checksum][ubuntu-14.04-sharedfx-checksum-master])
| [![][ubuntu-14.04-badge-2.0.X]][ubuntu-14.04-version-2.0.X]
[Host][ubuntu-14.04-host-2.0.X] ([Checksum][ubuntu-14.04-host-checksum-2.0.X])
[Host FX Resolver][ubuntu-14.04-hostfxr-2.0.X] ([Checksum][ubuntu-14.04-hostfxr-checksum-2.0.X])
[Shared Framework][ubuntu-14.04-sharedfx-2.0.X] ([Checksum][ubuntu-14.04-sharedfx-checksum-2.0.X])
| [![][ubuntu-14.04-badge-1.1.X]][ubuntu-14.04-version-1.1.X]
[Host][ubuntu-14.04-host-1.1.X]
[Host FX Resolver][ubuntu-14.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-14.04-sharedfx-1.1.X]
[tar.gz][ubuntu-14.04-targz-1.1.X] | [![][ubuntu-14.04-badge-preview]][ubuntu-14.04-version-preview]
[Host][ubuntu-14.04-host-preview]
[Host FX Resolver][ubuntu-14.04-hostfxr-preview]
[Shared Framework][ubuntu-14.04-sharedfx-preview]
[tar.gz][ubuntu-14.04-targz-preview] | +| **Ubuntu 16.04 (x64)** | [![][ubuntu-16.04-badge-master]][ubuntu-16.04-version-master]
[Host][ubuntu-16.04-host-master] ([Checksum][ubuntu-16.04-host-checksum-master])
[Host FX Resolver][ubuntu-16.04-hostfxr-master] ([Checksum][ubuntu-16.04-hostfxr-checksum-master])
[Shared Framework][ubuntu-16.04-sharedfx-master] ([Checksum][ubuntu-16.04-sharedfx-checksum-master])
| [![][ubuntu-16.04-badge-2.0.X]][ubuntu-16.04-version-2.0.X]
[Host][ubuntu-16.04-host-2.0.X] ([Checksum][ubuntu-16.04-host-checksum-2.0.X])
[Host FX Resolver][ubuntu-16.04-hostfxr-2.0.X] ([Checksum][ubuntu-16.04-hostfxr-checksum-2.0.X])
[Shared Framework][ubuntu-16.04-sharedfx-2.0.X] ([Checksum][ubuntu-16.04-sharedfx-checksum-2.0.X])
| [![][ubuntu-16.04-badge-1.1.X]][ubuntu-16.04-version-1.1.X]
[Host][ubuntu-16.04-host-1.1.X]
[Host FX Resolver][ubuntu-16.04-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.04-sharedfx-1.1.X]
[tar.gz][ubuntu-16.04-targz-1.1.X] | [![][ubuntu-16.04-badge-preview]][ubuntu-16.04-version-preview]
[Host][ubuntu-16.04-host-preview]
[Host FX Resolver][ubuntu-16.04-hostfxr-preview]
[Shared Framework][ubuntu-16.04-sharedfx-preview]
[tar.gz][ubuntu-16.04-targz-preview] | +| **Ubuntu 16.10 (x64)** | [![][ubuntu-16.10-badge-master]][ubuntu-16.10-version-master]
[Host][ubuntu-16.10-host-master] ([Checksum][ubuntu-16.10-host-checksum-master])
[Host FX Resolver][ubuntu-16.10-hostfxr-master] ([Checksum][ubuntu-16.10-hostfxr-checksum-master])
[Shared Framework][ubuntu-16.10-sharedfx-master] ([Checksum][ubuntu-16.10-sharedfx-checksum-master])
| [![][ubuntu-16.10-badge-2.0.X]][ubuntu-16.10-version-2.0.X]
[Host][ubuntu-16.10-host-2.0.X] ([Checksum][ubuntu-16.10-host-checksum-2.0.X])
[Host FX Resolver][ubuntu-16.10-hostfxr-2.0.X] ([Checksum][ubuntu-16.10-hostfxr-checksum-2.0.X])
[Shared Framework][ubuntu-16.10-sharedfx-2.0.X] ([Checksum][ubuntu-16.10-sharedfx-checksum-2.0.X])
| [![][ubuntu-16.10-badge-1.1.X]][ubuntu-16.10-version-1.1.X]
[Host][ubuntu-16.10-host-1.1.X]
[Host FX Resolver][ubuntu-16.10-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.10-sharedfx-1.1.X]
[tar.gz][ubuntu-16.10-targz-1.1.X] | N/A | +| **Debian 8.2 (x64)** | [![][debian-8.2-badge-master]][debian-8.2-version-master]
[Host][debian-8.2-host-master] ([Checksum][debian-8.2-host-checksum-master])
[Host FX Resolver][debian-8.2-hostfxr-master] ([Checksum][debian-8.2-hostfxr-checksum-master])
[Shared Framework][debian-8.2-sharedfx-master] ([Checksum][debian-8.2-sharedfx-checksum-master])
| [![][debian-8.2-badge-2.0.X]][debian-8.2-version-2.0.X]
[Host][debian-8.2-host-2.0.X] ([Checksum][debian-8.2-host-checksum-2.0.X])
[Host FX Resolver][debian-8.2-hostfxr-2.0.X] ([Checksum][debian-8.2-hostfxr-checksum-2.0.X])
[Shared Framework][debian-8.2-sharedfx-2.0.X] ([Checksum][debian-8.2-sharedfx-checksum-2.0.X])
| [![][debian-8.2-badge-1.1.X]][debian-8.2-version-1.1.X]
[Host][debian-8.2-host-1.1.X]
[Host FX Resolver][debian-8.2-hostfxr-1.1.X]
[Shared Framework][debian-8.2-sharedfx-1.1.X]
[tar.gz][debian-8.2-targz-1.1.X] | [![][debian-8.2-badge-preview]][debian-8.2-version-preview]
[Host][debian-8.2-host-preview]
[Host FX Resolver][debian-8.2-hostfxr-preview]
[Shared Framework][debian-8.2-sharedfx-preview]
[tar.gz][debian-8.2-targz-preview] | +| **CentOS 7.1 (x64)** | N/A | N/A | [![][centos-badge-1.1.X]][centos-version-1.1.X]
[tar.gz][centos-targz-1.1.X] | [![][centos-badge-preview]][centos-version-preview]
[tar.gz][centos-targz-preview] | +| **RHEL 7.2 (x64)** | N/A | N/A | [![][rhel-badge-1.1.X]][rhel-version-1.1.X]
[tar.gz][rhel-targz-1.1.X] | [![][rhel-badge-preview]][rhel-version-preview]
[tar.gz][rhel-targz-preview] | +| **Fedora 23 (x64)** | N/A | N/A | [![][fedora-23-badge-1.1.X]][fedora-23-version-1.1.X]
[tar.gz][fedora-23-targz-1.1.X] | [![][fedora-23-badge-preview]][fedora-23-version-preview]
[tar.gz][fedora-23-targz-preview] | +| **Fedora 24 (x64)** | N/A | N/A | [![][fedora-24-badge-1.1.X]][fedora-24-version-1.1.X]
[tar.gz][fedora-24-targz-1.1.X] | N/A | +| **OpenSUSE 42.1 (x64)** | N/A | N/A | [![][opensuse-42.1-badge-1.1.X]][opensuse-42.1-version-1.1.X]
[tar.gz][opensuse-42.1-targz-1.1.X] | N/A | *Note: Our .deb packages are put together slightly differently than the other OS specific installers. Instead of combining everything, we have separate component packages that depend on each other. If you're installing these directly from the .deb files (via dpkg or similar), then you'll need to install them in the order presented above.* [build-badge-master]: https://devdiv.visualstudio.com/_apis/public/build/definitions/0bdbc590-a062-4c3f-b0f6-9383f67865ee/3160/badge [build-master]: https://devdiv.visualstudio.com/DevDiv/_build/index?definitionId=3160&_a=completed +[build-badge-2.0.X]: https://devdiv.visualstudio.com/_apis/public/build/definitions/0bdbc590-a062-4c3f-b0f6-9383f67865ee/6161/badge +[build-2.0.X]: https://devdiv.visualstudio.com/DevDiv/_build/index?definitionId=6161&_a=completed + [build-badge-1.X.X]: https://devdiv.visualstudio.com/_apis/public/build/definitions/0bdbc590-a062-4c3f-b0f6-9383f67865ee/4188/badge [build-1.X.X]: https://devdiv.visualstudio.com/DevDiv/_build/index?definitionId=4188&_a=completed @@ -64,9 +67,19 @@ Daily Builds [win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-x64_Release_version_badge.svg [win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.x64.version [win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.exe +[win-x64-installer-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.exe [win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.zip +[win-x64-zip-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.zip.sha512 [win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-x64.latest.zip +[win-x64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-x64_Release_version_badge.svg +[win-x64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.x64.version +[win-x64-installer-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.exe +[win-x64-installer-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.exe.sha512 +[win-x64-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.zip +[win-x64-zip-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.zip.sha512 +[win-x64-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-win-x64.latest.zip + [win-x64-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x64_Release_version_badge.svg [win-x64-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x64.version [win-x64-installer-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Installers/Latest/dotnet-win-x64.latest.exe @@ -80,9 +93,19 @@ Daily Builds [win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-x86_Release_version_badge.svg [win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.x86.version [win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.exe +[win-x86-installer-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.exe.sha512 [win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.zip +[win-x86-zip-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.zip.sha512 [win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-x86.latest.zip +[win-x86-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-x86_Release_version_badge.svg +[win-x86-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.x86.version +[win-x86-installer-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.exe +[win-x86-installer-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.exe.sha512 +[win-x86-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.zip +[win-x86-zip-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.zip.sha512 +[win-x86-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-win-x86.latest.zip + [win-x86-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x86_Release_version_badge.svg [win-x86-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x86.version [win-x86-installer-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Installers/Latest/dotnet-win-x86.latest.exe @@ -96,19 +119,43 @@ Daily Builds [win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-arm_Release_version_badge.svg [win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.arm.version [win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm.latest.zip +[win-arm-zip-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm.latest.zip.sha512 [win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-arm.latest.zip +[win-arm-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-arm_Release_version_badge.svg +[win-arm-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.arm.version +[win-arm-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm.latest.zip +[win-arm-zip-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm.latest.zip.sha512 +[win-arm-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-win-arm.latest.zip + [win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-arm64_Release_version_badge.svg [win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.arm64.version [win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm64.latest.zip +[win-arm64-zip-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm64.latest.zip.sha512 [win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-arm64.latest.zip +[win-arm64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-arm64_Release_version_badge.svg +[win-arm64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.arm64.version +[win-arm64-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm64.latest.zip +[win-arm64-zip-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm64.latest.zip.sha512 +[win-arm64-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-win-arm64.latest.zip + [osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_osx-x64_Release_version_badge.svg [osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.osx.x64.version [osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.pkg +[osx-installer-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.pkg.sha512 [osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.tar.gz +[osx-targz-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.tar.gz.sha512 [osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz +[osx-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_osx-x64_Release_version_badge.svg +[osx-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.osx.x64.version +[osx-installer-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.pkg +[osx-installer-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.pkg.sha512 +[osx-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.tar.gz +[osx-targz-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.tar.gz.sha512 +[osx-symbols-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz + [osx-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_OSX_x64_Release_version_badge.svg [osx-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.osx.x64.version [osx-installer-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Installers/Latest/dotnet-osx-x64.latest.pkg @@ -123,18 +170,44 @@ Daily Builds [linux-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_linux-x64_Release_version_badge.svg [linux-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.linux.x64.version [linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-x64.latest.tar.gz +[linux-x64-targz-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-x64.latest.tar.gz.sha512 [linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz +[linux-x64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_linux-x64_Release_version_badge.svg +[linux-x64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.linux.x64.version +[linux-x64-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-x64.latest.tar.gz +[linux-x64-targz-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-x64.latest.tar.gz.sha512 +[linux-x64-symbols-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz + [linux-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_linux-arm_Release_version_badge.svg [linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.linux.arm.version [linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-arm.latest.tar.gz +[linux-arm-targz-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-arm.latest.tar.gz [linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-linux-arm.latest.tar.gz +[linux-arm-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_linux-arm_Release_version_badge.svg +[linux-arm-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.linux.arm.version +[linux-arm-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-arm.latest.tar.gz +[linux-arm-targz-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-arm.latest.tar.gz +[linux-arm-symbols-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-linux-arm.latest.tar.gz + [ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg [ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.x64.version [ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.14.04-x64.latest.deb +[ubuntu-14.04-host-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.14.04-x64.latest.deb.sha512 [ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb +[ubuntu-14.04-hostfxr-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb.sha512 [ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb +[ubuntu-14.04-sharedfx-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb.sha512 + +[ubuntu-14.04-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg +[ubuntu-14.04-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.x64.version +[ubuntu-14.04-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.14.04-x64.latest.deb +[ubuntu-14.04-host-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.14.04-x64.latest.deb.sha512 +[ubuntu-14.04-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb +[ubuntu-14.04-hostfxr-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb.sha512 +[ubuntu-14.04-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb +[ubuntu-14.04-sharedfx-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb.sha512 [ubuntu-14.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_x64_Release_version_badge.svg [ubuntu-14.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.x64.version @@ -154,8 +227,20 @@ Daily Builds [ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg [ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.16.04.x64.version [ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.04-x64.latest.deb +[ubuntu-16.04-host-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.04-x64.latest.deb.sha512 [ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb +[ubuntu-16.04-hostfxr-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb.sha512 [ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb +[ubuntu-16.04-sharedfx-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb.sha512 + +[ubuntu-16.04-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg +[ubuntu-16.04-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.16.04.x64.version +[ubuntu-16.04-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.04-x64.latest.deb +[ubuntu-16.04-host-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.04-x64.latest.deb.sha512 +[ubuntu-16.04-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb +[ubuntu-16.04-hostfxr-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb.sha512 +[ubuntu-16.04-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb +[ubuntu-16.04-sharedfx-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb.sha512 [ubuntu-16.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_04_x64_Release_version_badge.svg [ubuntu-16.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.04.x64.version @@ -175,8 +260,20 @@ Daily Builds [ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg [ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.16.10.x64.version [ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.10-x64.latest.deb +[ubuntu-16.10-host-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.10-x64.latest.deb.sha512 [ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb +[ubuntu-16.10-hostfxr-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb.sha512 [ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb +[ubuntu-16.10-sharedfx-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb.sha512 + +[ubuntu-16.10-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg +[ubuntu-16.10-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.16.10.x64.version +[ubuntu-16.10-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.10-x64.latest.deb +[ubuntu-16.10-host-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.10-x64.latest.deb.sha512 +[ubuntu-16.10-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb +[ubuntu-16.10-hostfxr-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb.sha512 +[ubuntu-16.10-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb +[ubuntu-16.10-sharedfx-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb.sha512 [ubuntu-16.10-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_10_x64_Release_version_badge.svg [ubuntu-16.10-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.10.x64.version @@ -189,8 +286,20 @@ Daily Builds [debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_debian.8-x64_Release_version_badge.svg [debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.debian.8.x64.version [debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-debian.8-x64.latest.deb +[debian-8.2-host-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-debian.8-x64.latest.deb.sha512 [debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-debian.8-x64.latest.deb +[debian-8.2-hostfxr-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-debian.8-x64.latest.deb.sha512 [debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-debian.8-x64.latest.deb +[debian-8.2-sharedfx-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-debian.8-x64.latest.deb.sha512 + +[debian-8.2-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_debian.8-x64_Release_version_badge.svg +[debian-8.2-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.debian.8.x64.version +[debian-8.2-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-debian.8-x64.latest.deb +[debian-8.2-host-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-debian.8-x64.latest.deb.sha512 +[debian-8.2-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-debian.8-x64.latest.deb +[debian-8.2-hostfxr-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-debian.8-x64.latest.deb.sha512 +[debian-8.2-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-debian.8-x64.latest.deb +[debian-8.2-sharedfx-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-debian.8-x64.latest.deb.sha512 [debian-8.2-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Debian_x64_Release_version_badge.svg [debian-8.2-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.debian.x64.version From 524b7af6aab39e3a597a49ce31a9044aaf57acdf Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Mon, 22 May 2017 11:09:09 -0700 Subject: [PATCH 458/625] Fix checksum values in publish step --- buildpipeline/Core-Setup-Publish.json | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/buildpipeline/Core-Setup-Publish.json b/buildpipeline/Core-Setup-Publish.json index 26017418..0727b5c3 100644 --- a/buildpipeline/Core-Setup-Publish.json +++ b/buildpipeline/Core-Setup-Publish.json @@ -117,7 +117,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:GitHubUser=$(PB_GitHubUser) /p:GitHubEmail=$(PB_GitHubEmail) /p:GitHubAuthToken=$(GITHUB_PASSWORD) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(SourceBranch) /p:Finalize=true /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", + "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:GitHubUser=$(PB_GitHubUser) /p:GitHubEmail=$(PB_GitHubEmail) /p:GitHubAuthToken=$(GITHUB_PASSWORD) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(SourceBranch) /p:Finalize=true /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -267,6 +267,13 @@ "value": null, "isSecret": true }, + "PB_ChecksumAzureAccountName": { + "value": "dotnetclichecksums" + }, + "PB_ChecksumAzureAccessToken": { + "value": null, + "isSecret": true + }, "PB_VsoAccountName": { "value": "dn-bot" }, From a655380596ed7ad13c4e754fded270eeb30d9a4e Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Mon, 22 May 2017 14:29:33 -0700 Subject: [PATCH 459/625] Pick up debian packages from new format --- publish/dir.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/publish/dir.targets b/publish/dir.targets index 73c9b908..c605f2fa 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -89,7 +89,7 @@ UploadJsonFilename="%(DebInstallerFile.UploadJsonFilename)" PackageName="%(DebInstallerFile.PackageName)" PackageVersion="$(SharedFrameworkNugetVersion)" - UploadUrl="$(BaseUrl)$(ContainerName)/$(Channel)/Installers/$(SharedFrameworkNugetVersion)/%(DebInstallerFile.Filename)%(DebInstallerFile.Extension)" /> + UploadUrl="$(BaseUrl)$(ContainerName)/Runtime/$(SharedFrameworkNugetVersion)/%(DebInstallerFile.Filename)%(DebInstallerFile.Extension)" />
From d8d6475800ae9fb173a759d2f67b4b93a5a7d707 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Mon, 22 May 2017 14:41:45 -0700 Subject: [PATCH 460/625] Update checksum links --- README.md | 88 +++++++++++++++++++++++++++---------------------------- 1 file changed, 44 insertions(+), 44 deletions(-) diff --git a/README.md b/README.md index 073b76a9..b0f7bf20 100644 --- a/README.md +++ b/README.md @@ -67,17 +67,17 @@ Daily Builds [win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-x64_Release_version_badge.svg [win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.x64.version [win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.exe -[win-x64-installer-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.exe +[win-x64-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.exe.sha512 [win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.zip -[win-x64-zip-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.zip.sha512 +[win-x64-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.zip.sha512 [win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-x64.latest.zip [win-x64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-x64_Release_version_badge.svg [win-x64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.x64.version [win-x64-installer-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.exe -[win-x64-installer-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.exe.sha512 +[win-x64-installer-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.exe.sha512 [win-x64-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.zip -[win-x64-zip-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.zip.sha512 +[win-x64-zip-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.zip.sha512 [win-x64-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-win-x64.latest.zip [win-x64-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x64_Release_version_badge.svg @@ -93,17 +93,17 @@ Daily Builds [win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-x86_Release_version_badge.svg [win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.x86.version [win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.exe -[win-x86-installer-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.exe.sha512 +[win-x86-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.exe.sha512 [win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.zip -[win-x86-zip-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.zip.sha512 +[win-x86-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.zip.sha512 [win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-x86.latest.zip [win-x86-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-x86_Release_version_badge.svg [win-x86-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.x86.version [win-x86-installer-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.exe -[win-x86-installer-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.exe.sha512 +[win-x86-installer-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.exe.sha512 [win-x86-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.zip -[win-x86-zip-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.zip.sha512 +[win-x86-zip-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.zip.sha512 [win-x86-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-win-x86.latest.zip [win-x86-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x86_Release_version_badge.svg @@ -119,41 +119,41 @@ Daily Builds [win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-arm_Release_version_badge.svg [win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.arm.version [win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm.latest.zip -[win-arm-zip-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm.latest.zip.sha512 +[win-arm-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm.latest.zip.sha512 [win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-arm.latest.zip [win-arm-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-arm_Release_version_badge.svg [win-arm-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.arm.version [win-arm-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm.latest.zip -[win-arm-zip-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm.latest.zip.sha512 +[win-arm-zip-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm.latest.zip.sha512 [win-arm-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-win-arm.latest.zip [win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-arm64_Release_version_badge.svg [win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.arm64.version [win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm64.latest.zip -[win-arm64-zip-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm64.latest.zip.sha512 +[win-arm64-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm64.latest.zip.sha512 [win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-arm64.latest.zip [win-arm64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-arm64_Release_version_badge.svg [win-arm64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.arm64.version [win-arm64-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm64.latest.zip -[win-arm64-zip-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm64.latest.zip.sha512 +[win-arm64-zip-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm64.latest.zip.sha512 [win-arm64-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-win-arm64.latest.zip [osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_osx-x64_Release_version_badge.svg [osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.osx.x64.version [osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.pkg -[osx-installer-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.pkg.sha512 +[osx-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.pkg.sha512 [osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.tar.gz -[osx-targz-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.tar.gz.sha512 +[osx-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.tar.gz.sha512 [osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz [osx-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_osx-x64_Release_version_badge.svg [osx-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.osx.x64.version [osx-installer-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.pkg -[osx-installer-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.pkg.sha512 +[osx-installer-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.pkg.sha512 [osx-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.tar.gz -[osx-targz-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.tar.gz.sha512 +[osx-targz-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.tar.gz.sha512 [osx-symbols-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz [osx-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_OSX_x64_Release_version_badge.svg @@ -170,44 +170,44 @@ Daily Builds [linux-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_linux-x64_Release_version_badge.svg [linux-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.linux.x64.version [linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-x64.latest.tar.gz -[linux-x64-targz-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-x64.latest.tar.gz.sha512 +[linux-x64-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-x64.latest.tar.gz.sha512 [linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz [linux-x64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_linux-x64_Release_version_badge.svg [linux-x64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.linux.x64.version [linux-x64-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-x64.latest.tar.gz -[linux-x64-targz-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-x64.latest.tar.gz.sha512 +[linux-x64-targz-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-x64.latest.tar.gz.sha512 [linux-x64-symbols-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz [linux-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_linux-arm_Release_version_badge.svg [linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.linux.arm.version [linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-arm.latest.tar.gz -[linux-arm-targz-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-arm.latest.tar.gz +[linux-arm-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-arm.latest.tar.gz [linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-linux-arm.latest.tar.gz [linux-arm-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_linux-arm_Release_version_badge.svg [linux-arm-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.linux.arm.version [linux-arm-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-arm.latest.tar.gz -[linux-arm-targz-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-arm.latest.tar.gz +[linux-arm-targz-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-arm.latest.tar.gz [linux-arm-symbols-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-linux-arm.latest.tar.gz [ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg [ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.x64.version [ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.14.04-x64.latest.deb -[ubuntu-14.04-host-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.14.04-x64.latest.deb.sha512 +[ubuntu-14.04-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.14.04-x64.latest.deb.sha512 [ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb -[ubuntu-14.04-hostfxr-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb.sha512 +[ubuntu-14.04-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb.sha512 [ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb -[ubuntu-14.04-sharedfx-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb.sha512 +[ubuntu-14.04-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb.sha512 [ubuntu-14.04-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg [ubuntu-14.04-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.x64.version [ubuntu-14.04-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.14.04-x64.latest.deb -[ubuntu-14.04-host-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.14.04-x64.latest.deb.sha512 +[ubuntu-14.04-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.14.04-x64.latest.deb.sha512 [ubuntu-14.04-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb -[ubuntu-14.04-hostfxr-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb.sha512 +[ubuntu-14.04-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb.sha512 [ubuntu-14.04-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb -[ubuntu-14.04-sharedfx-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb.sha512 +[ubuntu-14.04-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb.sha512 [ubuntu-14.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_x64_Release_version_badge.svg [ubuntu-14.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.x64.version @@ -227,20 +227,20 @@ Daily Builds [ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg [ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.16.04.x64.version [ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-host-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.04-x64.latest.deb.sha512 +[ubuntu-16.04-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.04-x64.latest.deb.sha512 [ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-hostfxr-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb.sha512 +[ubuntu-16.04-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb.sha512 [ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-sharedfx-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb.sha512 +[ubuntu-16.04-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb.sha512 [ubuntu-16.04-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg [ubuntu-16.04-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.16.04.x64.version [ubuntu-16.04-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-host-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.04-x64.latest.deb.sha512 +[ubuntu-16.04-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.04-x64.latest.deb.sha512 [ubuntu-16.04-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-hostfxr-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb.sha512 +[ubuntu-16.04-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb.sha512 [ubuntu-16.04-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-sharedfx-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb.sha512 +[ubuntu-16.04-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb.sha512 [ubuntu-16.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_04_x64_Release_version_badge.svg [ubuntu-16.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.04.x64.version @@ -260,20 +260,20 @@ Daily Builds [ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg [ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.16.10.x64.version [ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-host-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.10-x64.latest.deb.sha512 +[ubuntu-16.10-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.10-x64.latest.deb.sha512 [ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-hostfxr-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb.sha512 +[ubuntu-16.10-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb.sha512 [ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-sharedfx-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb.sha512 +[ubuntu-16.10-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb.sha512 [ubuntu-16.10-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg [ubuntu-16.10-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.16.10.x64.version [ubuntu-16.10-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-host-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.10-x64.latest.deb.sha512 +[ubuntu-16.10-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.10-x64.latest.deb.sha512 [ubuntu-16.10-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-hostfxr-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb.sha512 +[ubuntu-16.10-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb.sha512 [ubuntu-16.10-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-sharedfx-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb.sha512 +[ubuntu-16.10-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb.sha512 [ubuntu-16.10-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_10_x64_Release_version_badge.svg [ubuntu-16.10-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.10.x64.version @@ -286,20 +286,20 @@ Daily Builds [debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_debian.8-x64_Release_version_badge.svg [debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.debian.8.x64.version [debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-debian.8-x64.latest.deb -[debian-8.2-host-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-debian.8-x64.latest.deb.sha512 +[debian-8.2-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-debian.8-x64.latest.deb.sha512 [debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-debian.8-x64.latest.deb -[debian-8.2-hostfxr-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-debian.8-x64.latest.deb.sha512 +[debian-8.2-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-debian.8-x64.latest.deb.sha512 [debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-debian.8-x64.latest.deb -[debian-8.2-sharedfx-checksum-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-debian.8-x64.latest.deb.sha512 +[debian-8.2-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-debian.8-x64.latest.deb.sha512 [debian-8.2-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_debian.8-x64_Release_version_badge.svg [debian-8.2-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.debian.8.x64.version [debian-8.2-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-debian.8-x64.latest.deb -[debian-8.2-host-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-debian.8-x64.latest.deb.sha512 +[debian-8.2-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-debian.8-x64.latest.deb.sha512 [debian-8.2-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-debian.8-x64.latest.deb -[debian-8.2-hostfxr-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-debian.8-x64.latest.deb.sha512 +[debian-8.2-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-debian.8-x64.latest.deb.sha512 [debian-8.2-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-debian.8-x64.latest.deb -[debian-8.2-sharedfx-checksum-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-debian.8-x64.latest.deb.sha512 +[debian-8.2-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-debian.8-x64.latest.deb.sha512 [debian-8.2-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Debian_x64_Release_version_badge.svg [debian-8.2-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.debian.x64.version From 7ac2673afb55937a702ae770ad020a28a43221cf Mon Sep 17 00:00:00 2001 From: Vivek Mishra Date: Mon, 22 May 2017 20:13:36 -0700 Subject: [PATCH 461/625] Issue #2214: Generate RPM packages for Runtime Portable Linux binaries (2.1) (#2462) * Changes for RPM packaging Fix restoring to the tool with SdkRestoreCommand Fix restoring to the tool with SdkRestoreCommand RPM related changes pick 065f312 Fix restoring to the tool with SdkRestoreCommand pick b2a3711 RPM related changes pick 74edd45 RPM changes pick 94a4739 Fixed dir.props RPM changes 2 Fixed dir.props Changes for RPM build RPM Change 2 RPM Fixes Fixed MS Build Task and targets Updated Task Task File renamed Task updated Task updated2 Edits for RPM packages Edits for RPM packages Edits for RPM packaging Fixed dir props and json typos Fixed bugs for build break Fixed bugs for RpmIntermediatesDir Temporarily removing the changelog Temp: FPM parameters change Temp: FPM cmd change Temp: FPM cmd change Fixed bugs Fixed bugs Fixed bugs for Templates for HFR and SF Test URL bug Add back URL Remove URL Updated dependencies for Shared FX Updated Readme Update Package name parameter Fixed the copyright path for FXR and SF Updated Core-Setup-Linux-BT.json with new build steps Added directories option for FXR and SF Added directories option for FXR and SF Fix official builds to work with crossgen -CreatePDB by using run.cmd to build. This ensures a VS Developer command prompt is initialized before the build. Directories related changes Fixed the doc path Removed explicit removal of host dirs and man file Fixed doc path Fixed FXR doc path bug Fixed typos and fixed URL Cleanup of the new task Clean up of task code Cleanup of Task Fixed dir typo * Changes for RPM packaging Fix restoring to the tool with SdkRestoreCommand Fix restoring to the tool with SdkRestoreCommand RPM related changes pick 065f312 Fix restoring to the tool with SdkRestoreCommand pick b2a3711 RPM related changes pick 74edd45 RPM changes pick 94a4739 Fixed dir.props RPM changes 2 Fixed dir.props Changes for RPM build RPM Change 2 RPM Fixes Fixed MS Build Task and targets Updated Task Task File renamed Task updated Task updated2 Edits for RPM packages Edits for RPM packages Edits for RPM packaging Fixed dir props and json typos Fixed bugs for build break Fixed bugs for RpmIntermediatesDir Temporarily removing the changelog Temp: FPM parameters change Temp: FPM cmd change Temp: FPM cmd change Fixed bugs Fixed bugs Fixed bugs for Templates for HFR and SF Test URL bug Add back URL Remove URL Updated dependencies for Shared FX Updated Readme Update Package name parameter Fixed the copyright path for FXR and SF Updated Core-Setup-Linux-BT.json with new build steps Added directories option for FXR and SF Added directories option for FXR and SF Fix official builds to work with crossgen -CreatePDB by using run.cmd to build. This ensures a VS Developer command prompt is initialized before the build. Directories related changes Fixed the doc path Removed explicit removal of host dirs and man file Fixed doc path Fixed FXR doc path bug Fixed typos and fixed URL Cleanup of the new task Clean up of task code Cleanup of Task Fixed dir typo * Removed stale ChangelogSourceFilePath * Minor comment fixed in script * Added libssl and libcurl dependencies for SF * Update openssl and libcurl package names * Fixes for feedback comments 1 * removed rebase inserts --- README.md | 23 +- buildpipeline/Core-Setup-Linux-BT.json | 107 ++++++ dir.props | 40 ++- publish/dir.props | 2 + .../dotnet-sharedframework-debian_config.json | 2 +- .../deb/dotnet-sharedhost-debian_config.json | 2 +- src/pkg/packaging/dir.proj | 2 + .../rpm/dotnet-hostfxr-rpm_config.json | 43 +++ .../dotnet-sharedframework-rpm_config.json | 49 +++ .../rpm/dotnet-sharedhost-rpm_config.json | 45 +++ src/pkg/packaging/rpm/package.props | 15 + src/pkg/packaging/rpm/package.targets | 293 ++++++++++++++++ .../rpm/scripts/after_install_host.sh | 7 + .../rpm/scripts/after_remove_host.sh | 7 + src/pkg/packaging/rpm/templates/changelog | 2 + src/pkg/packaging/rpm/templates/copyright | 8 + tools-local/tasks/BuildFPMToolPreReqs .cs | 318 ++++++++++++++++++ 17 files changed, 947 insertions(+), 18 deletions(-) create mode 100644 src/pkg/packaging/rpm/dotnet-hostfxr-rpm_config.json create mode 100644 src/pkg/packaging/rpm/dotnet-sharedframework-rpm_config.json create mode 100644 src/pkg/packaging/rpm/dotnet-sharedhost-rpm_config.json create mode 100644 src/pkg/packaging/rpm/package.props create mode 100644 src/pkg/packaging/rpm/package.targets create mode 100644 src/pkg/packaging/rpm/scripts/after_install_host.sh create mode 100644 src/pkg/packaging/rpm/scripts/after_remove_host.sh create mode 100644 src/pkg/packaging/rpm/templates/changelog create mode 100644 src/pkg/packaging/rpm/templates/copyright create mode 100644 tools-local/tasks/BuildFPMToolPreReqs .cs diff --git a/README.md b/README.md index b0f7bf20..8521892a 100644 --- a/README.md +++ b/README.md @@ -44,7 +44,7 @@ Daily Builds | **Ubuntu 16.10 (x64)** | [![][ubuntu-16.10-badge-master]][ubuntu-16.10-version-master]
[Host][ubuntu-16.10-host-master] ([Checksum][ubuntu-16.10-host-checksum-master])
[Host FX Resolver][ubuntu-16.10-hostfxr-master] ([Checksum][ubuntu-16.10-hostfxr-checksum-master])
[Shared Framework][ubuntu-16.10-sharedfx-master] ([Checksum][ubuntu-16.10-sharedfx-checksum-master])
| [![][ubuntu-16.10-badge-2.0.X]][ubuntu-16.10-version-2.0.X]
[Host][ubuntu-16.10-host-2.0.X] ([Checksum][ubuntu-16.10-host-checksum-2.0.X])
[Host FX Resolver][ubuntu-16.10-hostfxr-2.0.X] ([Checksum][ubuntu-16.10-hostfxr-checksum-2.0.X])
[Shared Framework][ubuntu-16.10-sharedfx-2.0.X] ([Checksum][ubuntu-16.10-sharedfx-checksum-2.0.X])
| [![][ubuntu-16.10-badge-1.1.X]][ubuntu-16.10-version-1.1.X]
[Host][ubuntu-16.10-host-1.1.X]
[Host FX Resolver][ubuntu-16.10-hostfxr-1.1.X]
[Shared Framework][ubuntu-16.10-sharedfx-1.1.X]
[tar.gz][ubuntu-16.10-targz-1.1.X] | N/A | | **Debian 8.2 (x64)** | [![][debian-8.2-badge-master]][debian-8.2-version-master]
[Host][debian-8.2-host-master] ([Checksum][debian-8.2-host-checksum-master])
[Host FX Resolver][debian-8.2-hostfxr-master] ([Checksum][debian-8.2-hostfxr-checksum-master])
[Shared Framework][debian-8.2-sharedfx-master] ([Checksum][debian-8.2-sharedfx-checksum-master])
| [![][debian-8.2-badge-2.0.X]][debian-8.2-version-2.0.X]
[Host][debian-8.2-host-2.0.X] ([Checksum][debian-8.2-host-checksum-2.0.X])
[Host FX Resolver][debian-8.2-hostfxr-2.0.X] ([Checksum][debian-8.2-hostfxr-checksum-2.0.X])
[Shared Framework][debian-8.2-sharedfx-2.0.X] ([Checksum][debian-8.2-sharedfx-checksum-2.0.X])
| [![][debian-8.2-badge-1.1.X]][debian-8.2-version-1.1.X]
[Host][debian-8.2-host-1.1.X]
[Host FX Resolver][debian-8.2-hostfxr-1.1.X]
[Shared Framework][debian-8.2-sharedfx-1.1.X]
[tar.gz][debian-8.2-targz-1.1.X] | [![][debian-8.2-badge-preview]][debian-8.2-version-preview]
[Host][debian-8.2-host-preview]
[Host FX Resolver][debian-8.2-hostfxr-preview]
[Shared Framework][debian-8.2-sharedfx-preview]
[tar.gz][debian-8.2-targz-preview] | | **CentOS 7.1 (x64)** | N/A | N/A | [![][centos-badge-1.1.X]][centos-version-1.1.X]
[tar.gz][centos-targz-1.1.X] | [![][centos-badge-preview]][centos-version-preview]
[tar.gz][centos-targz-preview] | -| **RHEL 7.2 (x64)** | N/A | N/A | [![][rhel-badge-1.1.X]][rhel-version-1.1.X]
[tar.gz][rhel-targz-1.1.X] | [![][rhel-badge-preview]][rhel-version-preview]
[tar.gz][rhel-targz-preview] | +| **RHEL 7.2 (x64)** | [![][rhel7-badge-master]][rhel7-version-master]
[Host][rhel7-host-master] ([Checksum][rhel7-host-checksum-master])
[Host FX Resolver][rhel7-hostfxr-master] ([Checksum][rhel7-hostfxr-checksum-master])
[Shared Framework][rhel7-sharedfx-master] ([Checksum][rhel7-sharedfx-checksum-master])
| [![][rhel7-badge-2.0.X]][rhel7-version-2.0.X]
[Host][rhel7-host-2.0.X] ([Checksum][rhel7-host-checksum-2.0.X])
[Host FX Resolver][rhel7-hostfxr-2.0.X] ([Checksum][rhel7-hostfxr-checksum-2.0.X])
[Shared Framework][rhel7-sharedfx-2.0.X] ([Checksum][rhel7-sharedfx-checksum-2.0.X])
| [![][rhel-badge-1.1.X]][rhel-version-1.1.X]
[tar.gz][rhel-targz-1.1.X] | [![][rhel-badge-preview]][rhel-version-preview]
[tar.gz][rhel-targz-preview] | | **Fedora 23 (x64)** | N/A | N/A | [![][fedora-23-badge-1.1.X]][fedora-23-version-1.1.X]
[tar.gz][fedora-23-targz-1.1.X] | [![][fedora-23-badge-preview]][fedora-23-version-preview]
[tar.gz][fedora-23-targz-preview] | | **Fedora 24 (x64)** | N/A | N/A | [![][fedora-24-badge-1.1.X]][fedora-24-version-1.1.X]
[tar.gz][fedora-24-targz-1.1.X] | N/A | | **OpenSUSE 42.1 (x64)** | N/A | N/A | [![][opensuse-42.1-badge-1.1.X]][opensuse-42.1-version-1.1.X]
[tar.gz][opensuse-42.1-targz-1.1.X] | N/A | @@ -256,7 +256,6 @@ Daily Builds [ubuntu-16.04-sharedfx-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-ubuntu.16.04-x64.latest.tar.gz - [ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg [ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.16.10.x64.version [ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.10-x64.latest.deb @@ -315,7 +314,6 @@ Daily Builds [debian-8.2-sharedfx-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Installers/Latest/dotnet-sharedframework-debian-x64.latest.deb [debian-8.2-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-debian-x64.latest.tar.gz - [centos-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_CentOS_x64_Release_version_badge.svg [centos-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.centos.x64.version [centos-targz-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/dotnet-centos-x64.latest.tar.gz @@ -324,6 +322,23 @@ Daily Builds [centos-version-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/dnvm/latest.sharedfx.centos.x64.version [centos-targz-preview]: https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/Latest/dotnet-centos-x64.latest.tar.gz +[rhel7-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_rhel.7-x64_Release_version_badge.svg +[rhel7-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.rhel.7.x64.version +[rhel7-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-rhel.7-x64.latest.rpm +[rhel7-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-rhel.7-x64.latest.rpm.sha512 +[rhel7-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-rhel.7-x64.latest.rpm +[rhel7-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-rhel.7-x64.latest.rpm.sha512 +[rhel7-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-rhel.7-x64.latest.rpm +[rhel7-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-rhel.7-x64.latest.rpm.sha512 + +[rhel7-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_rhel.7-x64_Release_version_badge.svg +[rhel7-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.rhel.7.x64.version +[rhel7-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-rhel.7-x64.latest.rpm +[rhel7-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-rhel.7-x64.latest.rpm.sha512 +[rhel7-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-rhel.7-x64.latest.rpm +[rhel7-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-rhel.7-x64.latest.rpm.sha512 +[rhel7-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-rhel.7-x64.latest.rpm +[rhel7-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-rhel.7-x64.latest.rpm.sha512 [rhel-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_RHEL_x64_Release_version_badge.svg [rhel-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.rhel.x64.version @@ -377,4 +392,4 @@ sudo apt-get install = To list available packages: ``` apt-cache search dotnet-sharedframework | grep 2.0.0 -``` +``` \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 7e7112fd..35d49b5d 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -583,6 +583,101 @@ "failOnStandardError": "false" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize docker - Rhel7", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", + "arguments": "$(DockerImageName_Rhel7)", + "workingFolder": "$(PB_DockerHost_Sandbox)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Init tools - Rhel7", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) /bin/bash -c \"HOME=$(PB_GitDirectory); git clean -X -d -f; $(PB_GitDirectory)/init-tools.sh\"", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build traversal build dependencies - Rhel7", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Rhel7) $(CommonMSBuildArguments)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Package - Rhel7", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Rhel7) $(CommonMSBuildArguments)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Publish - Rhel7", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Rhel7) $(CommonMSBuildArguments) $(CommonMSBuildPublishArgs)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, { "enabled": true, "continueOnError": true, @@ -873,6 +968,18 @@ "DockerCommonRunArgs_Debian8": { "value": "--name $(PB_DockerContainerName)$(DockerTag_Debian8) -v \"$(PB_SourcesDirectory):$(PB_GitDirectory)\" -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/root/sharedFrameworkPublish/ -w=\"$(PB_GitDirectory)\" $(DockerImageName_Debian8)" }, + "DockerTag_Rhel7": { + "value": "rhel-7-rpmpkg-c982313-20174116044113" + }, + "DistroRid_Rhel7": { + "value": "rhel.7-x64" + }, + "DockerImageName_Rhel7": { + "value": "$(PB_DockerRepository):$(DockerTag_Rhel7)" + }, + "DockerCommonRunArgs_Rhel7": { + "value": "--name $(PB_DockerContainerName)$(DockerTag_Rhel7) -v \"$(PB_SourcesDirectory):$(PB_GitDirectory)\" -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/root/sharedFrameworkPublish/ -w=\"$(PB_GitDirectory)\" $(DockerImageName_Rhel7)" + }, "CLI_NUGET_FEED_URL": { "value": "https:%2F%2Fdotnet.myget.org/F/cli-deps/api/v2/package" }, diff --git a/dir.props b/dir.props index 3ac162ea..99904bbe 100644 --- a/dir.props +++ b/dir.props @@ -279,16 +279,6 @@ $(BaseOutputRootPath)sharedfx_$(TargetRid)_$(ConfigurationGroup)_version_badge.svg - - .zip - .tar.gz - .msi - .pkg - .deb - .exe - $(InstallerExtension) - - $(PackagesOutDir)dotnet-host- $(PackagesOutDir)dotnet-hostfxr- @@ -316,6 +306,8 @@ false false false + false + false @@ -343,6 +335,20 @@ true + + + true + true + true + + + + + true + true + true + + true @@ -351,6 +357,17 @@ + + .zip + .tar.gz + .msi + .pkg + .deb + .rpm + .exe + $(InstallerExtension) + + @@ -363,8 +380,7 @@ true - - + \ No newline at end of file diff --git a/publish/dir.props b/publish/dir.props index 8f739f8d..8d318070 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -48,5 +48,7 @@ + +
diff --git a/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json b/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json index cd0bf646..1bd84615 100644 --- a/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json +++ b/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json @@ -13,7 +13,7 @@ "package_version":"1.0.0.0", "package_revision":"1", "urgency" : "low", - "changelog_message" : "Inital shared framework." + "changelog_message" : "Initial shared framework." }, "control": { diff --git a/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json b/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json index e144623a..9b14a615 100644 --- a/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json +++ b/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json @@ -13,7 +13,7 @@ "package_version":"1.0.0.0", "package_revision":"1", "urgency" : "low", - "changelog_message" : "Inital shared host." + "changelog_message" : "Initial shared host." }, "control": { diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index c78e4133..d009bd59 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -143,6 +143,7 @@ + @@ -150,6 +151,7 @@ GenerateBundles; GeneratePkgs; GenerateDebs; + GenerateRpms; diff --git a/src/pkg/packaging/rpm/dotnet-hostfxr-rpm_config.json b/src/pkg/packaging/rpm/dotnet-hostfxr-rpm_config.json new file mode 100644 index 00000000..deca0589 --- /dev/null +++ b/src/pkg/packaging/rpm/dotnet-hostfxr-rpm_config.json @@ -0,0 +1,43 @@ +{ + "maintainer_name": "Microsoft", + "maintainer_email": "dotnetcore@microsoft.com", + + "package_name": "%HOSTFXR_RPM_PACKAGE_NAME%", + "install_root": "/usr/share/dotnet", + "install_doc": "/usr/share/doc/%HOSTFXR_RPM_PACKAGE_NAME%/", + + "short_description": "%HOSTFXR_BRAND_NAME% %HOSTFXR_NUGET_VERSION%", + "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", + + "homepage": "https://github.com/dotnet/core", + + "release":{ + "package_version":"1.0.0.0", + "package_revision":"1", + "urgency" : "low", + "changelog_message" : "Versioned Hostfxr" + }, + + "control": { + "priority":"standard", + "section":"libs", + "architecture":"amd64" + }, + + "copyright": "2015 Microsoft", + + "license": { + "type": "MIT", + "full_text": "Copyright (c) 2015 Microsoft\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE." + }, + + "rpm_dependencies": [{ + "package_name": "dotnet-host", + "package_version": "%SHARED_HOST_RPM_VERSION%" + }], + + "directories" : [ + "/usr/share/dotnet/host", + "/usr/share/doc/%HOSTFXR_RPM_PACKAGE_NAME%" + ] +} \ No newline at end of file diff --git a/src/pkg/packaging/rpm/dotnet-sharedframework-rpm_config.json b/src/pkg/packaging/rpm/dotnet-sharedframework-rpm_config.json new file mode 100644 index 00000000..636c4a39 --- /dev/null +++ b/src/pkg/packaging/rpm/dotnet-sharedframework-rpm_config.json @@ -0,0 +1,49 @@ +{ + "maintainer_name":"Microsoft", + "maintainer_email": "dotnetcore@microsoft.com", + + "package_name": "%SHARED_FRAMEWORK_RPM_PACKAGE_NAME%", + "install_root": "/usr/share/dotnet", + "install_doc": "/usr/share/doc/%SHARED_FRAMEWORK_RPM_PACKAGE_NAME%/", + + "short_description": "%SHARED_FRAMEWORK_BRAND_NAME% %SHARED_FRAMEWORK_NUGET_NAME% %SHARED_FRAMEWORK_NUGET_VERSION%", + "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", + "homepage": "https://github.com/dotnet/core", + + "release":{ + "package_version":"1.0.0.0", + "package_revision":"1", + "urgency" : "low", + "changelog_message" : "Initial shared framework." + }, + + "control": { + "priority":"standard", + "section":"libs", + "architecture":"amd64" + }, + + "copyright": "2015 Microsoft", + "license": { + "type": "MIT", + "full_text": "Copyright (c) 2015 Microsoft\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE." + }, + + "rpm_dependencies": [{ + "package_name": "%HOSTFXR_RPM_PACKAGE_NAME%", + "package_version": "" + }, + { + "package_name": "openssl-libs", + "package_version": "" + }, + { + "package_name": "libcurl", + "package_version": "" + }], + + "directories" : [ + "/usr/share/dotnet/shared", + "/usr/share/doc/%SHARED_FRAMEWORK_RPM_PACKAGE_NAME%" + ] +} \ No newline at end of file diff --git a/src/pkg/packaging/rpm/dotnet-sharedhost-rpm_config.json b/src/pkg/packaging/rpm/dotnet-sharedhost-rpm_config.json new file mode 100644 index 00000000..7a9ebfc8 --- /dev/null +++ b/src/pkg/packaging/rpm/dotnet-sharedhost-rpm_config.json @@ -0,0 +1,45 @@ +{ + "maintainer_name":"Microsoft", + "maintainer_email": "dotnetcore@microsoft.com", + + "package_name": "dotnet-host", + "install_root": "/usr/share/dotnet", + "install_doc": "/usr/share/doc/dotnet-host/", + "install_man": "/usr/share/man/man1", + + "short_description": "%SHARED_HOST_BRAND_NAME%", + "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", + "homepage": "https://github.com/dotnet/core", + + "release":{ + "package_version":"1.0.0.0", + "package_revision":"1", + "urgency" : "low", + "changelog_message" : "Initial shared host." + }, + + "control": { + "priority":"standard", + "section":"libs", + "architecture":"amd64" + }, + + "copyright": "2015 Microsoft", + "license": { + "type": "MIT", + "full_text": "Copyright (c) 2015 Microsoft\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE." + }, + + "package_conflicts" : [ + "dotnet", + "dotnet-nightly" + ], + + "directories" : [ + "/usr/share/dotnet", + "/usr/share/doc/dotnet-host" + ], + + "after_install_source": "scripts/after_install_host.sh", + "after_remove_source": "scripts/after_remove_host.sh" +} \ No newline at end of file diff --git a/src/pkg/packaging/rpm/package.props b/src/pkg/packaging/rpm/package.props new file mode 100644 index 00000000..3bef4e46 --- /dev/null +++ b/src/pkg/packaging/rpm/package.props @@ -0,0 +1,15 @@ + + + + rpm_config.json + $(PackagingRoot)rpm/ + dotnet-host + $(SharedHostRpmPkgName.ToLower()) + dotnet-hostfxr-$(HostResolverVersion) + $(HostFxrRpmPkgName.ToLower()) + dotnet-sharedframework-$(SharedFrameworkName)-$(SharedFrameworkNugetVersion) + $(SharedFxRpmPkgName.ToLower()) + $(MSBuildThisFileDirectory)/templates + $(MSBuildThisFileDirectory)/scripts + + \ No newline at end of file diff --git a/src/pkg/packaging/rpm/package.targets b/src/pkg/packaging/rpm/package.targets new file mode 100644 index 00000000..347d5c17 --- /dev/null +++ b/src/pkg/packaging/rpm/package.targets @@ -0,0 +1,293 @@ + + + + + + + + + true + true + + + + + + + + + $(SharedHostRpmPkgName) + $(HostVersion) + $(SharedHostPublishRoot) + $(SharedHostInstallerFile) + $(ProjectDir)Documentation/manpages + dotnet-sharedhost-rpm_config.json + $(rpmPackagingConfigPath)$(ConfigJsonName) + $(PackagesIntermediateDir)$(RpmPackageName)/$(RpmPackageVersion) + + + + $(RpmIntermediatesDir)/rpmLayoutDirectory/ + $(rpmLayoutDirectory)package_root + $(rpmLayoutDirectory)docs + $(rpmLayoutDirectory)templates + $(rpmLayoutDirectory)scripts + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(SharedHostBrandName) + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(HostFxrRpmPkgName) + $(HostResolverVersion) + $(HostFxrPublishRoot) + $(HostFxrInstallerFile) + dotnet-hostfxr-rpm_config.json + $(rpmPackagingConfigPath)$(ConfigJsonName) + $(PackagesIntermediateDir)$(RpmPackageName)/$(RpmPackageVersion) + + + + $(RpmIntermediatesDir)/rpmLayoutDirectory/ + $(rpmLayoutDirectory)package_root + $(rpmLayoutDirectory)docs + $(rpmLayoutDirectory)templates + + + + + + + + + + + + + + + + + + + + + + + + + $(HostFxrBrandName) + + + $(HostVersion) + + + $(HostResolverVersion) + + + $(RpmPackageName) + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(SharedFxRpmPkgName) + $(SharedFrameworkNugetVersion) + $(SharedFrameworkPublishRoot) + $(SharedFrameworkInstallerFile) + dotnet-sharedframework-rpm_config.json + $(rpmPackagingConfigPath)$(ConfigJsonName) + $(PackagesIntermediateDir)$(RpmPackageName)/$(RpmPackageVersion) + + + + $(RpmIntermediatesDir)/rpmLayoutDirectory/ + $(rpmLayoutDirectory)package_root + $(rpmLayoutDirectory)docs + $(rpmLayoutDirectory)templates + + + + + + + + + + + + + + + + + + + + + + + + + $(HostFxrRpmPkgName) + + + $(SharedFxRpmPkgName) + + + $(SharedFrameworkName) + + + $(SharedFrameworkNugetVersion) + + + $(SharedFrameworkBrandName) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + true + + + + + + \ No newline at end of file diff --git a/src/pkg/packaging/rpm/scripts/after_install_host.sh b/src/pkg/packaging/rpm/scripts/after_install_host.sh new file mode 100644 index 00000000..9943b1be --- /dev/null +++ b/src/pkg/packaging/rpm/scripts/after_install_host.sh @@ -0,0 +1,7 @@ +#!/bin/sh +# +# Copyright (c) .NET Foundation and contributors. All rights reserved. +# Licensed under the MIT license. See LICENSE file in the project root for full license information. +# +echo "Creating dotnet host symbolic link: /usr/bin/dotnet" +ln -sf "/usr/share/dotnet/dotnet" "/usr/bin/dotnet" \ No newline at end of file diff --git a/src/pkg/packaging/rpm/scripts/after_remove_host.sh b/src/pkg/packaging/rpm/scripts/after_remove_host.sh new file mode 100644 index 00000000..e0bb6b5b --- /dev/null +++ b/src/pkg/packaging/rpm/scripts/after_remove_host.sh @@ -0,0 +1,7 @@ +#!/bin/sh +# +# Copyright (c) .NET Foundation and contributors. All rights reserved. +# Licensed under the MIT license. See LICENSE file in the project root for full license information. +# +echo "Removing dotnet host symbolic link" +unlink /usr/bin/dotnet diff --git a/src/pkg/packaging/rpm/templates/changelog b/src/pkg/packaging/rpm/templates/changelog new file mode 100644 index 00000000..1d7382dd --- /dev/null +++ b/src/pkg/packaging/rpm/templates/changelog @@ -0,0 +1,2 @@ +* {DATE} {MAINTAINER_NAME} <{MAINTAINER_EMAIL}> {PACKAGE_NAME} ({PACKAGE_VERSION}-{PACKAGE_REVISION}) unstable; urgency={URGENCY} +- {CHANGELOG_MESSAGE} diff --git a/src/pkg/packaging/rpm/templates/copyright b/src/pkg/packaging/rpm/templates/copyright new file mode 100644 index 00000000..a336435d --- /dev/null +++ b/src/pkg/packaging/rpm/templates/copyright @@ -0,0 +1,8 @@ +Comment: Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information. + +Files: * +Copyright: {COPYRIGHT_TEXT} +License: {LICENSE_NAME} + +License: {LICENSE_NAME} + {LICENSE_TEXT} \ No newline at end of file diff --git a/tools-local/tasks/BuildFPMToolPreReqs .cs b/tools-local/tasks/BuildFPMToolPreReqs .cs new file mode 100644 index 00000000..031b4f44 --- /dev/null +++ b/tools-local/tasks/BuildFPMToolPreReqs .cs @@ -0,0 +1,318 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System; +using System.Collections.Generic; +using Microsoft.Build.Utilities; +using Microsoft.Build.Framework; +using System.IO; +using System.Linq; +using System.Text; +using Newtonsoft.Json; + +namespace Microsoft.DotNet.Build.Tasks +{ + /// + /// This task prepares the command line parameters for running a RPM build using FPM tool and also updates the copyright and changelog file tokens. + /// If parses various values from the config json by first reading it into a model and then builds the required string for parameters and passes it back. + /// + /// + public class BuildFPMToolPreReqs : BuildTask + { + [Required] + public string InputDir { get; set; } + [Required] + public string OutputDir { get; set; } + [Required] + public string PackageVersion { get; set; } + [Required] + public string ConfigJsonFile { get; set; } + [Output] + public string FPMParameters { get; set; } + + public override bool Execute() + { + try + { + if (!File.Exists(ConfigJsonFile)) + { + throw new FileNotFoundException($"Expected file {ConfigJsonFile} was not found."); + } + + // Open the Config Json and read the values into the model + TextReader projectFileReader = File.OpenText(ConfigJsonFile); + if (projectFileReader != null) + { + string jsonFileText = projectFileReader.ReadToEnd(); + ConfigJson configJson = JsonConvert.DeserializeObject(jsonFileText); + + // Update the Changelog and Copyright files by replacing tokens with values from config json + UpdateChangelog(configJson, PackageVersion); + UpdateCopyRight(configJson); + + // Build the full list of parameters + FPMParameters = BuildCmdParameters(configJson, PackageVersion); + Log.LogMessage(MessageImportance.Normal, "Generated RPM paramters: " + FPMParameters); + } + else + { + throw new IOException($"Could not open the file {ConfigJsonFile} for reading."); + } + } + catch (Exception e) + { + Log.LogError("Exception while processing RPM paramters: " + e.Message); + } + + return !Log.HasLoggedErrors; + } + + // Update the tokens in the changelog file from the config Json + private void UpdateChangelog(ConfigJson configJson, string package_version) + { + try + { + string changelogFile = Path.Combine(InputDir, "templates", "changelog"); + if (!File.Exists(changelogFile)) + { + throw new FileNotFoundException($"Expected file {changelogFile} was not found."); + } + string str = File.ReadAllText(changelogFile); + str = str.Replace("{PACKAGE_NAME}", configJson.Package_Name); + str = str.Replace("{PACKAGE_VERSION}", package_version); + str = str.Replace("{PACKAGE_REVISION}", configJson.Release.Package_Revision); + str = str.Replace("{URGENCY}", configJson.Release.Urgency); + str = str.Replace("{CHANGELOG_MESSAGE}", configJson.Release.Changelog_Message); + str = str.Replace("{MAINTAINER_NAME}", configJson.Maintainer_Name); + str = str.Replace("{MAINTAINER_EMAIL}", configJson.Maintainer_Email); + // The date format needs to be like Wed May 17 2017 + str = str.Replace("{DATE}", DateTime.UtcNow.ToString("ddd MMM dd yyyy")); + File.WriteAllText(changelogFile, str); + } + catch (Exception e) + { + Log.LogError("Exception while updating the changelog file: " + e.Message); + } + } + + public void UpdateCopyRight(ConfigJson configJson) + { + try + { + // Update the tokens in the copyright file from the config Json + string copyrightFile = Path.Combine(InputDir, "templates", "copyright"); + if (!File.Exists(copyrightFile)) + { + throw new FileNotFoundException($"Expected file {copyrightFile} was not found."); + } + string str = File.ReadAllText(copyrightFile); + str = str.Replace("{COPYRIGHT_TEXT}", configJson.CopyRight); + str = str.Replace("{LICENSE_NAME}", configJson.License.Type); + str = str.Replace("{LICENSE_NAME}", configJson.License.Type); + str = str.Replace("{LICENSE_TEXT}", configJson.License.Full_Text); + File.WriteAllText(copyrightFile, str); + } + catch (Exception e) + { + Log.LogError("Exception while updating the copyright file: " + e.Message); + } + } + + private string BuildCmdParameters(ConfigJson configJson, string package_version) + { + // Parameter list that needs to be passed to FPM tool: + // -s : is the input source type(dir) --Static + // -t : is the type of package(rpm) --Static + // -n : is for the name of the package --JSON + // -v : is the version to give to the package --ARG + // -a : architecture --JSON + // -d : is for all dependent packages. This can be used multiple times to specify the dependencies of the package. --JSON + // --rpm-os : the operating system to target this rpm --Static + // --rpm-changelog : the changelog from FILEPATH contents --ARG + // --rpm-summary : it is the RPM summary that shows in the Title --JSON + // --description : it is the description for the package --JSON + // -p : The actual package name (with path) for your package. --ARG+JSON + // --conflicts : Other packages/versions this package conflicts with provided as CSV --JSON + // --directories : Recursively add directories as being owned by the package. --JSON + // --after-install : FILEPATH to the script to be run after install of the package --JSON + // --after-remove : FILEPATH to the script to be run after package removal --JSON + // --license : the licensing name for the package. This will include the license type in the meta-data for the package, but will not include the associated license file within the package itself. --JSON + // --iteration : the iteration to give to the package. This comes from the package_revision --JSON + // --url : url for this package. --JSON + // --verbose : Set verbose output for FPM tool --Static + // : Add all the folder mappings for packge_root, docs, man pages --Static + + var parameters = new List(); + parameters.Add("-s dir"); + parameters.Add("-t rpm"); + parameters.Add(string.Concat("-n ", configJson.Package_Name)); + parameters.Add(string.Concat("-v ", package_version)); + parameters.Add(string.Concat("-a ", configJson.Control.Architecture)); + + // Build the list of dependencies as -d -d + if (configJson.Rpm_Dependencies != null) + { + foreach (RpmDependency rpmdep in configJson.Rpm_Dependencies) + { + string dependency = ""; + if (rpmdep.Package_Name != "") + { + // If no version is specified then the dependency is just the package without >= check + if (rpmdep.Package_Version == "") + { + dependency = rpmdep.Package_Name; + } + else + { + dependency = string.Concat(rpmdep.Package_Name, " >= ", rpmdep.Package_Version); + } + } + if (dependency != "") parameters.Add(string.Concat("-d ", EscapeArg(dependency))); + } + } + + // Build the list of owned directories + if (configJson.Directories != null) + { + foreach (string dir in configJson.Directories) + { + if (dir != "") + { + parameters.Add(string.Concat("--directories ", EscapeArg(dir))); + } + } + } + + parameters.Add("--rpm-os linux"); + parameters.Add(string.Concat("--rpm-changelog ", EscapeArg(Path.Combine(InputDir, "templates", "changelog")))); // Changelog File + parameters.Add(string.Concat("--rpm-summary ", EscapeArg(configJson.Short_Description))); + parameters.Add(string.Concat("--description ", EscapeArg(configJson.Long_Description))); + parameters.Add(string.Concat("--maintainer ", configJson.Maintainer_Name)); + parameters.Add(string.Concat("-p ", Path.Combine(OutputDir, configJson.Package_Name + ".rpm"))); + if (configJson.Package_Conflicts != null) parameters.Add(string.Concat("--conflicts ", EscapeArg(string.Join(",", configJson.Package_Conflicts)))); + if (configJson.After_Install_Source != null) parameters.Add(string.Concat("--after-install ", Path.Combine(InputDir, EscapeArg(configJson.After_Install_Source)))); + if (configJson.After_Remove_Source != null) parameters.Add(string.Concat("--after-remove ", Path.Combine(InputDir, EscapeArg(configJson.After_Remove_Source)))); + parameters.Add(string.Concat("--license ", EscapeArg(configJson.License.Type))); + parameters.Add(string.Concat("--iteration ", configJson.Release.Package_Revision)); + parameters.Add(string.Concat("--url ", "\"", EscapeArg(configJson.Homepage), "\"")); + parameters.Add("--verbose"); + + // Map all the payload directories as they need to install on the system + if (configJson.Install_Root != null) parameters.Add(string.Concat(Path.Combine(InputDir, "package_root/="), configJson.Install_Root)); // Package Files + if (configJson.Install_Man != null) parameters.Add(string.Concat(Path.Combine(InputDir, "docs", "host/="), configJson.Install_Man)); // Man Pages + if (configJson.Install_Doc != null) parameters.Add(string.Concat(Path.Combine(InputDir, "templates", "copyright="), configJson.Install_Doc)); // CopyRight File + + return string.Join(" ", parameters); + } + + private string EscapeArg(string arg) + { + var sb = new StringBuilder(); + + bool quoted = ShouldSurroundWithQuotes(arg); + if (quoted) sb.Append("\""); + + for (int i = 0; i < arg.Length; ++i) + { + var backslashCount = 0; + + // Consume All Backslashes + while (i < arg.Length && arg[i] == '\\') + { + backslashCount++; + i++; + } + + // Escape any backslashes at the end of the arg + // This ensures the outside quote is interpreted as + // an argument delimiter + if (i == arg.Length) + { + sb.Append('\\', 2 * backslashCount); + } + + // Escape any preceding backslashes and the quote + else if (arg[i] == '"') + { + sb.Append('\\', (2 * backslashCount) + 1); + sb.Append('"'); + } + + // Output any consumed backslashes and the character + else + { + sb.Append('\\', backslashCount); + sb.Append(arg[i]); + } + } + + if (quoted) sb.Append("\""); + + return sb.ToString(); + } + private bool ShouldSurroundWithQuotes(string argument) + { + // Don't quote already quoted strings + if (argument.StartsWith("\"", StringComparison.Ordinal) && + argument.EndsWith("\"", StringComparison.Ordinal)) + { + return false; + } + + // Only quote if whitespace exists in the string + if (argument.Contains(" ") || argument.Contains("\t") || argument.Contains("\n")) + { + return true; + } + return false; + } + } + + /// + /// Model classes for reading and storing the JSON. + /// + public class ConfigJson + { + public string Maintainer_Name { get; set; } + public string Maintainer_Email { get; set; } + public string Package_Name { get; set; } + public string Install_Root { get; set; } + public string Install_Doc { get; set; } + public string Install_Man { get; set; } + public string Short_Description { get; set; } + public string Long_Description { get; set; } + public string Homepage { get; set; } + public string CopyRight { get; set; } + public Release Release { get; set; } + public Control Control { get; set; } + public License License { get; set; } + public List Rpm_Dependencies { get; set; } + public List Package_Conflicts { get; set; } + public List Directories { get; set; } + public string After_Install_Source { get; set; } + public string After_Remove_Source { get; set; } + } + public class Release + { + public string Package_Version { get; set; } + public string Package_Revision { get; set; } + public string Urgency { get; set; } + public string Changelog_Message { get; set; } + } + public class Control + { + public string Priority { get; set; } + public string Section { get; set; } + public string Architecture { get; set; } + } + public class License + { + public string Type { get; set; } + public string Full_Text { get; set; } + } + public class RpmDependency + { + public string Package_Name { get; set; } + public string Package_Version { get; set; } + } +} From 7e0517ccd32aac3dced48320b2d14000917fdcbf Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Mon, 22 May 2017 21:22:47 -0700 Subject: [PATCH 462/625] Update CoreClr, CoreFx to preview1-25322-03, preview1-25323-02, respectively --- dependencies.props | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/dependencies.props b/dependencies.props index 9d1f12b0..2bcb2016 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,16 +9,16 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 5a0606fccb09fce4b47545ae9896139acca547f5 - 5a0606fccb09fce4b47545ae9896139acca547f5 + 8ca527a74acbc73ee9340b7ab64bebad5ccc796e + 8ca527a74acbc73ee9340b7ab64bebad5ccc796e 5a0606fccb09fce4b47545ae9896139acca547f5 5a0606fccb09fce4b47545ae9896139acca547f5 - 4.5.0-preview1-25322-02 - 2.1.0-preview1-25322-02 - 2.1.0-preview1-25321-03 + 4.5.0-preview1-25323-02 + 2.1.0-preview1-25323-02 + 2.1.0-preview1-25322-03 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.1.0-preview1-25322-01 1.4.1 From ea41d5baa9df9694350bf98f6f19e289494ac897 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Tue, 23 May 2017 09:53:06 -0700 Subject: [PATCH 463/625] Fix casing of package name in generated deb json --- publish/dir.targets | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/publish/dir.targets b/publish/dir.targets index c605f2fa..6539970f 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -74,10 +74,10 @@ dotnet-host - dotnet-hostfxr-$(HostResolverVersion) + dotnet-hostfxr-$(HostResolverVersion.ToLower()) - dotnet-sharedframework-$(SharedFrameworkName)-$(SharedFrameworkNugetVersion) + dotnet-sharedframework-$(SharedFrameworkName.ToLower())-$(SharedFrameworkNugetVersion.ToLower()) From c4a75d2d68ddaacc505a816d0c2970caeb21c07e Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Tue, 23 May 2017 10:43:45 -0700 Subject: [PATCH 464/625] Update CoreClr, Standard, WCF to preview1-25323-01, preview1-25323-01, preview1-25323-01, respectively (#2486) --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index 2bcb2016..f18ae2ca 100644 --- a/dependencies.props +++ b/dependencies.props @@ -10,19 +10,19 @@ --> 8ca527a74acbc73ee9340b7ab64bebad5ccc796e - 8ca527a74acbc73ee9340b7ab64bebad5ccc796e - 5a0606fccb09fce4b47545ae9896139acca547f5 - 5a0606fccb09fce4b47545ae9896139acca547f5 + 5dfd662db1b2793a26441fe3c0a8ee5136004aed + 5dfd662db1b2793a26441fe3c0a8ee5136004aed + 5dfd662db1b2793a26441fe3c0a8ee5136004aed 4.5.0-preview1-25323-02 2.1.0-preview1-25323-02 - 2.1.0-preview1-25322-03 + 2.1.0-preview1-25323-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25322-01 + 2.1.0-preview1-25323-01 1.4.1 - 4.5.0-preview1-25322-01 + 4.5.0-preview1-25323-01 From 41b99a6f96eaa46c505c11ca5c56fd7b901efc4d Mon Sep 17 00:00:00 2001 From: karajas Date: Tue, 23 May 2017 11:57:41 -0700 Subject: [PATCH 465/625] Ensure Duplicate items aren't present during publish --- publish/dir.props | 4 ++-- publish/publish.proj | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/publish/dir.props b/publish/dir.props index 8d318070..29fdf345 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -28,10 +28,10 @@ $(BinariesRelativePath) - + $(InstallersRelativePath) - + $(InstallersRelativePath)
diff --git a/publish/publish.proj b/publish/publish.proj index 268920b0..09e4fc76 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -30,7 +30,21 @@ BuildInParallel="true" />
+ + + + + + @(ItemsToPublish->Count()) + @(DedupItems->Count()) + <_HasDups Condition="'$(CountOld)' != '$(CountNew)'">true + + + + + From 8f1afb11fc1ab6c840986d5e8651f1e5680f39f8 Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Tue, 23 May 2017 14:00:46 -0700 Subject: [PATCH 466/625] Update installer and archive names per new guidelines ( master/2.1.0) (#2488) * format installer and archive file name per new guidelines * Update installer and archive name per new naming convention. --- README.md | 72 ++++++++++++++--------------- dir.props | 11 ++++- publish/dir.targets | 2 +- src/pkg/packaging/deb/package.props | 2 +- src/pkg/packaging/dir.props | 18 ++++---- src/pkg/packaging/rpm/package.props | 2 +- 6 files changed, 58 insertions(+), 49 deletions(-) diff --git a/README.md b/README.md index 8521892a..ebadc769 100644 --- a/README.md +++ b/README.md @@ -66,11 +66,11 @@ Daily Builds [win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-x64_Release_version_badge.svg [win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.x64.version -[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.exe -[win-x64-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.exe.sha512 -[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.zip -[win-x64-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x64.latest.zip.sha512 -[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-x64.latest.zip +[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x64.latest.exe +[win-x64-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x64.latest.exe.sha512 +[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x64.latest.zip +[win-x64-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x64.latest.zip.sha512 +[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-win-x64.latest.zip [win-x64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-x64_Release_version_badge.svg [win-x64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.x64.version @@ -78,7 +78,7 @@ Daily Builds [win-x64-installer-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.exe.sha512 [win-x64-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.zip [win-x64-zip-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.zip.sha512 -[win-x64-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-win-x64.latest.zip +[win-x64-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-symbols-win-x64.latest.zip [win-x64-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x64_Release_version_badge.svg [win-x64-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x64.version @@ -92,11 +92,11 @@ Daily Builds [win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-x86_Release_version_badge.svg [win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.x86.version -[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.exe -[win-x86-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.exe.sha512 -[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.zip -[win-x86-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-x86.latest.zip.sha512 -[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-x86.latest.zip +[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x86.latest.exe +[win-x86-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x86.latest.exe.sha512 +[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x86.latest.zip +[win-x86-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x86.latest.zip.sha512 +[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-win-x86.latest.zip [win-x86-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-x86_Release_version_badge.svg [win-x86-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.x86.version @@ -118,9 +118,9 @@ Daily Builds [win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-arm_Release_version_badge.svg [win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.arm.version -[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm.latest.zip -[win-arm-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm.latest.zip.sha512 -[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-arm.latest.zip +[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-arm.latest.zip +[win-arm-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-arm.latest.zip.sha512 +[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-win-arm.latest.zip [win-arm-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-arm_Release_version_badge.svg [win-arm-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.arm.version @@ -130,9 +130,9 @@ Daily Builds [win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-arm64_Release_version_badge.svg [win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.arm64.version -[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm64.latest.zip -[win-arm64-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-win-arm64.latest.zip.sha512 -[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-win-arm64.latest.zip +[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-arm64.latest.zip +[win-arm64-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-arm64.latest.zip.sha512 +[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-win-arm64.latest.zip [win-arm64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-arm64_Release_version_badge.svg [win-arm64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.arm64.version @@ -142,11 +142,11 @@ Daily Builds [osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_osx-x64_Release_version_badge.svg [osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.osx.x64.version -[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.pkg -[osx-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.pkg.sha512 -[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.tar.gz -[osx-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-osx-x64.latest.tar.gz.sha512 -[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz +[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-osx-x64.latest.pkg +[osx-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-osx-x64.latest.pkg.sha512 +[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-osx-x64.latest.tar.gz +[osx-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-osx-x64.latest.tar.gz.sha512 +[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-osx-x64.latest.tar.gz [osx-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_osx-x64_Release_version_badge.svg [osx-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.osx.x64.version @@ -169,9 +169,9 @@ Daily Builds [linux-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_linux-x64_Release_version_badge.svg [linux-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.linux.x64.version -[linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-x64.latest.tar.gz -[linux-x64-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-x64.latest.tar.gz.sha512 -[linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz +[linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-linux-x64.latest.tar.gz +[linux-x64-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-linux-x64.latest.tar.gz.sha512 +[linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-linux-x64.latest.tar.gz [linux-x64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_linux-x64_Release_version_badge.svg [linux-x64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.linux.x64.version @@ -181,9 +181,9 @@ Daily Builds [linux-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_linux-arm_Release_version_badge.svg [linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.linux.arm.version -[linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-arm.latest.tar.gz -[linux-arm-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-linux-arm.latest.tar.gz -[linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-symbols-linux-arm.latest.tar.gz +[linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-linux-arm.latest.tar.gz +[linux-arm-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-linux-arm.latest.tar.gz.sha512 +[linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-linux-arm.latest.tar.gz [linux-arm-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_linux-arm_Release_version_badge.svg [linux-arm-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.linux.arm.version @@ -230,8 +230,8 @@ Daily Builds [ubuntu-16.04-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.04-x64.latest.deb.sha512 [ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb [ubuntu-16.04-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb.sha512 -[ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb.sha512 +[ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-ubuntu.16.04-x64.latest.deb +[ubuntu-16.04-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-ubuntu.16.04-x64.latest.deb.sha512 [ubuntu-16.04-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg [ubuntu-16.04-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.16.04.x64.version @@ -262,8 +262,8 @@ Daily Builds [ubuntu-16.10-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.10-x64.latest.deb.sha512 [ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb [ubuntu-16.10-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb.sha512 -[ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb.sha512 +[ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-ubuntu.16.10-x64.latest.deb +[ubuntu-16.10-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-ubuntu.16.10-x64.latest.deb.sha512 [ubuntu-16.10-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg [ubuntu-16.10-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.16.10.x64.version @@ -288,8 +288,8 @@ Daily Builds [debian-8.2-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-debian.8-x64.latest.deb.sha512 [debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-debian.8-x64.latest.deb [debian-8.2-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-debian.8-x64.latest.deb.sha512 -[debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-debian.8-x64.latest.deb -[debian-8.2-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-debian.8-x64.latest.deb.sha512 +[debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-debian.8-x64.latest.deb +[debian-8.2-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-debian.8-x64.latest.deb.sha512 [debian-8.2-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_debian.8-x64_Release_version_badge.svg [debian-8.2-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.debian.8.x64.version @@ -328,8 +328,8 @@ Daily Builds [rhel7-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-rhel.7-x64.latest.rpm.sha512 [rhel7-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-rhel.7-x64.latest.rpm [rhel7-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-rhel.7-x64.latest.rpm.sha512 -[rhel7-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-rhel.7-x64.latest.rpm -[rhel7-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-rhel.7-x64.latest.rpm.sha512 +[rhel7-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-rhel.7-x64.latest.rpm +[rhel7-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-rhel.7-x64.latest.rpm.sha512 [rhel7-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_rhel.7-x64_Release_version_badge.svg [rhel7-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.rhel.7.x64.version diff --git a/dir.props b/dir.props index 99904bbe..04b9135c 100644 --- a/dir.props +++ b/dir.props @@ -280,9 +280,18 @@ + $(PackagesOutDir)dotnet-runtime- $(PackagesOutDir)dotnet-host- $(PackagesOutDir)dotnet-hostfxr- - $(PackagesOutDir)dotnet-sharedframework- + $(PackagesOutDir)dotnet-runtime- + + + internal + $(SharedHostInstallerStart)$(InstallerStartSuffix)- + $(HostFxrInstallerStart)$(InstallerStartSuffix)- + $(SharedFrameworkInstallerStart)$(InstallerStartSuffix)- + diff --git a/publish/dir.targets b/publish/dir.targets index 6539970f..d28c172f 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -77,7 +77,7 @@ dotnet-hostfxr-$(HostResolverVersion.ToLower()) - dotnet-sharedframework-$(SharedFrameworkName.ToLower())-$(SharedFrameworkNugetVersion.ToLower()) + dotnet-runtime-$(SharedFrameworkNugetVersion.ToLower()) diff --git a/src/pkg/packaging/deb/package.props b/src/pkg/packaging/deb/package.props index e52aec35..5142be74 100644 --- a/src/pkg/packaging/deb/package.props +++ b/src/pkg/packaging/deb/package.props @@ -13,7 +13,7 @@ dotnet-hostfxr-$(HostResolverVersion) $(HostFxrDebPkgName.ToLower()) - dotnet-sharedframework-$(SharedFrameworkName)-$(SharedFrameworkNugetVersion) + dotnet-runtime-$(SharedFrameworkNugetVersion) $(SharedFxDebPkgName.ToLower()) \ No newline at end of file diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index ffac9a01..0a4b661f 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -16,20 +16,20 @@ - $(PackageTargetRid).$(SharedFrameworkNugetVersion) - $(PackageTargetRid).$(HostResolverVersion) + $(SharedFrameworkNugetVersion)-$(PackageTargetRid) + $(HostResolverVersion)-$(PackageTargetRid) - dotnet-$(ProductMoniker)$(CompressedFileExtension) - dotnet-hostfxr-$(PackageTargetRid).$(HostResolverVersion)$(CompressedFileExtension) - dotnet-sharedframework-$(ProductMoniker)$(CompressedFileExtension) - dotnet-sharedframework-symbols-$(ProductMoniker)$(CompressedFileExtension) + dotnet-runtime-$(ProductMoniker)$(CompressedFileExtension) + dotnet-hostfxr-internal-$(PackageTargetRid).$(HostResolverVersion)$(CompressedFileExtension) + dotnet-runtime-internal-$(ProductMoniker)$(CompressedFileExtension) + dotnet-runtime-symbols-$(ProductMoniker)$(CompressedFileExtension) - $(PackagesOutDir)dotnet-$(ProductMoniker)$(CombinedInstallerExtension) - $(PackagesOutDir)dotnet-$(ProductMoniker)-engine.exe + $(CombinedInstallerStart)$(ProductMoniker)$(CombinedInstallerExtension) + $(CombinedInstallerStart)$(ProductMoniker)-engine.exe $(SharedHostInstallerStart)$(ProductMoniker)$(InstallerExtension) $(HostFxrInstallerStart)$(HostResolverVersionMoniker)$(InstallerExtension) $(SharedFrameworkInstallerStart)$(ProductMoniker)$(InstallerExtension) @@ -40,6 +40,6 @@ Microsoft .NET Core $(ProductionVersion) $(ReleaseBrandSuffix) $(ProductBrandPrefix) Host $(ProductBrandPrefix) Host FX Resolver - $(ProductBrandPrefix) Runtime + $(ProductBrandPrefix) Runtime \ No newline at end of file diff --git a/src/pkg/packaging/rpm/package.props b/src/pkg/packaging/rpm/package.props index 3bef4e46..77b10da4 100644 --- a/src/pkg/packaging/rpm/package.props +++ b/src/pkg/packaging/rpm/package.props @@ -7,7 +7,7 @@ $(SharedHostRpmPkgName.ToLower()) dotnet-hostfxr-$(HostResolverVersion) $(HostFxrRpmPkgName.ToLower()) - dotnet-sharedframework-$(SharedFrameworkName)-$(SharedFrameworkNugetVersion) + dotnet-runtime-$(SharedFrameworkNugetVersion) $(SharedFxRpmPkgName.ToLower()) $(MSBuildThisFileDirectory)/templates $(MSBuildThisFileDirectory)/scripts From ae2eaaa240b632312fb674688ff45f698ac88d3f Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Tue, 23 May 2017 14:25:20 -0700 Subject: [PATCH 467/625] Remove centos from PublishRids --- publish/dir.props | 1 - 1 file changed, 1 deletion(-) diff --git a/publish/dir.props b/publish/dir.props index 29fdf345..303478cf 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -49,6 +49,5 @@ -
From c3dd461c99bfdcb8d136bedf33e46156682fc348 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Thu, 18 May 2017 17:30:42 -0700 Subject: [PATCH 468/625] roll forward across hive --- .../design-docs/multilevel-sharedfx-lookup.md | 24 ++-- src/corehost/cli/args.cpp | 6 +- src/corehost/cli/args.h | 7 +- src/corehost/cli/deps_resolver.cpp | 9 +- src/corehost/cli/fxr/fx_muxer.cpp | 113 ++++++++++++------ src/corehost/cli/fxr/fx_muxer.h | 2 +- src/corehost/common/pal.h | 4 +- src/corehost/common/pal.unix.cpp | 30 +++-- src/corehost/common/pal.windows.cpp | 8 +- src/corehost/common/utils.cpp | 14 ++- src/corehost/common/utils.h | 2 +- 11 files changed, 135 insertions(+), 84 deletions(-) diff --git a/Documentation/design-docs/multilevel-sharedfx-lookup.md b/Documentation/design-docs/multilevel-sharedfx-lookup.md index 5eaac3ca..ce3483ae 100644 --- a/Documentation/design-docs/multilevel-sharedfx-lookup.md +++ b/Documentation/design-docs/multilevel-sharedfx-lookup.md @@ -80,14 +80,7 @@ At last, the coreclr is loaded into memory and called to run the application. ## Proposed changes -Almost every file search is done in relation to the executable directory. It would be better to be able to search for some files in other directories as well. Suggested folders are the user location and the global .NET location. The user and global folders may vary depending on the running operational system. They are defined as follows: - -User location: - - Windows 32-bit: %SystemDrive%\Users\username\.dotnet\x86 - Windows 64-bit: %SystemDrive%\Users\username\.dotnet\x64 - Unix 32-bit: /home/username/.dotnet/x86 - Unix 64-bit: /home/username/.dotnet/x64 +Almost every file search is done in relation to the executable directory. It would be better to be able to search for some files in other directories as well, namely the global .NET location. The global folders may vary depending on the running operational system. They are defined as follows: Global .NET location: @@ -102,15 +95,13 @@ It’s being proposed that, if the specified version is defined through the conf - For productions: - 1. In relation to the user location: search for the most appropriate version by rolling forward. If it cannot be found, proceed to the next step. - 2. In relation to the executable directory: search for the most appropriate version by rolling forward. If it cannot be found, proceed to the next step. - 3. In relation to the global location: search for the most appropriate version by rolling forward. If it cannot be found, then we were not able to locate any compatible version. + 1. In relation to the executable directory: search for the most appropriate version by rolling forward. If it cannot be found, proceed to the next step. + 2. In relation to the global location: search for the most appropriate version by rolling forward. If it cannot be found, then we were not able to locate any compatible version. - For pre-releases: - 1. In relation to the user location: search for the specified version. If it cannot be found, search for the most appropriate version by rolling forward. If no compatible version can be found, proceed to the next step. - 2. In relation to the executable directory: search for the specified version. If it cannot be found, search for the most appropriate version by rolling forward. If no compatible version can be found, proceed to the next step. - 3. In relation to the global location: search for the specified version. If it cannot be found, search for the most appropriate version by rolling forward. If no compatible version can be found, then we were not able to locate any compatible version. + 1. In relation to the executable directory: search for the specified version. If it cannot be found, search for the most appropriate version by rolling forward. If no compatible version can be found, proceed to the next step. + 2. In relation to the global location: search for the specified version. If it cannot be found, search for the most appropriate version by rolling forward. If no compatible version can be found, then we were not able to locate any compatible version. In the case that the desired version is defined through an argument, the multi-level lookup will happen as well but it will only consider the exact specified version (it will not roll forward). @@ -132,6 +123,5 @@ By following similar logic, it will be possible to implement future changes in t The search would be conducted as follows: -1. In relation to the user location: search for the specified version. If it cannot be found, choose the most appropriate available version. If there’s no available version, proceed to the next step. -2. In relation to the executable directory: search for the specified version. If it cannot be found, choose the most appropriate available version. If there’s no available version, proceed to the next step. -3. In relation to the global location: search for the specified version. If it cannot be found, choose the most appropriate available version. If there’s no available version, then we were not able to find any version folder and an error message must be returned. +1. In relation to the executable directory: search for the specified version. If it cannot be found, choose the most appropriate available version. If there’s no available version, proceed to the next step. +2. In relation to the global location: search for the specified version. If it cannot be found, choose the most appropriate available version. If there’s no available version, then we were not able to find any version folder and an error message must be returned. diff --git a/src/corehost/cli/args.cpp b/src/corehost/cli/args.cpp index ecaa8d88..e42887bd 100644 --- a/src/corehost/cli/args.cpp +++ b/src/corehost/cli/args.cpp @@ -58,11 +58,7 @@ void setup_shared_store_paths(const hostpolicy_init_t& init, const pal::string_t } // Global shared store dir - if (get_global_shared_store_dir(&args->global_shared_store)) - { - append_path(&args->global_shared_store, get_arch()); - append_path(&args->global_shared_store, init.tfm.c_str()); - } + get_global_shared_store_dirs(&args->global_shared_stores, get_arch(), init.tfm); } bool parse_arguments( diff --git a/src/corehost/cli/args.h b/src/corehost/cli/args.h index 6a994375..cf7827c9 100644 --- a/src/corehost/cli/args.h +++ b/src/corehost/cli/args.h @@ -85,7 +85,7 @@ struct arguments_t std::vector probe_paths; pal::string_t managed_application; pal::string_t local_shared_store; - pal::string_t global_shared_store; + std::vector global_shared_stores; pal::string_t dotnet_shared_store; std::vector env_shared_store; int app_argc; @@ -109,7 +109,10 @@ struct arguments_t } trace::verbose(_X("-- arguments_t: local shared store: '%s'"), local_shared_store.c_str()); trace::verbose(_X("-- arguments_t: dotnet shared store: '%s'"), dotnet_shared_store.c_str()); - trace::verbose(_X("-- arguments_t: global shared store: '%s'"), global_shared_store.c_str()); + for (const auto& global_shared : global_shared_stores) + { + trace::verbose(_X("-- arguments_t: global shared store: '%s'"), global_shared.c_str()); + } } } }; diff --git a/src/corehost/cli/deps_resolver.cpp b/src/corehost/cli/deps_resolver.cpp index 9b8d43d2..d7807aaf 100644 --- a/src/corehost/cli/deps_resolver.cpp +++ b/src/corehost/cli/deps_resolver.cpp @@ -162,9 +162,14 @@ void deps_resolver_t::setup_shared_store_probes( m_probes.push_back(probe_config_t::lookup(args.dotnet_shared_store)); } - if (args.global_shared_store != args.dotnet_shared_store && pal::directory_exists(args.global_shared_store)) + + for (const auto& global_shared : args.global_shared_stores) { - m_probes.push_back(probe_config_t::lookup(args.global_shared_store)); + if (global_shared != args.dotnet_shared_store && pal::directory_exists(global_shared)) + { + // Shared Store probe: DOTNET_SHARED_STORE + m_probes.push_back(probe_config_t::lookup(global_shared)); + } } } diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index 806ed918..17472c8e 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -333,7 +333,7 @@ bool fx_muxer_t::resolve_hostpolicy_dir(host_mode_t mode, return false; } -void fx_muxer_t::resolve_roll_forward(pal::string_t& fx_dir, +fx_ver_t fx_muxer_t::resolve_framework_version(const std::vector& version_list, const pal::string_t& fx_ver, const fx_ver_t& specified, const bool& patch_roll_fwd, @@ -341,8 +341,7 @@ void fx_muxer_t::resolve_roll_forward(pal::string_t& fx_dir, { trace::verbose(_X("Attempting FX roll forward starting from [%s]"), fx_ver.c_str()); - std::vector list; - pal::readdir(fx_dir, &list); + fx_ver_t most_compatible = specified; if (!specified.is_prerelease()) { @@ -350,10 +349,10 @@ void fx_muxer_t::resolve_roll_forward(pal::string_t& fx_dir, { trace::verbose(_X("'Roll forward on no candidate fx' enabled. Looking for the least production greater than or equal to [%s]"), fx_ver.c_str()); fx_ver_t next_lowest(-1, -1, -1); - for (const auto& version : list) + for (const auto& ver : version_list) { - fx_ver_t ver(-1, -1, -1); - if (fx_ver_t::parse(version, &ver, true) && (ver >= specified)) + + if (!ver.is_prerelease() && ver >= specified) { next_lowest = (next_lowest == fx_ver_t(-1, -1, -1)) ? ver : std::min(next_lowest, ver); } @@ -371,12 +370,11 @@ void fx_muxer_t::resolve_roll_forward(pal::string_t& fx_dir, if (patch_roll_fwd) { trace::verbose(_X("Applying patch roll forward from [%s]"), most_compatible.as_str().c_str()); - for (const auto& version : list) + for (const auto& ver : version_list) { - trace::verbose(_X("Inspecting version... [%s]"), version.c_str()); - fx_ver_t ver(-1, -1, -1); + trace::verbose(_X("Inspecting version... [%s]"), ver.as_str().c_str()); - if (fx_ver_t::parse(version, &ver, true) && // true -- only prod. prevents roll forward to prerelease. + if (!ver.is_prerelease() && // only prod. prevents roll forward to prerelease. ver.get_major() == most_compatible.get_major() && ver.get_minor() == most_compatible.get_minor()) { @@ -388,13 +386,12 @@ void fx_muxer_t::resolve_roll_forward(pal::string_t& fx_dir, } else { - for (const auto& version : list) + for (const auto& ver : version_list) { - trace::verbose(_X("Inspecting version... [%s]"), version.c_str()); - fx_ver_t ver(-1, -1, -1); + trace::verbose(_X("Inspecting version... [%s]"), ver.as_str().c_str()); - if (fx_ver_t::parse(version, &ver, false) && // false -- implies both production and prerelease. - ver.is_prerelease() && // prevent roll forward to production. + //both production and prerelease. + if (ver.is_prerelease() && // prevent roll forward to production. ver.get_major() == specified.get_major() && ver.get_minor() == specified.get_minor() && ver.get_patch() == specified.get_patch() && @@ -405,8 +402,8 @@ void fx_muxer_t::resolve_roll_forward(pal::string_t& fx_dir, } } } - pal::string_t most_compatible_str = most_compatible.as_str(); - append_path(&fx_dir, most_compatible_str.c_str()); + + return most_compatible; } pal::string_t fx_muxer_t::resolve_fx_dir(host_mode_t mode, @@ -438,30 +435,27 @@ pal::string_t fx_muxer_t::resolve_fx_dir(host_mode_t mode, // Multi-level SharedFX lookup will look for the most appropriate version in several locations // by following the priority rank below: - // User directory // .exe directory // Global .NET directory // If it is not activated, then only .exe directory will be considered std::vector hive_dir; pal::string_t local_dir; - pal::string_t global_dir; + std::vector global_dirs; bool multilevel_lookup = multilevel_lookup_enabled(); - if (multilevel_lookup) - { - if (pal::get_local_dotnet_dir(&local_dir)) - { - hive_dir.push_back(local_dir); - } - } hive_dir.push_back(own_dir); - if (multilevel_lookup && pal::get_global_dotnet_dir(&global_dir)) + if (multilevel_lookup && pal::get_global_dotnet_dirs(&global_dirs)) { - hive_dir.push_back(global_dir); + for (pal::string_t dir : global_dirs) + { + hive_dir.push_back(dir); + } } bool patch_roll_fwd_enabled = config.get_patch_roll_fwd(); + pal::string_t selected_fx_dir; + fx_ver_t selected_ver(-1, -1, -1); for (pal::string_t dir : hive_dir) { @@ -492,22 +486,60 @@ pal::string_t fx_muxer_t::resolve_fx_dir(host_mode_t mode, { trace::verbose(_X("Did not roll forward because specified version='%s', patch_roll_fwd=%d, roll_fwd_on_no_candidate_fx=%d, chose [%s]"), specified_fx_version.c_str(), patch_roll_fwd_enabled, roll_fwd_on_no_candidate_fx_val, fx_ver.c_str()); + append_path(&fx_dir, fx_ver.c_str()); + if (pal::directory_exists(fx_dir)) + { + trace::verbose(_X("Chose FX version [%s]"), fx_dir.c_str()); + return fx_dir; + } } else { - resolve_roll_forward(fx_dir, fx_ver, specified, patch_roll_fwd_enabled, roll_fwd_on_no_candidate_fx_val); - } + std::vector list; + std::vector version_list; + pal::readdir(fx_dir, &list); - if (pal::directory_exists(fx_dir)) - { - trace::verbose(_X("Chose FX version [%s]"), fx_dir.c_str()); - return fx_dir; + for (const auto& version : list) + { + fx_ver_t ver(-1, -1, -1); + if (fx_ver_t::parse(version, &ver, false)) + { + version_list.push_back(ver); + } + } + + fx_ver_t resolved_ver = resolve_framework_version(version_list, fx_ver, specified, patch_roll_fwd_enabled, roll_fwd_on_no_candidate_fx_val); + + pal::string_t resolved_ver_str = resolved_ver.as_str(); + append_path(&fx_dir, resolved_ver_str.c_str()); + + if (pal::directory_exists(fx_dir)) + { + //Continue to search for a better match if available + std::vector version_list; + version_list.push_back(resolved_ver); + version_list.push_back(selected_ver); + resolved_ver = resolve_framework_version(version_list, fx_ver, specified, patch_roll_fwd_enabled, roll_fwd_on_no_candidate_fx_val); + + if (resolved_ver != selected_ver) + { + trace::verbose(_X("Changing Selected FX version from [%s] to [%s]"), selected_fx_dir.c_str(), fx_dir.c_str()); + selected_ver = resolved_ver; + selected_fx_dir = fx_dir; + } + } } } - trace::error(_X("It was not possible to find any compatible framework version")); - return pal::string_t(); + if (selected_fx_dir.empty()) + { + trace::error(_X("It was not possible to find any compatible framework version")); + return pal::string_t(); + } + + trace::verbose(_X("Chose FX version [%s]"), selected_fx_dir.c_str()); + return selected_fx_dir; } pal::string_t fx_muxer_t::resolve_cli_version(const pal::string_t& global_json) @@ -656,7 +688,7 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal std::vector hive_dir; pal::string_t local_dir; - pal::string_t global_dir; + std::vector global_dirs; bool multilevel_lookup = multilevel_lookup_enabled(); if (multilevel_lookup) @@ -672,9 +704,12 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal hive_dir.push_back(own_dir); } - if (multilevel_lookup && pal::get_global_dotnet_dir(&global_dir)) + if (multilevel_lookup && pal::get_global_dotnet_dirs(&global_dirs)) { - hive_dir.push_back(global_dir); + for (pal::string_t dir : global_dirs) + { + hive_dir.push_back(dir); + } } pal::string_t cli_version; diff --git a/src/corehost/cli/fxr/fx_muxer.h b/src/corehost/cli/fxr/fx_muxer.h index 5fbae1c2..3b762ace 100644 --- a/src/corehost/cli/fxr/fx_muxer.h +++ b/src/corehost/cli/fxr/fx_muxer.h @@ -35,7 +35,7 @@ private: const std::vector& probe_realpaths, const runtime_config_t& config, pal::string_t* impl_dir); - static void resolve_roll_forward(pal::string_t& fx_dir, const pal::string_t& fx_ver, const fx_ver_t& specified, const bool& patch_roll_fwd, const int& roll_fwd_on_no_candidate_fx); + static fx_ver_t resolve_framework_version(const std::vector& version_list, const pal::string_t& fx_ver, const fx_ver_t& specified, const bool& patch_roll_fwd, const int& roll_fwd_on_no_candidate_fx); static pal::string_t resolve_fx_dir(host_mode_t mode, const pal::string_t& own_dir, const runtime_config_t& config, const pal::string_t& specified_fx_version, const int& roll_fwd_on_no_candidate_fx_val); static pal::string_t resolve_cli_version(const pal::string_t& global); static bool resolve_sdk_dotnet_path(const pal::string_t& own_dir, pal::string_t* cli_sdk); diff --git a/src/corehost/common/pal.h b/src/corehost/common/pal.h index 13f6f61a..76fb18ea 100644 --- a/src/corehost/common/pal.h +++ b/src/corehost/common/pal.h @@ -211,7 +211,9 @@ namespace pal bool getenv(const char_t* name, string_t* recv); bool get_default_servicing_directory(string_t* recv); bool get_local_dotnet_dir(string_t* recv); - bool get_global_dotnet_dir(string_t* recv); + //On Linux, we determine global location by enumerating the location where dotnet is present on path, hence there could be multiple such locations + //On Windows there will be only one global location + bool get_global_dotnet_dirs(std::vector* recv); bool get_default_breadcrumb_store(string_t* recv); bool is_path_rooted(const string_t& path); diff --git a/src/corehost/common/pal.unix.cpp b/src/corehost/common/pal.unix.cpp index 2ae8aa01..9f0fb4fe 100644 --- a/src/corehost/common/pal.unix.cpp +++ b/src/corehost/common/pal.unix.cpp @@ -183,7 +183,7 @@ bool is_executable(const pal::string_t& file_path) } static -bool locate_dotnet_on_path(pal::string_t* dotnet_exe) +bool locate_dotnet_on_path(std::vector* dotnet_exes) { pal::string_t path; if (!pal::getenv(_X("PATH"), &path)) @@ -204,12 +204,17 @@ bool locate_dotnet_on_path(pal::string_t* dotnet_exe) append_path(&tok, _X("dotnet")); if (pal::realpath(&tok) && is_executable(tok)) { - *dotnet_exe = tok; - return true; + dotnet_exes->push_back(tok); } tok.clear(); } - return false; + + if (dotnet_exes->empty()) + { + return false; + } + + return true; } bool pal::get_local_dotnet_dir(pal::string_t* recv) @@ -234,16 +239,21 @@ bool pal::get_local_dotnet_dir(pal::string_t* recv) return true; } - bool pal::get_global_dotnet_dir(pal::string_t* recv) + bool pal::get_global_dotnet_dirs(std::vector* recv) { - recv->clear(); - pal::string_t dotnet_exe; - if (!locate_dotnet_on_path(&dotnet_exe)) + + std::vector dotnet_exes; + if (!locate_dotnet_on_path(&dotnet_exes)) { return false; } - pal::string_t dir = get_directory(dotnet_exe); - recv->assign(dir); + + for (pal::string_t path : dotnet_exes) + { + pal::string_t dir = get_directory(path); + recv->push_back(dir); + } + return true; } diff --git a/src/corehost/common/pal.windows.cpp b/src/corehost/common/pal.windows.cpp index b13e0ab8..c7ee63e2 100644 --- a/src/corehost/common/pal.windows.cpp +++ b/src/corehost/common/pal.windows.cpp @@ -195,14 +195,16 @@ bool pal::get_default_servicing_directory(string_t* recv) return true; } -bool pal::get_global_dotnet_dir(pal::string_t* dir) +bool pal::get_global_dotnet_dirs(std::vector* dirs) { - if (!get_file_path_from_env(_X("ProgramFiles"), dir)) + pal::string_t dir; + if (!get_file_path_from_env(_X("ProgramFiles"), &dir)) { return false; } - append_path(dir, _X("dotnet")); + append_path(&dir, _X("dotnet")); + dirs->push_back(dir); return true; } diff --git a/src/corehost/common/utils.cpp b/src/corehost/common/utils.cpp index e49039d7..b104d32b 100644 --- a/src/corehost/common/utils.cpp +++ b/src/corehost/common/utils.cpp @@ -278,13 +278,21 @@ bool get_env_shared_store_dirs(std::vector* dirs, const pal::stri return true; } -bool get_global_shared_store_dir(pal::string_t* dir) +bool get_global_shared_store_dirs(std::vector* dirs, const pal::string_t& arch, const pal::string_t& tfm) { - if (!pal::get_global_dotnet_dir(dir)) + std::vector global_dirs; + if (!pal::get_global_dotnet_dirs(&global_dirs)) { return false; } - append_path(dir, RUNTIME_STORE_DIRECTORY_NAME); + + for (pal::string_t dir : global_dirs) + { + append_path(&dir, RUNTIME_STORE_DIRECTORY_NAME); + append_path(&dir, arch.c_str()); + append_path(&dir, tfm.c_str()); + dirs->push_back(dir); + } return true; } diff --git a/src/corehost/common/utils.h b/src/corehost/common/utils.h index dbbc3271..ec181422 100644 --- a/src/corehost/common/utils.h +++ b/src/corehost/common/utils.h @@ -41,5 +41,5 @@ bool parse_known_args( bool skip_utf8_bom(pal::ifstream_t* stream); bool get_env_shared_store_dirs(std::vector* dirs, const pal::string_t& arch, const pal::string_t& tfm); bool get_local_shared_store_dir(pal::string_t* recv); -bool get_global_shared_store_dir(pal::string_t* recv); +bool get_global_shared_store_dirs(std::vector* dirs, const pal::string_t& arch, const pal::string_t& tfm); #endif From 3b00d091c9ba42a140e2b689549fc3b43e12adad Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Fri, 19 May 2017 15:53:37 -0700 Subject: [PATCH 469/625] Modifying test for multilevel FX lookup - Remove user profile testing - add test for multiple global locations for non windows --- ...nThatICareAboutMultilevelSharedFxLookup.cs | 323 ++++++++++++------ src/test/TestUtils/Command.cs | 36 ++ src/test/TestUtils/DotNetCli.cs | 3 +- 3 files changed, 262 insertions(+), 100 deletions(-) diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs index 5f9c0627..0669d757 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs @@ -1,4 +1,5 @@ using Microsoft.DotNet.InternalAbstractions; +using Microsoft.DotNet.Cli.Build.Framework; using Newtonsoft.Json.Linq; using System; using System.IO; @@ -14,33 +15,40 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku private string _currentWorkingDir; private string _userDir; private string _executableDir; + private string _globalDir; private string _cwdSharedFxBaseDir; private string _userSharedFxBaseDir; private string _exeSharedFxBaseDir; + private string _globalSharedFxBaseDir; private string _builtSharedFxDir; private string _cwdSelectedMessage; private string _userSelectedMessage; private string _exeSelectedMessage; + private string _globalSelectedMessage; private string _sharedFxVersion; - + private string _multilevelDir; + private string _builtDotnet; + private string _hostPolicyDllName; + public GivenThatICareAboutMultilevelSharedFxLookup() { // From the artifacts dir, it's possible to find where the sharedFrameworkPublish folder is. We need // to locate it because we'll copy its contents into other folders string artifactsDir = Environment.GetEnvironmentVariable("TEST_ARTIFACTS"); - string builtDotnet = Path.Combine(artifactsDir, "sharedFrameworkPublish"); + _builtDotnet = Path.Combine(artifactsDir, "sharedFrameworkPublish"); // The dotnetMultilevelSharedFxLookup dir will contain some folders and files that will be // necessary to perform the tests string baseMultilevelDir = Path.Combine(artifactsDir, "dotnetMultilevelSharedFxLookup"); - string multilevelDir = CalculateMultilevelDirectory(baseMultilevelDir); + _multilevelDir = CalculateMultilevelDirectory(baseMultilevelDir); // The three tested locations will be the cwd, the user folder and the exe dir. Both cwd and exe dir // are easily overwritten, so they will be placed inside the multilevel folder. The actual user location will // be used during tests - _currentWorkingDir = Path.Combine(multilevelDir, "cwd"); - _userDir = Path.Combine(multilevelDir, "user"); - _executableDir = Path.Combine(multilevelDir, "exe"); + _currentWorkingDir = Path.Combine(_multilevelDir, "cwd"); + _userDir = Path.Combine(_multilevelDir, "user"); + _executableDir = Path.Combine(_multilevelDir, "exe"); + _globalDir = Path.Combine(_multilevelDir, "global"); RepoDirectories = new RepoDirectoriesProvider(builtDotnet: _executableDir); @@ -48,12 +56,17 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku _cwdSharedFxBaseDir = Path.Combine(_currentWorkingDir, "shared", "Microsoft.NETCore.App"); _userSharedFxBaseDir = Path.Combine(_userDir, ".dotnet", RepoDirectories.BuildArchitecture, "shared", "Microsoft.NETCore.App"); _exeSharedFxBaseDir = Path.Combine(_executableDir, "shared", "Microsoft.NETCore.App"); + _globalSharedFxBaseDir = Path.Combine(_globalDir, "shared", "Microsoft.NETCore.App"); // Create directories. It's necessary to copy the entire publish folder to the exe dir because // we'll need to build from it. The CopyDirectory method automatically creates the dest dir Directory.CreateDirectory(_cwdSharedFxBaseDir); Directory.CreateDirectory(_userSharedFxBaseDir); - CopyDirectory(builtDotnet, _executableDir); + Directory.CreateDirectory(_globalSharedFxBaseDir); + CopyDirectory(_builtDotnet, _executableDir); + + //Copy dotnet to global directory + File.Copy(Path.Combine(_builtDotnet, $"dotnet{Constants.ExeSuffix}"), Path.Combine(_globalDir, $"dotnet{Constants.ExeSuffix}"), true); // Restore and build SharedFxLookupPortableApp from exe dir PreviouslyBuiltAndRestoredPortableTestProjectFixture = new TestProjectFixture("SharedFxLookupPortableApp", RepoDirectories) @@ -65,14 +78,15 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // locate the builtSharedFxDir from which we can get the files contained in the version folder string greatestVersionSharedFxPath = fixture.BuiltDotnet.GreatestVersionSharedFxPath; _sharedFxVersion = (new DirectoryInfo(greatestVersionSharedFxPath)).Name; - _builtSharedFxDir = Path.Combine(builtDotnet, "shared", "Microsoft.NETCore.App", _sharedFxVersion); + _builtSharedFxDir = Path.Combine(_builtDotnet, "shared", "Microsoft.NETCore.App", _sharedFxVersion); - string hostPolicyDllName = Path.GetFileName(fixture.TestProject.HostPolicyDll); + _hostPolicyDllName = Path.GetFileName(fixture.TestProject.HostPolicyDll); // Trace messages used to identify from which folder the framework was picked - _cwdSelectedMessage = $"The expected {hostPolicyDllName} directory is [{_cwdSharedFxBaseDir}"; - _userSelectedMessage = $"The expected {hostPolicyDllName} directory is [{_userSharedFxBaseDir}"; - _exeSelectedMessage = $"The expected {hostPolicyDllName} directory is [{_exeSharedFxBaseDir}"; + _cwdSelectedMessage = $"The expected {_hostPolicyDllName} directory is [{_cwdSharedFxBaseDir}"; + _userSelectedMessage = $"The expected {_hostPolicyDllName} directory is [{_userSharedFxBaseDir}"; + _exeSelectedMessage = $"The expected {_hostPolicyDllName} directory is [{_exeSharedFxBaseDir}"; + _globalSelectedMessage = $"The expected {_hostPolicyDllName} directory is [{_globalSharedFxBaseDir}"; } [Fact] @@ -111,7 +125,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku AddAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.0.0"); // Version: 9999.0.0 - // User: 9999.0.0 + // User: 9999.0.0 --> should not be picked // Exe: 9999.0.0 // Expected: 9999.0.0 from user dir dotnet.Exec(appDll) @@ -124,7 +138,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .Should() .Pass() .And - .HaveStdErrContaining(_userSelectedMessage); + .HaveStdErrContaining(_exeSelectedMessage); // Add a dummy version in the cwd AddAvailableSharedFxVersions(_cwdSharedFxBaseDir, "9999.0.0"); @@ -133,7 +147,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // CWD: 9999.0.0 --> should not be picked // User: 9999.0.0 // Exe: 9999.0.0 - // Expected: 9999.0.0 from user dir + // Expected: 9999.0.0 from user Exe dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") @@ -144,7 +158,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .Should() .Pass() .And - .HaveStdErrContaining(_userSelectedMessage); + .HaveStdErrContaining(_exeSelectedMessage); // Remove dummy folders from user dir DeleteAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.0.0"); @@ -160,70 +174,102 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku var appDll = fixture.TestProject.AppDll; // Add some dummy versions - AddAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.0.2", "9999.0.0-dummy2"); - AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.0", "9999.0.0-dummy0"); + AddAvailableSharedFxVersions(_globalSharedFxBaseDir, "9999.0.2", "9999.0.0-dummy2"); + AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.0"); // Set desired version = 9999.0.0-dummy0 string runtimeConfig = Path.Combine(fixture.TestProject.OutputDirectory, "SharedFxLookupPortableApp.runtimeconfig.json"); SetRuntimeConfigJson(runtimeConfig, "9999.0.0-dummy0"); // Version: 9999.0.0-dummy0 - // User: 9999.0.2, 9999.0.0-dummy2 - // Exe: 9999.0.0, 9999.0.0-dummy0 - // Expected: 9999.0.0-dummy2 from user dir + // Exe: 9999.0.0 + // global: 9999.0.2, 9999.0.0-dummy2 + // Expected: 9999.0.0-dummy2 from global dir dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") - .WithUserProfile(_userDir) + .WithGlobalLocation(_globalDir) .CaptureStdOut() .CaptureStdErr() .Execute() .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.0-dummy2")); - - // Add a prerelease dummy version in userdir - AddAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.0.0-dummy1"); + .HaveStdErrContaining(Path.Combine(_globalSelectedMessage, "9999.0.0-dummy2")); + + AddAvailableSharedFxVersions(_globalSharedFxBaseDir, "9999.0.0-dummy1"); // Version: 9999.0.0-dummy0 - // User: 9999.0.2, 9999.0.0-dummy1, 9999.0.0-dummy2 - // Exe: 9999.0.0, 9999.0.0-dummy0 - // Expected: 9999.0.0-dummy1 from User + // Exe: 9999.0.0 + // global: 9999.0.2, 9999.0.0-dummy1, 9999.0.0-dummy2 + // Expected: 9999.0.0-dummy1 from global dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") - .WithUserProfile(_userDir) + .WithGlobalLocation(_globalDir) .CaptureStdOut() .CaptureStdErr() .Execute() .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.0-dummy1")); + .HaveStdErrContaining(Path.Combine(_globalSelectedMessage, "9999.0.0-dummy1")); + + AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.0-dummy0"); + + // Version: 9999.0.0-dummy0 + // Exe: 9999.0.0, 9999.0.0-dummy0 + // global: 9999.0.2, 9999.0.0-dummy1, 9999.0.0-dummy2 + // Expected: 9999.0.0-dummy1 from global + dotnet.Exec(appDll) + .WorkingDirectory(_currentWorkingDir) + .EnvironmentVariable("COREHOST_TRACE", "1") + .WithGlobalLocation(_globalDir) + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Pass() + .And + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.0-dummy0")); - // Set desired version = 9999.0.0 SetRuntimeConfigJson(runtimeConfig, "9999.0.0"); + // Version: 9999.0.0 + // Exe: 9999.0.0, 9999.0.0-dummy0 + // global: 9999.0.2, 9999.0.0-dummy1, 9999.0.0-dummy2 + // Expected: 9999.0.2 from global + dotnet.Exec(appDll) + .WorkingDirectory(_currentWorkingDir) + .EnvironmentVariable("COREHOST_TRACE", "1") + .WithGlobalLocation(_globalDir) + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Pass() + .And + .HaveStdErrContaining(Path.Combine(_globalSelectedMessage, "9999.0.2")); + + AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.3"); // Version: 9999.0.0 - // CWD: 9999.0.0-dummy1 - // User: 9999.0.2, 9999.0.0-dummy2 - // Exe: 9999.0.0, 9999.0.0-dummy0 - // Expected: 9999.0.2 from user dir + // Exe: 9999.0.0, 9999.0.0-dummy0, 9999.0.3 + // global: 9999.0.2, 9999.0.0-dummy1, 9999.0.0-dummy2 + // Expected: 9999.0.0-dummy1 from global dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") - .WithUserProfile(_userDir) + .WithGlobalLocation(_globalDir) .CaptureStdOut() .CaptureStdErr() .Execute() .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.2")); + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.3")); - // Remove dummy folders from user dir - DeleteAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.0.2", "9999.0.0-dummy2"); + DeleteAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.0", "9999.0.0-dummy0","9999.0.3"); + DeleteAvailableSharedFxVersions(_globalSharedFxBaseDir, "9999.0.2", "9999.0.0-dummy1", "9999.0.0-dummy2"); } [Fact] @@ -236,17 +282,16 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku var appDll = fixture.TestProject.AppDll; // Add some dummy versions - AddAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.0.2", "9999.0.0-dummy2"); - AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.0", "9999.0.3", "9999.0.0-dummy3"); + AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.2", "9999.0.0-dummy2", "9999.0.0", "9999.0.3", "9999.0.0-dummy3"); + // Version: 9999.0.0 (through --fx-version arg) - // User: 9999.0.2, 9999.0.0-dummy2 - // Exe: 9999.0.0, 9999.0.3, 9999.0.0-dummy3 + // Exe: 9999.0.2, 9999.0.0-dummy2, 9999.0.0, 9999.0.3, 9999.0.0-dummy3 + // global: empty // Expected: 9999.0.0 from exe dir dotnet.Exec("--fx-version", "9999.0.0", appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") - .WithUserProfile(_userDir) .CaptureStdOut() .CaptureStdErr() .Execute() @@ -256,13 +301,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.0")); // Version: 9999.0.0-dummy1 (through --fx-version arg) - // User: 9999.0.2, 9999.0.0-dummy2 - // Exe: 9999.0.0, 9999.0.3, 9999.0.0-dummy3 + // Exe: 9999.0.2, 9999.0.0-dummy2,9999.0.0, 9999.0.3, 9999.0.0-dummy3 + // global: empty // Expected: no compatible version dotnet.Exec("--fx-version", "9999.0.0-dummy1", appDll) .WorkingDirectory(_currentWorkingDir) .EnvironmentVariable("COREHOST_TRACE", "1") - .WithUserProfile(_userDir) .CaptureStdOut() .CaptureStdErr() .Execute(fExpectedToFail:true) @@ -271,8 +315,8 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .And .HaveStdErrContaining("It was not possible to find any compatible framework version"); - // Remove dummy folders from user dir - DeleteAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.0.2", "9999.0.0-dummy2"); + + DeleteAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.0", "9999.0.3", "9999.0.0-dummy3", "9999.0.2", "9999.0.0-dummy2"); } [Fact] @@ -297,7 +341,6 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // Expected: 10000.1.3 from exe dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) - .WithUserProfile(_userDir) .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() @@ -317,7 +360,6 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // Expected: 9999.1.1 from exe dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) - .WithUserProfile(_userDir) .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() @@ -351,7 +393,6 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // Expected: no compatible version dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) - .WithUserProfile(_userDir) .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() @@ -377,16 +418,37 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku SetRuntimeConfigJson(runtimeConfig, "9999.0.0"); // Add a dummy version in the exe dir - AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.1.0"); + AddAvailableSharedFxVersions(_globalSharedFxBaseDir, "9999.1.0"); // Version: 9999.0.0 // 'Roll forward on no candidate fx' enabled through env var - // User: empty - // Exe: 9999.1.0 - // Expected: 9999.1.0 from exe dir + // Exe: empty + // Global: 9999.1.0 + // Expected: 9999.1.0 from global dir dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) - .WithUserProfile(_userDir) + .WithGlobalLocation(_globalDir) + .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") + .EnvironmentVariable("COREHOST_TRACE", "1") + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Pass() + .And + .HaveStdErrContaining(_globalSelectedMessage); + + // Add a dummy version in the user dir + AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.1.1"); + + // Version: 9999.0.0 + // 'Roll forward on no candidate fx' enabled through env var + // Exe: 9999.1.1 + // Global: 9999.1.0 + // Expected: 9999.1.1 from exe dir + dotnet.Exec(appDll) + .WorkingDirectory(_currentWorkingDir) + .WithGlobalLocation(_globalDir) .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() @@ -397,29 +459,9 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .And .HaveStdErrContaining(_exeSelectedMessage); - // Add a dummy version in the user dir - AddAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.1.1"); - - // Version: 9999.0.0 - // 'Roll forward on no candidate fx' enabled through env var - // User: 9999.1.1 - // Exe: 9999.1.0 - // Expected: 9999.1.1 from user dir - dotnet.Exec(appDll) - .WorkingDirectory(_currentWorkingDir) - .WithUserProfile(_userDir) - .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") - .EnvironmentVariable("COREHOST_TRACE", "1") - .CaptureStdOut() - .CaptureStdErr() - .Execute() - .Should() - .Pass() - .And - .HaveStdErrContaining(_userSelectedMessage); - // Remove dummy folders from user dir - DeleteAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.1.1"); + DeleteAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.1.1"); + DeleteAvailableSharedFxVersions(_globalSharedFxBaseDir, "9999.1.0"); } [Fact] @@ -437,8 +479,8 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku SetRuntimeConfigJson(runtimeConfig, "9999.0.0", 1); // Add some dummy versions - AddAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.1.0"); - AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.0"); + AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.1.0"); + AddAvailableSharedFxVersions(_globalSharedFxBaseDir, "9999.0.0"); // Set desired version = 9999.0.0 // Disable 'roll forward on no candidate fx' through runtimeconfig @@ -447,12 +489,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // Version: 9999.0.0 // 'Roll forward on no candidate fx' disabled through runtimeconfig - // User: 9999.1.0 - // Exe: 9999.0.0 - // Expected: 9999.0.0 from exe dir + // Exe: 9999.1.0 + // Global: 9999.0.0 + // Expected: 9999.0.0 from global dir dotnet.Exec(appDll) .WorkingDirectory(_currentWorkingDir) - .WithUserProfile(_userDir) + .WithGlobalLocation(_globalDir) .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() @@ -461,7 +503,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .Should() .Pass() .And - .HaveStdErrContaining(_exeSelectedMessage); + .HaveStdErrContaining(_globalSelectedMessage); } [Fact] @@ -479,17 +521,17 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku SetRuntimeConfigJson(runtimeConfig, "9999.0.0", 0); // Add some dummy versions - AddAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.1.0"); - AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.0.0"); + AddAvailableSharedFxVersions(_exeSharedFxBaseDir, "9999.1.1"); + AddAvailableSharedFxVersions(_globalSharedFxBaseDir, "9999.1.2"); // Version: 9999.0.0 // 'Roll forward on no candidate fx' enabled through argument - // User: 9999.1.0 - // Exe: 9999.0.0 - // Expected: 9999.1.0 from User + // Exe: 9999.1.1 + // Global: 9999.1.2 + // Expected: 9999.1.2 from global dotnet.Exec("--roll-forward-on-no-candidate-fx", "1", appDll) .WorkingDirectory(_currentWorkingDir) - .WithUserProfile(_userDir) + .WithGlobalLocation(_globalDir) .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() .CaptureStdErr() @@ -497,7 +539,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .Should() .Pass() .And - .HaveStdErrContaining(_userSelectedMessage); + .HaveStdErrContaining(_globalSelectedMessage); // Set desired version = 9999.0.0 // Enable 'roll forward on no candidate fx' through Runtimeconfig @@ -505,12 +547,67 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku // Version: 9999.0.0 // 'Roll forward on no candidate fx' disabled through argument - // User: 9999.1.0 - // Exe: 9999.0.0 - // Expected: 9999.0.0 from exe dir + // Exe: 9999.1.1 + // Global: 9999.1.2 + // Expected: does not resolve FX dotnet.Exec("--roll-forward-on-no-candidate-fx", "0", appDll) .WorkingDirectory(_currentWorkingDir) - .WithUserProfile(_userDir) + .WithGlobalLocation(_globalDir) + .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") + .EnvironmentVariable("COREHOST_TRACE", "1") + .CaptureStdOut() + .CaptureStdErr() + .Execute(fExpectedToFail:true) + .Should() + .Fail() + .And + .HaveStdErrContaining("It was not possible to find any compatible framework version"); + + } + + [Fact] + public void Ensure_On_NonWindows_Multiple_Global_Locations_Are_Probed() + { + //This test is only applicable on non windows as it tests probing for global + //locations on path + if (RuntimeEnvironment.OperatingSystemPlatform == Platform.Windows) + { + return; + } + + var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture + .Copy(); + + var dotnet = fixture.BuiltDotnet; + var appDll = fixture.TestProject.AppDll; + + var secondary_globalDir = Path.Combine(_multilevelDir, "secondary_global"); + var secondary_globalSharedFxBaseDir = Path.Combine(secondary_globalDir, "shared", "Microsoft.NETCore.App"); + + var secondary_globalSelectedMessage = $"The expected {_hostPolicyDllName} directory is [{secondary_globalSharedFxBaseDir}"; + + Directory.CreateDirectory(_globalSharedFxBaseDir); + Directory.CreateDirectory(secondary_globalSharedFxBaseDir); + //Copy dotnet to global directory + File.Copy(Path.Combine(_builtDotnet, $"dotnet{Constants.ExeSuffix}"), Path.Combine(secondary_globalDir, $"dotnet{Constants.ExeSuffix}"), true); + + // Set desired version = 9999.0.0 + string runtimeConfig = Path.Combine(fixture.TestProject.OutputDirectory, "SharedFxLookupPortableApp.runtimeconfig.json"); + SetRuntimeConfigJson(runtimeConfig, "9999.0.0"); + + // Add a dummy version in the exe dir + AddAvailableSharedFxVersions(_globalSharedFxBaseDir, "9999.1.0"); + + // Version: 9999.0.0 + // 'Roll forward on no candidate fx' enabled through env var + // Exe: empty + // Secondary_Global: empty + // Global: 9999.1.0 + // Expected: 9999.1.0 from global dir + dotnet.Exec(appDll) + .WorkingDirectory(_currentWorkingDir) + .WithGlobalLocation(secondary_globalDir) + .WithGlobalLocation(_globalDir) .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") .EnvironmentVariable("COREHOST_TRACE", "1") .CaptureStdOut() @@ -519,9 +616,37 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .Should() .Pass() .And - .HaveStdErrContaining(_exeSelectedMessage); + .HaveStdErrContaining(_globalSelectedMessage); + + // Add a dummy version in the user dir + AddAvailableSharedFxVersions(secondary_globalSharedFxBaseDir, "9999.1.1"); + + // Version: 9999.0.0 + // 'Roll forward on no candidate fx' enabled through env var + // Exe: empty + // Secondary_Global: 9999.1.1 + // Global: 9999.1.0 + // Expected: 9999.1.1 from Secondary_Global dir + dotnet.Exec(appDll) + .WorkingDirectory(_currentWorkingDir) + .WithGlobalLocation(secondary_globalDir) + .WithGlobalLocation(_globalDir) + .EnvironmentVariable("DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX", "1") + .EnvironmentVariable("COREHOST_TRACE", "1") + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Pass() + .And + .HaveStdErrContaining(secondary_globalSelectedMessage); + + // Remove dummy folders from user dir + DeleteAvailableSharedFxVersions(secondary_globalSharedFxBaseDir, "9999.1.1"); + DeleteAvailableSharedFxVersions(_globalSharedFxBaseDir, "9999.1.0"); } + // This method adds a list of new framework version folders in the specified // sharedFxBaseDir. The files are copied from the _buildSharedFxDir. // Remarks: diff --git a/src/test/TestUtils/Command.cs b/src/test/TestUtils/Command.cs index 4ecba533..4f536358 100644 --- a/src/test/TestUtils/Command.cs +++ b/src/test/TestUtils/Command.cs @@ -238,6 +238,42 @@ namespace Microsoft.DotNet.Cli.Build.Framework _process.StartInfo.Environment[userDir] = userprofile; return this; } + public Command SanitizeGlobalLocation() + { + if (RuntimeEnvironment.OperatingSystemPlatform != Platform.Windows) + { + var current_path = _process.StartInfo.Environment["PATH"]; + var new_path = new System.Text.StringBuilder(); + //Remove any global dotnet that has been set + foreach (var sub_path in current_path.Split(Path.PathSeparator)) + { + var candidate = Path.Combine(sub_path, "dotnet"); + if (!File.Exists(candidate)) + { + new_path.Append(sub_path); + new_path.Append(Path.PathSeparator); + } + } + _process.StartInfo.Environment["PATH"] = new_path.ToString(); + } + return this; + } + public Command WithGlobalLocation(string global) + { + + if (RuntimeEnvironment.OperatingSystemPlatform == Platform.Windows) + { + throw new NotImplementedException("Global location override needs work "); + } + else + { + var current_path = _process.StartInfo.Environment["PATH"]; + _process.StartInfo.Environment["PATH"] = current_path + Path.PathSeparator + global; + } + + + return this; + } public Command EnvironmentVariable(string name, string value) { diff --git a/src/test/TestUtils/DotNetCli.cs b/src/test/TestUtils/DotNetCli.cs index bc861337..60b18284 100644 --- a/src/test/TestUtils/DotNetCli.cs +++ b/src/test/TestUtils/DotNetCli.cs @@ -31,7 +31,8 @@ namespace Microsoft.DotNet.Cli.Build } return Command.Create(Path.Combine(BinPath, $"dotnet{Constants.ExeSuffix}"), newArgs) - .EnvironmentVariable("DOTNET_SKIP_FIRST_TIME_EXPERIENCE", "1"); + .EnvironmentVariable("DOTNET_SKIP_FIRST_TIME_EXPERIENCE", "1") + .SanitizeGlobalLocation(); } public Command Restore(params string[] args) => Exec("restore", args); From b5a8215c0d2c0ae700fe979947b8d99f6e3bedc4 Mon Sep 17 00:00:00 2001 From: Rama Krishnan Raghupathy Date: Tue, 23 May 2017 11:52:20 -0700 Subject: [PATCH 470/625] Disabling global Shared FX lookup tests on windows --- ...nThatICareAboutMultilevelSharedFxLookup.cs | 27 ++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs index 0669d757..5b311991 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs @@ -159,14 +159,17 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku .Pass() .And .HaveStdErrContaining(_exeSelectedMessage); - - // Remove dummy folders from user dir - DeleteAvailableSharedFxVersions(_userSharedFxBaseDir, "9999.0.0"); } [Fact] public void SharedFxLookup_Must_Roll_Forward_Before_Looking_Into_Another_Folder() { + //https://github.com/dotnet/core-setup/issues/1553 + if (RuntimeEnvironment.OperatingSystemPlatform == Platform.Windows) + { + return; + } + var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture .Copy(); @@ -407,6 +410,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku [Fact] public void Roll_Forward_On_No_Candidate_Fx_Must_Look_Into_All_Lookup_Folders() { + //https://github.com/dotnet/core-setup/issues/1553 + if (RuntimeEnvironment.OperatingSystemPlatform == Platform.Windows) + { + return; + } + var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture .Copy(); @@ -467,6 +476,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku [Fact] public void Roll_Forward_On_No_Candidate_Fx_May_Be_Enabled_Through_Runtimeconfig_Json_File() { + //https://github.com/dotnet/core-setup/issues/1553 + if (RuntimeEnvironment.OperatingSystemPlatform == Platform.Windows) + { + return; + } + var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture .Copy(); @@ -509,6 +524,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku [Fact] public void Roll_Forward_On_No_Candidate_Fx_May_Be_Enabled_Through_Argument() { + //https://github.com/dotnet/core-setup/issues/1553 + if (RuntimeEnvironment.OperatingSystemPlatform == Platform.Windows) + { + return; + } + var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture .Copy(); From a574014861010bf7dbedcd001599a809cb4f0a3a Mon Sep 17 00:00:00 2001 From: William Godbe Date: Tue, 23 May 2017 15:03:20 -0700 Subject: [PATCH 471/625] Sign ARM binaries in pipeline (#2477) * Sign ARM binaries in pipeline * Sign msi before bundling * Remove spaces --- ...BT.json => Core-Setup-Windows-Arm-BT.json} | 205 +------ buildpipeline/Core-Setup-Windows-BT.json | 501 ++++++++++++++++-- buildpipeline/pipeline.json | 12 +- src/pkg/packaging/dir.proj | 7 +- src/pkg/packaging/windows/package.targets | 23 +- 5 files changed, 518 insertions(+), 230 deletions(-) rename buildpipeline/{Core-Setup-Signing-Windows-BT.json => Core-Setup-Windows-Arm-BT.json} (71%) diff --git a/buildpipeline/Core-Setup-Signing-Windows-BT.json b/buildpipeline/Core-Setup-Windows-Arm-BT.json similarity index 71% rename from buildpipeline/Core-Setup-Signing-Windows-BT.json rename to buildpipeline/Core-Setup-Windows-Arm-BT.json index ffea6418..1fb49947 100644 --- a/buildpipeline/Core-Setup-Signing-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-Arm-BT.json @@ -255,168 +255,6 @@ "msbuildLocation": "" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Build and run tests", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\test\\dir.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=diag;LogFile=$(PB_SourcesDirectory)\\tests.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign MSI and cab", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\sign.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignMsiAndCab $(PB_CommonMSBuildArgs) $(MsbuildSigningArguments)", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Extract engine from bundle", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:ExtractEngineBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\extractengine.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign engine", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\sign.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signengine.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Reattach engine to bundle", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:ReattachEngineToBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\reattachengine.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign Bundle", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\sign.proj", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signbundle.log", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" - } - }, { "enabled": true, "continueOnError": false, @@ -432,7 +270,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken)", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -603,6 +441,13 @@ "PB_SourcesDirectory": { "value": "$(Build.SourcesDirectory)\\core-setup" }, + "PB_ChecksumAzureAccountName": { + "value": "dotnetclichecksums" + }, + "PB_ChecksumAzureAccessToken": { + "value": null, + "isSecret": true + }, "PB_VsoRepoUrl": { "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" }, @@ -613,13 +458,6 @@ "value": null, "isSecret": true }, - "PB_ChecksumAzureAccountName": { - "value": "dotnetclichecksums" - }, - "PB_ChecksumAzureAccessToken": { - "value": null, - "isSecret": true - }, "PB_VsoAccountName": { "value": "dn-bot" }, @@ -637,27 +475,29 @@ "value": "real" }, "PB_CommonMSBuildArgs": { - "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild)" + "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild) /p:DisableCrossgen=true $(PB_AdditionalBuildArguments)" + }, + "PB_AdditionalBuildArguments": { + "value": "" }, "OfficialBuildId": { "value": "$(Build.BuildNumber)" }, "PB_TargetArchitecture": { - "value": "x64", + "value": "arm", "allowOverride": true }, "PB_CleanAgent": { "value": "true" }, - "PB_PublishRidAgnosticPackages": { - "value": "false" - }, "PB_BuildFullPlatformManifest": { "value": "false" } }, "demands": [ - "Agent.OS -equals Windows_NT" + "Agent.OS -equals Windows_NT", + "DotNetFramework", + "Cmd" ], "retentionRules": [ { @@ -669,15 +509,15 @@ "FilePath", "SymbolStore" ], - "daysToKeep": 2, + "daysToKeep": 7, "minimumToKeep": 1, "deleteBuildRecord": true, "deleteTestResults": true } ], - "buildNumberFormat": "$(Date:yyyyMMdd)$(Rev:-rr)", + "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)", "jobAuthorizationScope": "projectCollection", - "jobTimeoutInMinutes": 120, + "jobTimeoutInMinutes": 90, "jobCancelTimeoutInMinutes": 5, "badgeEnabled": true, "repository": { @@ -687,7 +527,7 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "3" + "cleanOptions": "0" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -697,6 +537,7 @@ "clean": "false", "checkoutSubmodules": false }, + "processParameters": {}, "quality": "definition", "queue": { "id": 36, @@ -706,8 +547,8 @@ "name": "DotNet-Build" } }, - "id": 6102, - "name": "Core-Setup-Signing-Windows-BT", + "id": 4371, + "name": "Core-Setup-Windows-Arm-BT", "path": "\\", "type": "build", "project": { diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 19737bec..e9680aa4 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -60,7 +60,44 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Build", + "displayName": "Install Signing Plugin", + "timeoutInMinutes": 0, + "task": { + "id": "30666190-6959-11e5-9f96-f56098202fef", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "signType": "$(PB_SignType)", + "zipSources": "false", + "version": "", + "feedSource": "https://devdiv.pkgs.visualstudio.com/DefaultCollection/_packaging/MicroBuildToolset/nuget/v3/index.json" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Run init-tools.cmd", + "timeoutInMinutes": 0, + "task": { + "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_SourcesDirectory)\\init-tools.cmd", + "arguments": "", + "modifyEnvironment": "false", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Generate version assets", "timeoutInMinutes": 0, "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", @@ -69,11 +106,344 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)\\build.cmd", - "arguments": "-- $(PB_CommonMSBuildArgs)", + "arguments": "-- /t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId) $(PB_CommonMSBuildArgs)", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build traversal build dependencies", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_SourcesDirectory)\\build.cmd", + "arguments": "-- $(PB_CommonMSBuildArgs) /t:BuildTraversalBuildDependencies /flp:v=diag", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build binaries", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_SourcesDirectory)\\build.cmd", + "arguments": "-src-builds -- $(PB_CommonMSBuildArgs)", + "workingFolder": "$(PB_SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign binaries", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignBinaries $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build nuget packages", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packages.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build sharedframework layout", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\sharedFramework\\sharedFramework.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\sharedframework.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Create installers", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:BuildInstallers $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packaging.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "true", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign MSI and cab", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignMsiAndCab $(PB_CommonMSBuildArgs) $(MsbuildSigningArguments)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Create bundles", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:BuildCombinedInstallers $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\createbundles.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Extract engine from bundle", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:ExtractEngineBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\extractengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign engine", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Reattach engine to bundle", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:ReattachEngineToBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\reattachengine.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign Bundle", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\sign.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signbundle.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build and run tests", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\test\\dir.proj", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=diag;LogFile=$(PB_SourcesDirectory)\\tests.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "" + } + }, { "enabled": true, "continueOnError": false, @@ -89,7 +459,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -105,7 +475,7 @@ "enabled": true, "continueOnError": true, "alwaysRun": false, - "displayName": "Clean up VSTS agent", + "displayName": "Cleanup VSTS Agent", "timeoutInMinutes": 0, "task": { "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", @@ -127,6 +497,38 @@ "msbuildArchitecture": "x64", "msbuildLocation": "" } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Perform Cleanup Tasks", + "timeoutInMinutes": 0, + "task": { + "id": "521a94ea-9e68-468a-8167-6dcf361ea776", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": {} + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Copy Publish Artifact: Build Logs", + "timeoutInMinutes": 0, + "task": { + "id": "1d341bb0-2106-458c-8422-d00bcea6512a", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "CopyRoot": "", + "Contents": "**\\*.log", + "ArtifactName": "Build Logs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)" + } } ], "options": [ @@ -173,11 +575,13 @@ } ], "variables": { - "GITHUB_PASSWORD": { - "value": "PassedViaPipeBuild" + "BuildConfiguration": { + "value": "Release", + "allowOverride": true }, "COREHOST_TRACE": { - "value": "0" + "value": "0", + "allowOverride": true }, "STORAGE_ACCOUNT": { "value": "dotnetcli" @@ -189,27 +593,54 @@ "value": "PassedViaPipeBuild" }, "PUBLISH_TO_AZURE_BLOB": { - "value": "true", + "value": "true" + }, + "NUGET_FEED_URL": { + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" + }, + "NUGET_API_KEY": { + "value": "PassedViaPipeBuild" + }, + "GITHUB_PASSWORD": { + "value": "PassedViaPipeBuild" + }, + "BUILD_FULL_PLATFORM_MANIFEST": { + "value": "true" + }, + "PUBLISH_RID_AGNOSTIC_PACKAGES": { + "value": "true" + }, + "CertificateId": { + "value": "400" + }, + "PB_DistroRid": { + "value": "win-x64" + }, + "RID": { + "value": "win-x64", "allowOverride": true }, - "BuildConfiguration": { - "value": "Release" + "MsbuildSigningArguments": { + "value": "/p:CertificateId=$(CertificateId) /v:detailed" }, - "PB_CommonMSBuildArgs": { - "value": "/p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) $(PB_AdditionalBuildArguments)" + "TeamName": { + "value": "DotNetCore" + }, + "system.debug": { + "value": "false" }, "PB_PortableBuild": { "value": "false", "allowOverride": true }, - "PB_CleanAgent": { - "value": "true" + "NUGET_SYMBOLS_FEED_URL": { + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" }, "PB_SourcesDirectory": { "value": "$(Build.SourcesDirectory)\\core-setup" }, - "PB_Branch": { - "value": "master" + "PB_VsoRepoUrl": { + "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" }, "PB_AzureAccountName": { "value": "sourcebuild" @@ -225,9 +656,6 @@ "value": null, "isSecret": true }, - "PB_VsoRepoUrl": { - "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" - }, "PB_VsoAccountName": { "value": "dn-bot" }, @@ -235,9 +663,18 @@ "value": null, "isSecret": true }, + "PB_Branch": { + "value": "master" + }, "SourceVersion": { "value": "HEAD" }, + "PB_SignType": { + "value": "real" + }, + "PB_CommonMSBuildArgs": { + "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild)" + }, "OfficialBuildId": { "value": "$(Build.BuildNumber)" }, @@ -245,15 +682,18 @@ "value": "x64", "allowOverride": true }, - "PB_AdditionalBuildArguments": { - "value": "", - "allowOverride": true + "PB_CleanAgent": { + "value": "true" + }, + "PB_PublishRidAgnosticPackages": { + "value": "false" + }, + "PB_BuildFullPlatformManifest": { + "value": "false" } }, "demands": [ - "Agent.OS -equals Windows_NT", - "DotNetFramework", - "Cmd" + "Agent.OS -equals Windows_NT" ], "retentionRules": [ { @@ -265,15 +705,15 @@ "FilePath", "SymbolStore" ], - "daysToKeep": 7, + "daysToKeep": 2, "minimumToKeep": 1, "deleteBuildRecord": true, "deleteTestResults": true } ], - "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)", + "buildNumberFormat": "$(Date:yyyyMMdd)$(rev:-rr)", "jobAuthorizationScope": "projectCollection", - "jobTimeoutInMinutes": 90, + "jobTimeoutInMinutes": 120, "jobCancelTimeoutInMinutes": 5, "badgeEnabled": true, "repository": { @@ -283,7 +723,7 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "0" + "cleanOptions": "3" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -293,7 +733,6 @@ "clean": "false", "checkoutSubmodules": false }, - "processParameters": {}, "quality": "definition", "queue": { "id": 36, @@ -303,7 +742,7 @@ "name": "DotNet-Build" } }, - "id": 4371, + "id": 6102, "name": "Core-Setup-Windows-BT", "path": "\\", "type": "build", diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 21bca77f..99a5b6d1 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -61,10 +61,11 @@ } }, { - "Name": "Core-Setup-Windows-BT", + "Name": "Core-Setup-Windows-Arm-BT", "Parameters": { "PB_AdditionalBuildArguments": "/p:SkipTests=true", "PB_TargetArchitecture": "arm", + "PB_DistroRid": "win-arm", "PB_PortableBuild": "true" }, "ReportingParameters": { @@ -75,10 +76,11 @@ } }, { - "Name": "Core-Setup-Windows-BT", + "Name": "Core-Setup-Windows-Arm-BT", "Parameters": { "PB_AdditionalBuildArguments": "/p:SkipTests=true /p:NativeToolSetDir=C:\\tools\\clr", "PB_TargetArchitecture": "arm64", + "PB_DistroRid": "win-arm64", "PB_PortableBuild": "true" }, "ReportingParameters": { @@ -89,7 +91,7 @@ } }, { - "Name": "Core-Setup-Signing-Windows-BT", + "Name": "Core-Setup-Windows-BT", "Parameters": { "PB_DistroRid": "win7-x64", "PB_TargetArchitecture": "x64", @@ -105,7 +107,7 @@ } }, { - "Name": "Core-Setup-Signing-Windows-BT", + "Name": "Core-Setup-Windows-BT", "Parameters": { "PB_DistroRid": "win7-x86", "PB_TargetArchitecture": "x86", @@ -147,4 +149,4 @@ ] } ] -} +} \ No newline at end of file diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index d009bd59..45ac56ff 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -12,7 +12,9 @@ - + + + @@ -148,7 +150,6 @@ GenerateMsis; - GenerateBundles; GeneratePkgs; GenerateDebs; GenerateRpms; @@ -156,6 +157,8 @@ + + diff --git a/src/pkg/packaging/windows/package.targets b/src/pkg/packaging/windows/package.targets index 06b81f98..b2d93a30 100644 --- a/src/pkg/packaging/windows/package.targets +++ b/src/pkg/packaging/windows/package.targets @@ -6,7 +6,19 @@ + + + + + + @@ -60,15 +72,6 @@ - - - - @@ -85,7 +88,7 @@ $(WindowsScriptRoot)sharedframework\generatebundle.ps1 From 0040e231514cb5eb21146b798bb12adab3c31514 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Tue, 23 May 2017 16:18:20 -0700 Subject: [PATCH 472/625] Make builds portable by default (#2492) --- dir.props | 5 +++++ netci.groovy | 58 ++++++++++++++++++++-------------------------------- 2 files changed, 27 insertions(+), 36 deletions(-) diff --git a/dir.props b/dir.props index 04b9135c..aa7fe6cb 100644 --- a/dir.props +++ b/dir.props @@ -4,6 +4,11 @@ + + + true + + 2 diff --git a/netci.groovy b/netci.groovy index 0e0e1034..bd2bcaee 100644 --- a/netci.groovy +++ b/netci.groovy @@ -10,7 +10,7 @@ def project = GithubProject def branch = GithubBranchName def isPR = true -def platformList = ['Debian8.2:x64:Debug', 'PortableLinux:x64:Release', 'Ubuntu:x64:Release', 'Ubuntu16.04:x64:Release', 'Ubuntu16.10:x64:Release', 'Ubuntu:arm:Release', 'Ubuntu16.04:arm:Release', 'OSX10.12:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Windows_NT:arm:Debug', 'Fedora24:x64:Debug', 'OpenSUSE42.1:x64:Debug', 'Tizen:armel:Release'] +def platformList = ['Linux:x64:Release', 'Linux:arm:Release', 'OSX:x64:Release', 'Windows_NT:x64:Release', 'Windows_NT:x86:Debug', 'Windows_NT:arm:Debug', 'Tizen:armel:Release'] def static getBuildJobName(def configuration, def os, def architecture) { return configuration.toLowerCase() + '_' + os.toLowerCase() + '_' + architecture.toLowerCase() @@ -40,7 +40,7 @@ platformList.each { platform -> if (os == 'Windows_NT') { buildCommand = ".\\build.cmd ${buildArgs}" if ((architecture == 'arm' || architecture == 'arm64')) { - buildCommand += " -PortableBuild=true -SkipTests=true" + buildCommand += " -SkipTests=true" } } else if (os == 'Tizen') { @@ -48,36 +48,29 @@ platformList.each { platform -> dockerContainer = "ubuntu1404_cross_prereqs_v4-tizen_rootfs" dockerCommand = "docker run -e ROOTFS_DIR=/crossrootfs/${architecture}.tizen.build --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" - buildArgs += " -DistroRid=tizen.4.0.0-${architecture} -SkipTests=true -DisableCrossgen=true -CrossBuild=true -- /p:OverridePackageSource=https:%2F%2Ftizen.myget.org/F/dotnet-core/api/v3/index.json" + buildArgs += " -DistroRid=tizen.4.0.0-${architecture} -SkipTests=true -DisableCrossgen=true -PortableBuild=false -CrossBuild=true -- /p:OverridePackageSource=https:%2F%2Ftizen.myget.org/F/dotnet-core/api/v3/index.json" buildCommand = "${dockerCommand} ./build.sh ${buildArgs}" } - else if ((os.startsWith("Ubuntu")) && - (architecture == 'arm' || architecture == 'armel')) { - - if (os == 'Ubuntu') { + else if (os == "Linux") { + + // Prep for Portable Linux builds take place on Ubuntu 14.04 + if (architecture == 'arm' || architecture == 'armel') { dockerContainer = "ubuntu-14.04-cross-0cd4667-20172211042239" - crossbuildargs = " -CrossBuild=true" + dockerCommand = "docker run -e ROOTFS_DIR=/crossrootfs/${architecture} --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" + buildArgs += " -PortableBuild=true -DistroRid=linux-${architecture} -SkipTests=true -DisableCrossgen=true -CrossBuild=true" + buildCommand = "${dockerCommand} ./build.sh ${buildArgs}" + + osForGHTrigger = "Linux" + os = "Ubuntu" } - else if (os == 'Ubuntu16.04') { - dockerContainer = "ubuntu-16.04-cross-ef0ac75-20175511035548" + else { + // Jenkins non-Ubuntu CI machines don't have docker + buildCommand = "./build.sh ${buildArgs}" + + // Trigger a portable Linux build that runs on RHEL7.2 + osForGHTrigger = "Linux" + os = "RHEL7.2" } - dockerCommand = "docker run -e ROOTFS_DIR=/crossrootfs/${architecture} --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" - buildArgs += " -PortableBuild=true -DistroRid=linux-${architecture} -SkipTests=true -DisableCrossgen=true${crossbuildargs}" - buildCommand = "${dockerCommand} ./build.sh ${buildArgs}" - } - else if (os == "Ubuntu") { - dockerContainer = "ubuntu-14.04-debpkg-e5cf912-20175003025046" - dockerCommand = "docker run --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" - buildCommand = "${dockerCommand} ./build.sh ${buildArgs}" - } - else if (os == "PortableLinux") { - // Jenkins non-Ubuntu CI machines don't have docker - buildArgs += " -PortableBuild=true" - buildCommand = "./build.sh ${buildArgs}" - - // Trigger a portable Linux build that runs on RHEL7.2 - osForGHTrigger = "PortableLinux" - os = "RHEL7.2" } else { // Jenkins non-Ubuntu CI machines don't have docker @@ -105,15 +98,8 @@ platformList.each { platform -> Utilities.addMSTestResults(newJob, '**/*-testResults.trx') } - if (os == 'Ubuntu16.04' && architecture == 'arm') { - // Don't enable by default - def contextString = "${osForGHTrigger} ${architecture} ${configuration}" - Utilities.addGithubPRTriggerForBranch(newJob, branch, "${contextString} Build", "(?i).*test\\W+${contextString}.*", true /* trigger on comment phrase only */) - } - else { - Utilities.addGithubPRTriggerForBranch(newJob, branch, "${osForGHTrigger} ${architecture} ${configuration} Build") - } - + Utilities.addGithubPRTriggerForBranch(newJob, branch, "${osForGHTrigger} ${architecture} ${configuration} Build") + ArchivalSettings settings = new ArchivalSettings(); def archiveString = ["tar.gz", "zip", "deb", "msi", "pkg", "exe", "nupkg"].collect { "Bin/*/packages/*.${it},Bin/*/corehost/*.${it}" }.join(",") settings.addFiles(archiveString) From d878f8887e4c786d43c4e5e5d6ab77506609811a Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 23 May 2017 18:30:15 -0500 Subject: [PATCH 473/625] AppBaseCompilationAssemblyResolver shouldn't throw. There are scenarios where a compilation assembly should be resolved from places outside of the appbase folder in a published app. We shouldn't throw early and let the other resolvers do their job. Fix #2496 --- .../AppBaseCompilationAssemblyResolver.cs | 15 ++++++--------- .../AppBaseResolverTests.cs | 12 +++++------- 2 files changed, 11 insertions(+), 16 deletions(-) diff --git a/src/managed/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs index 244d6c2f..4500b422 100644 --- a/src/managed/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs +++ b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs @@ -84,6 +84,8 @@ namespace Microsoft.Extensions.DependencyModel.Resolution directories.Add(sharedDirectory); } + var paths = new List(); + foreach (var assembly in library.Assemblies) { bool resolved = false; @@ -93,7 +95,7 @@ namespace Microsoft.Extensions.DependencyModel.Resolution string fullName; if (ResolverUtils.TryResolveAssemblyFile(_fileSystem, directory, assemblyFile, out fullName)) { - assemblies.Add(fullName); + paths.Add(fullName); resolved = true; break; } @@ -101,17 +103,12 @@ namespace Microsoft.Extensions.DependencyModel.Resolution if (!resolved) { - // throw in case when we are published app and nothing found - // because we cannot rely on nuget package cache in this case - if (isPublished) - { - throw new InvalidOperationException( - $"Cannot find assembly file {assemblyFile} at '{string.Join(",", directories)}'"); - } return false; - } + } } + // only modify the assemblies parameter if we've resolved all files + assemblies?.AddRange(paths); return true; } } diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs index f9336276..0d3b8aa5 100644 --- a/src/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs @@ -143,11 +143,8 @@ namespace Microsoft.Extensions.DependencyModel.Tests var resolver = CreateResolver(fileSystem); var assemblies = new List(); - var exception = Assert.Throws(() => resolver.TryResolveAssemblyPaths(library, assemblies)); - exception.Message.Should() - .Contain(BasePath) - .And.Contain(BasePathRefs) - .And.Contain(TestLibraryFactory.SecondAssembly); + resolver.TryResolveAssemblyPaths(library, assemblies).Should().Be(false); + assemblies.Should().BeEmpty(); } [Fact] @@ -328,7 +325,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests } [Fact] - public void ShouldThrowForNonResolvedInPublishedApps() + public void ShouldReturnFalseForNonResolvedInPublishedApps() { var fileSystem = FileSystemMockBuilder .Create() @@ -341,7 +338,8 @@ namespace Microsoft.Extensions.DependencyModel.Tests var resolver = CreateResolver(fileSystem); var assemblies = new List(); - Assert.Throws(() => resolver.TryResolveAssemblyPaths(library, assemblies)); + resolver.TryResolveAssemblyPaths(library, assemblies).Should().Be(false); + assemblies.Should().BeEmpty(); } [Fact] From d75683be9f2aae2bbb0f024a300c74f80fe053e8 Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Tue, 23 May 2017 17:19:42 -0700 Subject: [PATCH 474/625] fix readme links (#2500) --- README.md | 114 +++++++++++++++++++++++++++--------------------------- 1 file changed, 57 insertions(+), 57 deletions(-) diff --git a/README.md b/README.md index ebadc769..95d29bfc 100644 --- a/README.md +++ b/README.md @@ -66,11 +66,11 @@ Daily Builds [win-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-x64_Release_version_badge.svg [win-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.x64.version -[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x64.latest.exe -[win-x64-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x64.latest.exe.sha512 -[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x64.latest.zip -[win-x64-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x64.latest.zip.sha512 -[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-win-x64.latest.zip +[win-x64-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-win-x64.exe +[win-x64-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-win-x64.exe.sha512 +[win-x64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-win-x64.zip +[win-x64-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-win-x64.zip.sha512 +[win-x64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-latest-win-x64.zip [win-x64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-x64_Release_version_badge.svg [win-x64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.x64.version @@ -92,11 +92,11 @@ Daily Builds [win-x86-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-x86_Release_version_badge.svg [win-x86-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.x86.version -[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x86.latest.exe -[win-x86-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x86.latest.exe.sha512 -[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x86.latest.zip -[win-x86-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-x86.latest.zip.sha512 -[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-win-x86.latest.zip +[win-x86-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-win-x86.exe +[win-x86-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-win-x86.exe.sha512 +[win-x86-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-win-x86.zip +[win-x86-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-win-x86.zip.sha512 +[win-x86-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-latest-win-x86.zip [win-x86-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-x86_Release_version_badge.svg [win-x86-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.x86.version @@ -118,9 +118,9 @@ Daily Builds [win-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-arm_Release_version_badge.svg [win-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.arm.version -[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-arm.latest.zip -[win-arm-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-arm.latest.zip.sha512 -[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-win-arm.latest.zip +[win-arm-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-win-arm.zip +[win-arm-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-win-arm.zip.sha512 +[win-arm-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-latest-win-arm.zip [win-arm-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-arm_Release_version_badge.svg [win-arm-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.arm.version @@ -130,9 +130,9 @@ Daily Builds [win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-arm64_Release_version_badge.svg [win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.arm64.version -[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-arm64.latest.zip -[win-arm64-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-win-arm64.latest.zip.sha512 -[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-win-arm64.latest.zip +[win-arm64-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-win-arm64.zip +[win-arm64-zip-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-win-arm64.zip.sha512 +[win-arm64-symbols-zip-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-latest-win-arm64.zip [win-arm64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-arm64_Release_version_badge.svg [win-arm64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.arm64.version @@ -142,11 +142,11 @@ Daily Builds [osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_osx-x64_Release_version_badge.svg [osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.osx.x64.version -[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-osx-x64.latest.pkg -[osx-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-osx-x64.latest.pkg.sha512 -[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-osx-x64.latest.tar.gz -[osx-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-osx-x64.latest.tar.gz.sha512 -[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-osx-x64.latest.tar.gz +[osx-installer-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-osx-x64.pkg +[osx-installer-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-osx-x64.pkg.sha512 +[osx-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-osx-x64.tar.gz +[osx-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-osx-x64.tar.gz.sha512 +[osx-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-latest-osx-x64.tar.gz [osx-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_osx-x64_Release_version_badge.svg [osx-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.osx.x64.version @@ -169,9 +169,9 @@ Daily Builds [linux-x64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_linux-x64_Release_version_badge.svg [linux-x64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.linux.x64.version -[linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-linux-x64.latest.tar.gz -[linux-x64-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-linux-x64.latest.tar.gz.sha512 -[linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-linux-x64.latest.tar.gz +[linux-x64-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-linux-x64.tar.gz +[linux-x64-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-linux-x64tar.gz.sha512 +[linux-x64-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-latest-linux-x64.tar.gz [linux-x64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_linux-x64_Release_version_badge.svg [linux-x64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.linux.x64.version @@ -181,9 +181,9 @@ Daily Builds [linux-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_linux-arm_Release_version_badge.svg [linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.linux.arm.version -[linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-linux-arm.latest.tar.gz -[linux-arm-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-linux-arm.latest.tar.gz.sha512 -[linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-linux-arm.latest.tar.gz +[linux-arm-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-linux-arm.tar.gz +[linux-arm-targz-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-linux-arm.tar.gz.sha512 +[linux-arm-symbols-targz-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-symbols-latest-linux-arm.tar.gz [linux-arm-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_linux-arm_Release_version_badge.svg [linux-arm-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.linux.arm.version @@ -193,12 +193,12 @@ Daily Builds [ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg [ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.x64.version -[ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.14.04-x64.latest.deb -[ubuntu-14.04-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.14.04-x64.latest.deb.sha512 -[ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb -[ubuntu-14.04-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb.sha512 -[ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb -[ubuntu-14.04-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb.sha512 +[ubuntu-14.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-latest-ubuntu.14.04-x64.deb +[ubuntu-14.04-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-latest-ubuntu.14.04-x64.deb.sha512 +[ubuntu-14.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-latest-ubuntu.14.04-x64.deb +[ubuntu-14.04-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-latest-ubuntu.14.04-x64.deb.sha512 +[ubuntu-14.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-ubuntu.14.04-x64.deb +[ubuntu-14.04-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-ubuntu.14.04-x64.deb.sha512 [ubuntu-14.04-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg [ubuntu-14.04-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.x64.version @@ -226,12 +226,12 @@ Daily Builds [ubuntu-16.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg [ubuntu-16.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.16.04.x64.version -[ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.04-x64.latest.deb.sha512 -[ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb.sha512 -[ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-ubuntu.16.04-x64.latest.deb.sha512 +[ubuntu-16.04-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-latest-ubuntu.16.04-x64.deb +[ubuntu-16.04-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-latest-ubuntu.16.04-x64.deb.sha512 +[ubuntu-16.04-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-latest-ubuntu.16.04-x64.deb +[ubuntu-16.04-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-latest-ubuntu.16.04-x64.deb.sha512 +[ubuntu-16.04-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-ubuntu.16.04-x64.deb +[ubuntu-16.04-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-ubuntu.16.04-x64.deb.sha512 [ubuntu-16.04-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg [ubuntu-16.04-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.16.04.x64.version @@ -258,12 +258,12 @@ Daily Builds [ubuntu-16.10-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg [ubuntu-16.10-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.16.10.x64.version -[ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-ubuntu.16.10-x64.latest.deb.sha512 -[ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb.sha512 -[ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-ubuntu.16.10-x64.latest.deb.sha512 +[ubuntu-16.10-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-latest-ubuntu.16.10-x64.deb +[ubuntu-16.10-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-latest-ubuntu.16.10-x64.deb.sha512 +[ubuntu-16.10-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-latest-ubuntu.16.10-x64.deb +[ubuntu-16.10-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-latest-ubuntu.16.10-x64.deb.sha512 +[ubuntu-16.10-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-ubuntu.16.10-x64.deb +[ubuntu-16.10-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-ubuntu.16.10-x64.deb.sha512 [ubuntu-16.10-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg [ubuntu-16.10-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.16.10.x64.version @@ -284,12 +284,12 @@ Daily Builds [debian-8.2-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_debian.8-x64_Release_version_badge.svg [debian-8.2-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.debian.8.x64.version -[debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-debian.8-x64.latest.deb -[debian-8.2-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-debian.8-x64.latest.deb.sha512 -[debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-debian.8-x64.latest.deb -[debian-8.2-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-debian.8-x64.latest.deb.sha512 -[debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-debian.8-x64.latest.deb -[debian-8.2-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-debian.8-x64.latest.deb.sha512 +[debian-8.2-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-latest-debian.8-x64.deb +[debian-8.2-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-latest-debian.8-x64.deb.sha512 +[debian-8.2-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-latest-debian.8-x64.deb +[debian-8.2-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-latest-debian.8-x64.deb.sha512 +[debian-8.2-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-debian.8-x64.deb +[debian-8.2-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-debian.8-x64.deb.sha512 [debian-8.2-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_debian.8-x64_Release_version_badge.svg [debian-8.2-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.debian.8.x64.version @@ -324,12 +324,12 @@ Daily Builds [rhel7-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_rhel.7-x64_Release_version_badge.svg [rhel7-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.rhel.7.x64.version -[rhel7-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-rhel.7-x64.latest.rpm -[rhel7-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-rhel.7-x64.latest.rpm.sha512 -[rhel7-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-rhel.7-x64.latest.rpm -[rhel7-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-rhel.7-x64.latest.rpm.sha512 -[rhel7-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-rhel.7-x64.latest.rpm -[rhel7-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-rhel.7-x64.latest.rpm.sha512 +[rhel7-host-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-latest-rhel.7-x64.rpm +[rhel7-host-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-host-latest-rhel.7-x64.rpm.sha512 +[rhel7-hostfxr-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-latest-rhel.7-x64.rpm +[rhel7-hostfxr-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-hostfxr-latest-rhel.7-x64.rpm.sha512 +[rhel7-sharedfx-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-rhel.7-x64.rpm +[rhel7-sharedfx-checksum-master]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/master/dotnet-runtime-latest-rhel.7-x64.rpm.sha512 [rhel7-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_rhel.7-x64_Release_version_badge.svg [rhel7-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.rhel.7.x64.version From 67d7106bbef39d1bd70523050e06fc378b56f151 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Tue, 23 May 2017 17:35:03 -0700 Subject: [PATCH 475/625] Fix OSX CI leg (#2499) * Fix OSX CI leg * Remove unrequired PortableBuild specification --- netci.groovy | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/netci.groovy b/netci.groovy index bd2bcaee..2f47d3dd 100644 --- a/netci.groovy +++ b/netci.groovy @@ -57,7 +57,7 @@ platformList.each { platform -> if (architecture == 'arm' || architecture == 'armel') { dockerContainer = "ubuntu-14.04-cross-0cd4667-20172211042239" dockerCommand = "docker run -e ROOTFS_DIR=/crossrootfs/${architecture} --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}" - buildArgs += " -PortableBuild=true -DistroRid=linux-${architecture} -SkipTests=true -DisableCrossgen=true -CrossBuild=true" + buildArgs += " -DistroRid=linux-${architecture} -SkipTests=true -DisableCrossgen=true -CrossBuild=true" buildCommand = "${dockerCommand} ./build.sh ${buildArgs}" osForGHTrigger = "Linux" @@ -75,6 +75,7 @@ platformList.each { platform -> else { // Jenkins non-Ubuntu CI machines don't have docker buildCommand = "./build.sh ${buildArgs}" + os = "OSX10.12" } def newJob = job(Utilities.getFullJobName(project, jobName, isPR)) { From c08a4ebfefab2d467639227588dbbb6f8aaf54db Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Tue, 23 May 2017 18:57:42 -0700 Subject: [PATCH 476/625] Fix Debian package build (#2493) * Fix Debian package build - {shlibs:Depends} will pick up the correct packages for anything we link against so we don't need to include libssl and libcurl in the json config files. - Add an explicit dependency on ICU (the runtime no longer links against it directly so dh_shlibdeps wasn't picking it up). * Adding back libssl1.0.0 dependency. --- .../deb/dotnet-sharedframework-debian_config.json | 2 +- src/pkg/packaging/deb/package.targets | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json b/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json index 1bd84615..7423661a 100644 --- a/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json +++ b/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json @@ -31,7 +31,7 @@ "debian_dependencies":{ "%HOSTFXR_DEBIAN_PACKAGE_NAME%" : {}, "libssl1.0.0" : {}, - "libcurl3" : {} + "%LIBICU_PACKAGE_NAME%": {} }, "debian_ignored_dependencies" : [ diff --git a/src/pkg/packaging/deb/package.targets b/src/pkg/packaging/deb/package.targets index 20626a5a..8ab4f76a 100644 --- a/src/pkg/packaging/deb/package.targets +++ b/src/pkg/packaging/deb/package.targets @@ -216,6 +216,12 @@ + + + + + @@ -248,6 +254,10 @@ $(SharedFrameworkBrandName) + + $(LibIcuPackageName) + + Date: Wed, 24 May 2017 08:23:44 -0700 Subject: [PATCH 477/625] Update CoreClr, CoreFx, Standard, WCF to preview1-25324-01, preview1-25324-02, preview1-25324-01, preview1-25324-01, respectively (#2505) --- dependencies.props | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/dependencies.props b/dependencies.props index f18ae2ca..2325f0e3 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 8ca527a74acbc73ee9340b7ab64bebad5ccc796e - 5dfd662db1b2793a26441fe3c0a8ee5136004aed - 5dfd662db1b2793a26441fe3c0a8ee5136004aed - 5dfd662db1b2793a26441fe3c0a8ee5136004aed + 2ded50b86b1599881e556363fa62bc7bde850525 + 2ded50b86b1599881e556363fa62bc7bde850525 + 2ded50b86b1599881e556363fa62bc7bde850525 + 2ded50b86b1599881e556363fa62bc7bde850525 - 4.5.0-preview1-25323-02 - 2.1.0-preview1-25323-02 - 2.1.0-preview1-25323-01 + 4.5.0-preview1-25324-02 + 2.1.0-preview1-25324-02 + 2.1.0-preview1-25324-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25323-01 + 2.1.0-preview1-25324-01 1.4.1 - 4.5.0-preview1-25323-01 + 4.5.0-preview1-25324-01 From e408001ec2a1d346b935add71b97831cce9b36bb Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Wed, 24 May 2017 08:41:47 -0700 Subject: [PATCH 478/625] Fix readme download links for release/2.0.0 . (#2511) --- README.md | 114 +++++++++++++++++++++++++++--------------------------- 1 file changed, 57 insertions(+), 57 deletions(-) diff --git a/README.md b/README.md index 95d29bfc..ed5fab7d 100644 --- a/README.md +++ b/README.md @@ -74,11 +74,11 @@ Daily Builds [win-x64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-x64_Release_version_badge.svg [win-x64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.x64.version -[win-x64-installer-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.exe -[win-x64-installer-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.exe.sha512 -[win-x64-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.zip -[win-x64-zip-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x64.latest.zip.sha512 -[win-x64-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-symbols-win-x64.latest.zip +[win-x64-installer-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-win-x64.exe +[win-x64-installer-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-win-x64.exe.sha512 +[win-x64-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-win-x64.zip +[win-x64-zip-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-win-x64.zip.sha512 +[win-x64-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-symbols-latest-win-x64.zip [win-x64-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x64_Release_version_badge.svg [win-x64-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x64.version @@ -100,11 +100,11 @@ Daily Builds [win-x86-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-x86_Release_version_badge.svg [win-x86-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.x86.version -[win-x86-installer-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.exe -[win-x86-installer-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.exe.sha512 -[win-x86-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.zip -[win-x86-zip-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-x86.latest.zip.sha512 -[win-x86-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-win-x86.latest.zip +[win-x86-installer-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-win-x86.exe +[win-x86-installer-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-win-x86.exe.sha512 +[win-x86-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-win-x86.zip +[win-x86-zip-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-win-x86.zip.sha512 +[win-x86-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-symbols-latest-win-x86.zip [win-x86-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Windows_x86_Release_version_badge.svg [win-x86-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.win.x86.version @@ -124,9 +124,9 @@ Daily Builds [win-arm-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-arm_Release_version_badge.svg [win-arm-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.arm.version -[win-arm-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm.latest.zip -[win-arm-zip-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm.latest.zip.sha512 -[win-arm-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-win-arm.latest.zip +[win-arm-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-win-arm.zip +[win-arm-zip-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-win-arm.zip.sha512 +[win-arm-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-symbols-latest-win-arm.zip [win-arm64-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_win-arm64_Release_version_badge.svg [win-arm64-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.win.arm64.version @@ -136,9 +136,9 @@ Daily Builds [win-arm64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_win-arm64_Release_version_badge.svg [win-arm64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.win.arm64.version -[win-arm64-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm64.latest.zip -[win-arm64-zip-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-win-arm64.latest.zip.sha512 -[win-arm64-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-win-arm64.latest.zip +[win-arm64-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-win-arm64.zip +[win-arm64-zip-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-win-arm64.zip.sha512 +[win-arm64-symbols-zip-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-symbols-latest-win-arm64.zip [osx-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_osx-x64_Release_version_badge.svg [osx-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.osx.x64.version @@ -150,11 +150,11 @@ Daily Builds [osx-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_osx-x64_Release_version_badge.svg [osx-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.osx.x64.version -[osx-installer-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.pkg -[osx-installer-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.pkg.sha512 -[osx-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.tar.gz -[osx-targz-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-osx-x64.latest.tar.gz.sha512 -[osx-symbols-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-osx-x64.latest.tar.gz +[osx-installer-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-osx-x64.pkg +[osx-installer-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-osx-x64.pkg.sha512 +[osx-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-osx-x64.tar.gz +[osx-targz-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-osx-x64.tar.gz.sha512 +[osx-symbols-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-symbols-latest-osx-x64.tar.gz [osx-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_OSX_x64_Release_version_badge.svg [osx-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.osx.x64.version @@ -175,9 +175,9 @@ Daily Builds [linux-x64-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_linux-x64_Release_version_badge.svg [linux-x64-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.linux.x64.version -[linux-x64-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-x64.latest.tar.gz -[linux-x64-targz-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-x64.latest.tar.gz.sha512 -[linux-x64-symbols-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-linux-x64.latest.tar.gz +[linux-x64-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-linux-x64.tar.gz +[linux-x64-targz-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-linux-x64.tar.gz.sha512 +[linux-x64-symbols-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-symbols-latest-linux-x64.tar.gz [linux-arm-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_linux-arm_Release_version_badge.svg [linux-arm-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.linux.arm.version @@ -187,9 +187,9 @@ Daily Builds [linux-arm-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_linux-arm_Release_version_badge.svg [linux-arm-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.linux.arm.version -[linux-arm-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-arm.latest.tar.gz -[linux-arm-targz-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-linux-arm.latest.tar.gz -[linux-arm-symbols-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-symbols-linux-arm.latest.tar.gz +[linux-arm-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-linux-arm.tar.gz +[linux-arm-targz-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-linux-arm.tar.gz.sha512 +[linux-arm-symbols-targz-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-symbols-latest-linux-arm.tar.gz [ubuntu-14.04-badge-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg [ubuntu-14.04-version-master]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/master/latest.sharedfx.ubuntu.x64.version @@ -202,12 +202,12 @@ Daily Builds [ubuntu-14.04-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.14.04-x64_Release_version_badge.svg [ubuntu-14.04-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.x64.version -[ubuntu-14.04-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.14.04-x64.latest.deb -[ubuntu-14.04-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.14.04-x64.latest.deb.sha512 -[ubuntu-14.04-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb -[ubuntu-14.04-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.14.04-x64.latest.deb.sha512 -[ubuntu-14.04-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb -[ubuntu-14.04-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.14.04-x64.latest.deb.sha512 +[ubuntu-14.04-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-latest-ubuntu.14.04-x64.deb +[ubuntu-14.04-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-latest-ubuntu.14.04-x64.deb.sha512 +[ubuntu-14.04-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-latest-ubuntu.14.04-x64.deb +[ubuntu-14.04-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-latest-ubuntu.14.04-x64.deb.sha512 +[ubuntu-14.04-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-ubuntu.14.04-x64.deb +[ubuntu-14.04-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-ubuntu.14.04-x64.deb.sha512 [ubuntu-14.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_x64_Release_version_badge.svg [ubuntu-14.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.x64.version @@ -235,12 +235,12 @@ Daily Builds [ubuntu-16.04-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.16.04-x64_Release_version_badge.svg [ubuntu-16.04-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.16.04.x64.version -[ubuntu-16.04-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.04-x64.latest.deb.sha512 -[ubuntu-16.04-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.04-x64.latest.deb.sha512 -[ubuntu-16.04-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb -[ubuntu-16.04-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.04-x64.latest.deb.sha512 +[ubuntu-16.04-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-latest-ubuntu.16.04-x64.deb +[ubuntu-16.04-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-latest-ubuntu.16.04-x64.deb.sha512 +[ubuntu-16.04-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-latest-ubuntu.16.04-x64.deb +[ubuntu-16.04-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-latest-ubuntu.16.04-x64.deb.sha512 +[ubuntu-16.04-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-ubuntu.16.04-x64.deb +[ubuntu-16.04-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-ubuntu.16.04-x64.deb.sha512 [ubuntu-16.04-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_04_x64_Release_version_badge.svg [ubuntu-16.04-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.04.x64.version @@ -267,12 +267,12 @@ Daily Builds [ubuntu-16.10-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_ubuntu.16.10-x64_Release_version_badge.svg [ubuntu-16.10-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.ubuntu.16.10.x64.version -[ubuntu-16.10-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-ubuntu.16.10-x64.latest.deb.sha512 -[ubuntu-16.10-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-ubuntu.16.10-x64.latest.deb.sha512 -[ubuntu-16.10-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb -[ubuntu-16.10-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-ubuntu.16.10-x64.latest.deb.sha512 +[ubuntu-16.10-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-latest-ubuntu.16.10-x64.deb +[ubuntu-16.10-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-latest-ubuntu.16.10-x64.deb.sha512 +[ubuntu-16.10-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-latest-ubuntu.16.10-x64.deb +[ubuntu-16.10-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-latest-ubuntu.16.10-x64.deb.sha512 +[ubuntu-16.10-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-ubuntu.16.10-x64.deb +[ubuntu-16.10-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-ubuntu.16.10-x64.deb.sha512 [ubuntu-16.10-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Ubuntu_16_10_x64_Release_version_badge.svg [ubuntu-16.10-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.ubuntu.16.10.x64.version @@ -293,12 +293,12 @@ Daily Builds [debian-8.2-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_debian.8-x64_Release_version_badge.svg [debian-8.2-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.debian.8.x64.version -[debian-8.2-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-debian.8-x64.latest.deb -[debian-8.2-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-debian.8-x64.latest.deb.sha512 -[debian-8.2-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-debian.8-x64.latest.deb -[debian-8.2-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-debian.8-x64.latest.deb.sha512 -[debian-8.2-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-debian.8-x64.latest.deb -[debian-8.2-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-debian.8-x64.latest.deb.sha512 +[debian-8.2-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-latest-debian.8-x64.deb +[debian-8.2-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-latest-debian.8-x64.deb.sha512 +[debian-8.2-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-latest-debian.8-x64.deb +[debian-8.2-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-latest-debian.8-x64.deb.sha512 +[debian-8.2-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-debian.8-x64.deb +[debian-8.2-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-debian.8-x64.deb.sha512 [debian-8.2-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_Debian_x64_Release_version_badge.svg [debian-8.2-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.debian.x64.version @@ -333,12 +333,12 @@ Daily Builds [rhel7-badge-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/sharedfx_rhel.7-x64_Release_version_badge.svg [rhel7-version-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/latest.sharedfx.rhel.7.x64.version -[rhel7-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-rhel.7-x64.latest.rpm -[rhel7-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-rhel.7-x64.latest.rpm.sha512 -[rhel7-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-rhel.7-x64.latest.rpm -[rhel7-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-rhel.7-x64.latest.rpm.sha512 -[rhel7-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-rhel.7-x64.latest.rpm -[rhel7-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-sharedframework-rhel.7-x64.latest.rpm.sha512 +[rhel7-host-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-latest-rhel.7-x64.rpm +[rhel7-host-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-host-latest-rhel.7-x64.rpm.sha512 +[rhel7-hostfxr-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-latest-rhel.7-x64.rpm +[rhel7-hostfxr-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-hostfxr-latest-rhel.7-x64.rpm.sha512 +[rhel7-sharedfx-2.0.X]: https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-rhel.7-x64.rpm +[rhel7-sharedfx-checksum-2.0.X]: https://dotnetclichecksums.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-rhel.7-x64.rpm.sha512 [rhel-badge-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/Binaries/Latest/sharedfx_RHEL_x64_Release_version_badge.svg [rhel-version-1.1.X]: https://dotnetcli.blob.core.windows.net/dotnet/release/1.1.0/dnvm/latest.sharedfx.rhel.x64.version From f9077c4e68067e04d62eff5c57e662f1d12fb0c5 Mon Sep 17 00:00:00 2001 From: Vivek Mishra Date: Wed, 24 May 2017 11:40:03 -0700 Subject: [PATCH 479/625] Fix for Core-Setup-Linux-BT.json to have PortableBuild=false (#2517) Merged --- buildpipeline/Core-Setup-Linux-BT.json | 36 +++++++++++++------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 35d49b5d..3ef95c84 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -255,7 +255,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Ubuntu1404) $(CommonMSBuildArguments)", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Ubuntu1404) $(DistroSpecificMSBuildArguments)", "workingFolder": "", "failOnStandardError": "false" } @@ -274,7 +274,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Ubuntu1404) $(CommonMSBuildArguments)", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Ubuntu1404) $(DistroSpecificMSBuildArguments)", "workingFolder": "", "failOnStandardError": "false" } @@ -293,7 +293,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1404) /p:PublishDebToolToFeed=true /p:CliNuGetFeedUrl=$(CLI_NUGET_FEED_URL) /p:CliNuGetApiKey=$(CLI_NUGET_API_KEY) $(CommonMSBuildArguments) $(CommonMSBuildPublishArgs)", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1404) /p:PublishDebToolToFeed=true /p:CliNuGetFeedUrl=$(CLI_NUGET_FEED_URL) /p:CliNuGetApiKey=$(CLI_NUGET_API_KEY) $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)", "workingFolder": "", "failOnStandardError": "false" } @@ -350,7 +350,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Ubuntu1604) $(CommonMSBuildArguments)", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Ubuntu1604) $(DistroSpecificMSBuildArguments)", "workingFolder": "", "failOnStandardError": "false" } @@ -369,7 +369,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Ubuntu1604) $(CommonMSBuildArguments)", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Ubuntu1604) $(DistroSpecificMSBuildArguments)", "workingFolder": "", "failOnStandardError": "false" } @@ -388,7 +388,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1604) $(CommonMSBuildArguments) $(CommonMSBuildPublishArgs)", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1604) $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)", "workingFolder": "", "failOnStandardError": "false" } @@ -445,7 +445,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Ubuntu1610) $(CommonMSBuildArguments)", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Ubuntu1610) $(DistroSpecificMSBuildArguments)", "workingFolder": "", "failOnStandardError": "false" } @@ -464,7 +464,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Ubuntu1610) $(CommonMSBuildArguments)", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Ubuntu1610) $(DistroSpecificMSBuildArguments)", "workingFolder": "", "failOnStandardError": "false" } @@ -483,7 +483,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1610) $(CommonMSBuildArguments) $(CommonMSBuildPublishArgs)", + "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1610) $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)", "workingFolder": "", "failOnStandardError": "false" } @@ -540,7 +540,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Debian8) $(CommonMSBuildArguments)", + "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Debian8) $(DistroSpecificMSBuildArguments)", "workingFolder": "", "failOnStandardError": "false" } @@ -559,7 +559,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Debian8) $(CommonMSBuildArguments)", + "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Debian8) $(DistroSpecificMSBuildArguments)", "workingFolder": "", "failOnStandardError": "false" } @@ -578,7 +578,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Debian8) $(CommonMSBuildArguments) $(CommonMSBuildPublishArgs)", + "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Debian8) $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)", "workingFolder": "", "failOnStandardError": "false" } @@ -635,7 +635,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Rhel7) $(CommonMSBuildArguments)", + "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Rhel7) $(DistroSpecificMSBuildArguments)", "workingFolder": "", "failOnStandardError": "false" } @@ -654,7 +654,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Rhel7) $(CommonMSBuildArguments)", + "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Rhel7) $(DistroSpecificMSBuildArguments)", "workingFolder": "", "failOnStandardError": "false" } @@ -673,7 +673,7 @@ }, "inputs": { "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Rhel7) $(CommonMSBuildArguments) $(CommonMSBuildPublishArgs)", + "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Rhel7) $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)", "workingFolder": "", "failOnStandardError": "false" } @@ -911,10 +911,10 @@ "AdditionalMSBuildProperties": { "value": "/p:UsePrebuiltPortableBinariesForInstallers=true /p:SharedFrameworkPublishDir=/root/sharedFrameworkPublish/" }, - "CommonMSBuildArguments": { - "value": "/flp:v=diag /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:OSGroup=Linux /p:OfficialBuildId=$(OfficialBuildId)" + "DistroSpecificMSBuildArguments": { + "value": "/flp:v=diag /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=false /p:ConfigurationGroup=$(BuildConfiguration) /p:OSGroup=Linux /p:OfficialBuildId=$(OfficialBuildId)" }, - "CommonMSBuildPublishArgs": { + "DistroSpecificMSBuildPublishArgs": { "value": "/p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) $(PB_DebianKeys)" }, "PB_DebianKeys": { From 7d5e3e33bffda964a7f27737f24d46badf9cce23 Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Wed, 24 May 2017 10:14:01 -0700 Subject: [PATCH 480/625] Ensure we reference NETCoreApp1.1 packages on nca1.1 --- .../Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj | 4 ++-- src/pkg/projects/Microsoft.NETCore.App/netcoreapp1.1.props | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index e5c915f0..ae84b044 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -22,9 +22,9 @@ the Microsoft.NETCore.App (RID-agnostic/identity package). --> true - - + + diff --git a/src/pkg/projects/Microsoft.NETCore.App/netcoreapp1.1.props b/src/pkg/projects/Microsoft.NETCore.App/netcoreapp1.1.props index 5d2eaa78..2e81d2a5 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/netcoreapp1.1.props +++ b/src/pkg/projects/Microsoft.NETCore.App/netcoreapp1.1.props @@ -6,9 +6,11 @@ 1.3.0 + Compile 1.3.0 + Compile 4.3.0 @@ -99,6 +101,7 @@ 4.3.0 + Compile 4.3.0 From 66eb6eb7398a4bb3f3b73dabe65d206038749144 Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Wed, 24 May 2017 10:43:31 -0700 Subject: [PATCH 481/625] Update NETCoreApp dependencies to account for servicing --- .../Microsoft.NETCore.App/netcoreapp1.0.props | 17 +++++++++++++---- .../Microsoft.NETCore.App/netcoreapp1.1.props | 16 +++++++++++----- 2 files changed, 24 insertions(+), 9 deletions(-) diff --git a/src/pkg/projects/Microsoft.NETCore.App/netcoreapp1.0.props b/src/pkg/projects/Microsoft.NETCore.App/netcoreapp1.0.props index adfeb707..fd7843f3 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/netcoreapp1.0.props +++ b/src/pkg/projects/Microsoft.NETCore.App/netcoreapp1.0.props @@ -13,10 +13,13 @@ 4.0.1 - 1.0.1 + 1.0.5 + + + 1.0.2 - 1.0.4 + 1.0.7 10.0.1 @@ -24,6 +27,9 @@ 1.6.0 + + 4.0.1 + 4.0.0 @@ -58,7 +64,7 @@ 4.0.1 - 4.1.0 + 4.1.1 4.0.1 @@ -66,6 +72,9 @@ 4.0.1 + + 4.1.2 + 4.0.0 @@ -73,7 +82,7 @@ 4.0.11 - 4.0.0 + 4.0.1 4.0.1 diff --git a/src/pkg/projects/Microsoft.NETCore.App/netcoreapp1.1.props b/src/pkg/projects/Microsoft.NETCore.App/netcoreapp1.1.props index 2e81d2a5..f18acc68 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/netcoreapp1.1.props +++ b/src/pkg/projects/Microsoft.NETCore.App/netcoreapp1.1.props @@ -16,13 +16,13 @@ 4.3.0 - 1.4.0 + 1.4.1 - 1.1.0 + 1.1.2 - 1.1.0 + 1.1.2 10.1.0 @@ -30,6 +30,9 @@ 1.6.1 + + 4.3.1 + 4.3.0 @@ -43,7 +46,7 @@ 4.3.0 - 4.3.0 + 4.3.1 4.3.0 @@ -72,6 +75,9 @@ 4.3.0 + + 4.3.2 + 4.3.0 @@ -79,7 +85,7 @@ 4.3.0 - 4.3.0 + 4.3.1 4.3.0 From 627fcd3cad10f6024425d719dcef3e72fe72c75d Mon Sep 17 00:00:00 2001 From: Vivek Mishra Date: Wed, 24 May 2017 14:08:18 -0700 Subject: [PATCH 482/625] Fixes to comply with RPM packaging guidelines (#2504) Merged --- src/pkg/packaging/rpm/dotnet-hostfxr-rpm_config.json | 3 +-- src/pkg/packaging/rpm/dotnet-sharedframework-rpm_config.json | 4 ++-- src/pkg/packaging/rpm/dotnet-sharedhost-rpm_config.json | 2 +- src/pkg/packaging/rpm/templates/changelog | 2 +- 4 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/pkg/packaging/rpm/dotnet-hostfxr-rpm_config.json b/src/pkg/packaging/rpm/dotnet-hostfxr-rpm_config.json index deca0589..a3caefff 100644 --- a/src/pkg/packaging/rpm/dotnet-hostfxr-rpm_config.json +++ b/src/pkg/packaging/rpm/dotnet-hostfxr-rpm_config.json @@ -7,8 +7,7 @@ "install_doc": "/usr/share/doc/%HOSTFXR_RPM_PACKAGE_NAME%/", "short_description": "%HOSTFXR_BRAND_NAME% %HOSTFXR_NUGET_VERSION%", - "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", - + "long_description": ".NET Core is a development platform that you can use to build command-line\napplications, microservices and modern websites. It is open source,\ncross-platform and is supported by Microsoft. We hope you enjoy using it!\nIf you do, please consider joining the active community of developers that are\ncontributing to the project on GitHub (https://github.com/dotnet/core).\nWe happily accept issues and PRs.", "homepage": "https://github.com/dotnet/core", "release":{ diff --git a/src/pkg/packaging/rpm/dotnet-sharedframework-rpm_config.json b/src/pkg/packaging/rpm/dotnet-sharedframework-rpm_config.json index 636c4a39..0a7ef7b2 100644 --- a/src/pkg/packaging/rpm/dotnet-sharedframework-rpm_config.json +++ b/src/pkg/packaging/rpm/dotnet-sharedframework-rpm_config.json @@ -6,8 +6,8 @@ "install_root": "/usr/share/dotnet", "install_doc": "/usr/share/doc/%SHARED_FRAMEWORK_RPM_PACKAGE_NAME%/", - "short_description": "%SHARED_FRAMEWORK_BRAND_NAME% %SHARED_FRAMEWORK_NUGET_NAME% %SHARED_FRAMEWORK_NUGET_VERSION%", - "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", + "short_description": "%SHARED_FRAMEWORK_BRAND_NAME% %SHARED_FRAMEWORK_NUGET_NAME%", + "long_description": ".NET Core is a development platform that you can use to build command-line\napplications, microservices and modern websites. It is open source,\ncross-platform and is supported by Microsoft. We hope you enjoy using it!\nIf you do, please consider joining the active community of developers that are\ncontributing to the project on GitHub (https://github.com/dotnet/core).\nWe happily accept issues and PRs.", "homepage": "https://github.com/dotnet/core", "release":{ diff --git a/src/pkg/packaging/rpm/dotnet-sharedhost-rpm_config.json b/src/pkg/packaging/rpm/dotnet-sharedhost-rpm_config.json index 7a9ebfc8..fc2ce896 100644 --- a/src/pkg/packaging/rpm/dotnet-sharedhost-rpm_config.json +++ b/src/pkg/packaging/rpm/dotnet-sharedhost-rpm_config.json @@ -8,7 +8,7 @@ "install_man": "/usr/share/man/man1", "short_description": "%SHARED_HOST_BRAND_NAME%", - "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", + "long_description": ".NET Core is a development platform that you can use to build command-line\napplications, microservices and modern websites. It is open source,\ncross-platform and is supported by Microsoft. We hope you enjoy using it!\nIf you do, please consider joining the active community of developers that are\ncontributing to the project on GitHub (https://github.com/dotnet/core).\nWe happily accept issues and PRs.", "homepage": "https://github.com/dotnet/core", "release":{ diff --git a/src/pkg/packaging/rpm/templates/changelog b/src/pkg/packaging/rpm/templates/changelog index 1d7382dd..e61dbc60 100644 --- a/src/pkg/packaging/rpm/templates/changelog +++ b/src/pkg/packaging/rpm/templates/changelog @@ -1,2 +1,2 @@ -* {DATE} {MAINTAINER_NAME} <{MAINTAINER_EMAIL}> {PACKAGE_NAME} ({PACKAGE_VERSION}-{PACKAGE_REVISION}) unstable; urgency={URGENCY} +* {DATE} {MAINTAINER_NAME} <{MAINTAINER_EMAIL}> - {PACKAGE_VERSION}-{PACKAGE_REVISION} - {CHANGELOG_MESSAGE} From 8df6b3c8e95d12674b86f43915aba6f6e4d48394 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Wed, 24 May 2017 15:27:17 -0700 Subject: [PATCH 483/625] Combine packaging props and publish props for deb packages --- dir.props | 21 +++++++++++++++++++++ publish/dir.targets | 10 +++++----- src/dir.props | 12 ------------ src/pkg/packaging/dir.props | 13 ------------- 4 files changed, 26 insertions(+), 30 deletions(-) diff --git a/dir.props b/dir.props index aa7fe6cb..8cbfa559 100644 --- a/dir.props +++ b/dir.props @@ -382,6 +382,27 @@ $(InstallerExtension) + + + $(TargetRid) + osx.10.10-x64 + rhel.7-x64 + rhel.7-x64 + rhel.7-x64 + rhel.7-x64 + rhel.7-x64 + $(SharedFrameworkNugetVersion)-$(PackageTargetRid) + $(HostResolverVersion)-$(PackageTargetRid) + + + + $(CombinedInstallerStart)$(ProductMoniker)$(CombinedInstallerExtension) + $(CombinedInstallerStart)$(ProductMoniker)-engine.exe + $(SharedHostInstallerStart)$(ProductMoniker)$(InstallerExtension) + $(HostFxrInstallerStart)$(HostResolverVersionMoniker)$(InstallerExtension) + $(SharedFrameworkInstallerStart)$(ProductMoniker)$(InstallerExtension) + + diff --git a/publish/dir.targets b/publish/dir.targets index d28c172f..38623655 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -70,14 +70,14 @@ Text=" Missing parameters for debian publish." /> - + dotnet-host - - dotnet-hostfxr-$(HostResolverVersion.ToLower()) + + $([System.IO.Path]::GetFileNameWithoutExtension('$(HostFxrInstallerFile)')) - - dotnet-runtime-$(SharedFrameworkNugetVersion.ToLower()) + + $([System.IO.Path]::GetFileNameWithoutExtension('$(SharedFrameworkInstallerFile)')) diff --git a/src/dir.props b/src/dir.props index 783789f5..39af4dea 100644 --- a/src/dir.props +++ b/src/dir.props @@ -20,18 +20,6 @@ $(LibPrefix)hostpolicy$(LibSuffix) - - - - $(TargetRid) - osx.10.10-x64 - rhel.7-x64 - rhel.7-x64 - rhel.7-x64 - rhel.7-x64 - rhel.7-x64 - - .map .ni.pdb diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index 0a4b661f..708c4096 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -15,11 +15,6 @@ $(IntermediateOutputRootPath)combined-framework-host/ - - $(SharedFrameworkNugetVersion)-$(PackageTargetRid) - $(HostResolverVersion)-$(PackageTargetRid) - - dotnet-runtime-$(ProductMoniker)$(CompressedFileExtension) dotnet-hostfxr-internal-$(PackageTargetRid).$(HostResolverVersion)$(CompressedFileExtension) @@ -27,14 +22,6 @@ dotnet-runtime-symbols-$(ProductMoniker)$(CompressedFileExtension) - - $(CombinedInstallerStart)$(ProductMoniker)$(CombinedInstallerExtension) - $(CombinedInstallerStart)$(ProductMoniker)-engine.exe - $(SharedHostInstallerStart)$(ProductMoniker)$(InstallerExtension) - $(HostFxrInstallerStart)$(HostResolverVersionMoniker)$(InstallerExtension) - $(SharedFrameworkInstallerStart)$(ProductMoniker)$(InstallerExtension) - - Microsoft .NET Core $(ProductionVersion) Microsoft .NET Core $(ProductionVersion) $(ReleaseBrandSuffix) From 9480dfe587505dfa892b8c96b92637ea6d76e2b9 Mon Sep 17 00:00:00 2001 From: chcosta Date: Wed, 24 May 2017 15:27:55 -0700 Subject: [PATCH 484/625] Remove unecessary generateversionsourcefile and init-tools steps from (#2514) offical build definitions --- buildpipeline/Core-Setup-Linux-Arm-BT.json | 57 ++---- buildpipeline/Core-Setup-Linux-BT.json | 89 ++------- buildpipeline/Core-Setup-OSX-BT.json | 51 ++--- buildpipeline/Core-Setup-Windows-Arm-BT.json | 119 +++++------- buildpipeline/Core-Setup-Windows-BT.json | 187 ++++++++----------- 5 files changed, 172 insertions(+), 331 deletions(-) diff --git a/buildpipeline/Core-Setup-Linux-Arm-BT.json b/buildpipeline/Core-Setup-Linux-Arm-BT.json index f5421fbd..6457d98a 100644 --- a/buildpipeline/Core-Setup-Linux-Arm-BT.json +++ b/buildpipeline/Core-Setup-Linux-Arm-BT.json @@ -110,42 +110,6 @@ "failOnStandardError": "false" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Init tools", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/init-tools.sh", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Generate version assets", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId)", - "workingFolder": "", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": false, @@ -239,6 +203,16 @@ } ], "options": [ + { + "enabled": false, + "definition": { + "id": "5d58cc01-7c75-450c-be18-a388ddb129ec" + }, + "inputs": { + "branchFilters": "[\"+refs/heads/*\"]", + "additionalFields": "{}" + } + }, { "enabled": false, "definition": { @@ -388,10 +362,10 @@ "isSecret": true }, "PB_DistroRid": { - "value": "ubuntu.14.04-x64" + "value": "ubuntu.14.04-arm" }, "PB_TargetArchitecture": { - "value": "x64" + "value": "arm" }, "PB_AdditionalBuildArguments": { "value": "" @@ -432,7 +406,7 @@ "deleteTestResults": true } ], - "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)-$(PB_DockerTag)", + "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)", "jobAuthorizationScope": "projectCollection", "jobTimeoutInMinutes": 90, "jobCancelTimeoutInMinutes": 5, @@ -474,6 +448,7 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097676 + "revision": 418097676, + "visibility": "private" } -} +} \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index 3ef95c84..a6af5ac6 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -110,42 +110,6 @@ "failOnStandardError": "false" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Init tools", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/init-tools.sh", - "workingFolder": "", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Generate version assets", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "docker", - "arguments": "run --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId)", - "workingFolder": "", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": false, @@ -188,7 +152,6 @@ "alwaysRun": false, "displayName": "Copy built Portable binaries to staging directory", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "5bfb729a-a7c8-4a78-a7c3-8d717bb7c13c", "versionSpec": "2.*", @@ -209,7 +172,6 @@ "alwaysRun": false, "displayName": "Initialize docker - Ubuntu14.04", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -228,7 +190,6 @@ "alwaysRun": false, "displayName": "Init tools - Ubuntu14.04", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -247,7 +208,6 @@ "alwaysRun": false, "displayName": "Build traversal build dependencies - Ubuntu 14.04", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -266,7 +226,6 @@ "alwaysRun": false, "displayName": "Package - Ubuntu 14.04 ", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -285,7 +244,6 @@ "alwaysRun": false, "displayName": "Publish - Ubuntu 14.04 ", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -304,7 +262,6 @@ "alwaysRun": false, "displayName": "Initialize docker - Ubuntu16.04", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -323,7 +280,6 @@ "alwaysRun": false, "displayName": "Init tools - Ubuntu16.04 ", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -342,7 +298,6 @@ "alwaysRun": false, "displayName": "Build traversal build dependencies -Ubuntu 16.04 ", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -361,7 +316,6 @@ "alwaysRun": false, "displayName": "Package - Ubuntu 16.04", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -380,7 +334,6 @@ "alwaysRun": false, "displayName": "Publish - Ubuntu 16.04 ", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -399,7 +352,6 @@ "alwaysRun": false, "displayName": "Initialize docker - Ubuntu16.10", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -418,7 +370,6 @@ "alwaysRun": false, "displayName": "Init tools - Ubuntu16.10", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -437,7 +388,6 @@ "alwaysRun": false, "displayName": "Build traversal build dependencies - Ubuntu 16.10", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -456,7 +406,6 @@ "alwaysRun": false, "displayName": "Package - Ubuntu 16.10", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -475,7 +424,6 @@ "alwaysRun": false, "displayName": "Publish - Ubuntu 16.10", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -494,7 +442,6 @@ "alwaysRun": false, "displayName": "Initialize docker - Debian 8", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -513,7 +460,6 @@ "alwaysRun": false, "displayName": "Init tools - Debian 8 container", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -532,7 +478,6 @@ "alwaysRun": false, "displayName": "Build traversal build dependencies - Debian 8", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -551,7 +496,6 @@ "alwaysRun": false, "displayName": "Package - Debian 8", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -570,7 +514,6 @@ "alwaysRun": false, "displayName": "Publish - Debian 8", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -589,7 +532,6 @@ "alwaysRun": false, "displayName": "Initialize docker - Rhel7", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -608,7 +550,6 @@ "alwaysRun": false, "displayName": "Init tools - Rhel7", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -627,7 +568,6 @@ "alwaysRun": false, "displayName": "Build traversal build dependencies - Rhel7", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -646,7 +586,6 @@ "alwaysRun": false, "displayName": "Package - Rhel7", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -665,7 +604,6 @@ "alwaysRun": false, "displayName": "Publish - Rhel7", "timeoutInMinutes": 0, - "condition": "succeeded()", "task": { "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", "versionSpec": "1.*", @@ -735,6 +673,16 @@ } ], "options": [ + { + "enabled": false, + "definition": { + "id": "5d58cc01-7c75-450c-be18-a388ddb129ec" + }, + "inputs": { + "branchFilters": "[\"+refs/heads/*\"]", + "additionalFields": "{}" + } + }, { "enabled": false, "definition": { @@ -891,7 +839,7 @@ "isSecret": true }, "PB_DistroRid": { - "value": "ubuntu.14.04-x64" + "value": "ubuntu.14.04-$(PB_TargetArchitecture)" }, "PB_TargetArchitecture": { "value": "x64" @@ -936,7 +884,7 @@ "value": "ubuntu-16.04-debpkg-e5cf912-20174703024721" }, "DistroRid_Ubuntu1604": { - "value": "ubuntu.16.04-x64" + "value": "ubuntu.16.04-$(PB_TargetArchitecture)" }, "DockerImageName_Ubuntu1604": { "value": "$(PB_DockerRepository):$(DockerTag_Ubuntu1604)" @@ -948,7 +896,7 @@ "value": "ubuntu-16.10-debpkg-ec863bb-20170003030028" }, "DistroRid_Ubuntu1610": { - "value": "ubuntu.16.10-x64" + "value": "ubuntu.16.10-$(PB_TargetArchitecture)" }, "DockerImageName_Ubuntu1610": { "value": "$(PB_DockerRepository):$(DockerTag_Ubuntu1610)" @@ -960,7 +908,7 @@ "value": "debian-8.2-debpkg-9f87c3c-20173003023006" }, "DistroRid_Debian8": { - "value": "debian.8-x64" + "value": "debian.8-$(PB_TargetArchitecture)" }, "DockerImageName_Debian8": { "value": "$(PB_DockerRepository):$(DockerTag_Debian8)" @@ -972,7 +920,7 @@ "value": "rhel-7-rpmpkg-c982313-20174116044113" }, "DistroRid_Rhel7": { - "value": "rhel.7-x64" + "value": "rhel.7-$(PB_TargetArchitecture)" }, "DockerImageName_Rhel7": { "value": "$(PB_DockerRepository):$(DockerTag_Rhel7)" @@ -1010,7 +958,7 @@ "deleteTestResults": true } ], - "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)-$(PB_DockerTag)", + "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)", "jobAuthorizationScope": "projectCollection", "jobTimeoutInMinutes": 90, "jobCancelTimeoutInMinutes": 5, @@ -1052,6 +1000,7 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097676 + "revision": 418097676, + "visibility": "private" } -} +} \ No newline at end of file diff --git a/buildpipeline/Core-Setup-OSX-BT.json b/buildpipeline/Core-Setup-OSX-BT.json index c7bdbcf9..7872962e 100644 --- a/buildpipeline/Core-Setup-OSX-BT.json +++ b/buildpipeline/Core-Setup-OSX-BT.json @@ -54,42 +54,6 @@ "failOnStandardError": "false" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Init tools", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "$(PB_SourcesDirectory)/init-tools.sh", - "arguments": "", - "workingFolder": "$(PB_SourcesDirectory)", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Generate version assets", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "$(PB_SourcesDirectory)/Tools/msbuild.sh", - "arguments": "$(PB_SourcesDirectory)/build.proj /t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId)", - "workingFolder": "$(PB_SourcesDirectory)", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": false, @@ -146,6 +110,16 @@ } ], "options": [ + { + "enabled": false, + "definition": { + "id": "5d58cc01-7c75-450c-be18-a388ddb129ec" + }, + "inputs": { + "branchFilters": "[\"+refs/heads/*\"]", + "additionalFields": "{}" + } + }, { "enabled": false, "definition": { @@ -316,6 +290,7 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097676 + "revision": 418097676, + "visibility": "private" } -} +} \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Windows-Arm-BT.json b/buildpipeline/Core-Setup-Windows-Arm-BT.json index 1fb49947..c6d0e975 100644 --- a/buildpipeline/Core-Setup-Windows-Arm-BT.json +++ b/buildpipeline/Core-Setup-Windows-Arm-BT.json @@ -74,43 +74,6 @@ "feedSource": "https://devdiv.pkgs.visualstudio.com/DefaultCollection/_packaging/MicroBuildToolset/nuget/v3/index.json" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Run init-tools.cmd", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "$(PB_SourcesDirectory)\\init-tools.cmd", - "arguments": "", - "modifyEnvironment": "false", - "workingFolder": "$(PB_SourcesDirectory)", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Generate version assets", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "$(PB_SourcesDirectory)\\build.cmd", - "arguments": "-- /t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId) $(PB_CommonMSBuildArgs)", - "workingFolder": "$(PB_SourcesDirectory)", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": false, @@ -160,6 +123,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\sign.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignBinaries $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs)", @@ -167,11 +134,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -187,6 +150,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\src\\pkg\\dir.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packages.log", @@ -194,11 +161,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -214,6 +177,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\src\\sharedFramework\\sharedFramework.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\sharedframework.log", @@ -221,11 +188,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -241,6 +204,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packaging.log", @@ -248,11 +215,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "true", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "true" } }, { @@ -268,6 +231,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken)", @@ -275,11 +242,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -295,6 +258,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\Tools\\scripts\\vstsagent\\cleanupagent.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", @@ -302,11 +269,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -343,6 +306,16 @@ } ], "options": [ + { + "enabled": false, + "definition": { + "id": "5d58cc01-7c75-450c-be18-a388ddb129ec" + }, + "inputs": { + "branchFilters": "[\"+refs/heads/*\"]", + "additionalFields": "{}" + } + }, { "enabled": false, "definition": { @@ -419,10 +392,7 @@ "value": "400" }, "PB_DistroRid": { - "value": "win-x64" - }, - "RID": { - "value": "win-x64", + "value": "win-$(PB_TargetArchitecture)", "allowOverride": true }, "MsbuildSigningArguments": { @@ -435,14 +405,14 @@ "value": "false" }, "PB_PortableBuild": { - "value": "false", + "value": "true", "allowOverride": true }, "PB_SourcesDirectory": { "value": "$(Build.SourcesDirectory)\\core-setup" }, "PB_ChecksumAzureAccountName": { - "value": "dotnetclichecksums" + "value": "dotnetclichecksums" }, "PB_ChecksumAzureAccessToken": { "value": null, @@ -557,6 +527,7 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097676 + "revision": 418097676, + "visibility": "private" } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index e9680aa4..28b5d443 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -74,43 +74,6 @@ "feedSource": "https://devdiv.pkgs.visualstudio.com/DefaultCollection/_packaging/MicroBuildToolset/nuget/v3/index.json" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Run init-tools.cmd", - "timeoutInMinutes": 0, - "task": { - "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "$(PB_SourcesDirectory)\\init-tools.cmd", - "arguments": "", - "modifyEnvironment": "false", - "workingFolder": "$(PB_SourcesDirectory)", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Generate version assets", - "timeoutInMinutes": 0, - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "$(PB_SourcesDirectory)\\build.cmd", - "arguments": "-- /t:GenerateVersionSourceFile /p:GenerateVersionSourceFile=true /p:OfficialBuildId=$(OfficialBuildId) $(PB_CommonMSBuildArgs)", - "workingFolder": "$(PB_SourcesDirectory)", - "failOnStandardError": "false" - } - }, { "enabled": true, "continueOnError": false, @@ -160,6 +123,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\sign.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignBinaries $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs)", @@ -167,11 +134,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -187,6 +150,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\src\\pkg\\dir.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packages.log", @@ -194,11 +161,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -214,6 +177,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\src\\sharedFramework\\sharedFramework.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\sharedframework.log", @@ -221,11 +188,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -241,6 +204,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:BuildInstallers $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\packaging.log", @@ -248,11 +215,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "true", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "true" } }, { @@ -268,6 +231,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\sign.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignMsiAndCab $(PB_CommonMSBuildArgs) $(MsbuildSigningArguments)", @@ -275,11 +242,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -295,6 +258,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:BuildCombinedInstallers $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\createbundles.log", @@ -302,11 +269,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -322,6 +285,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:ExtractEngineBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\extractengine.log", @@ -329,11 +296,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -349,6 +312,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\sign.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignEngine $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signengine.log", @@ -356,11 +323,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -376,6 +339,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\src\\pkg\\packaging\\dir.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:ReattachEngineToBundle $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\reattachengine.log", @@ -383,11 +350,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -403,6 +366,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\sign.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/t:SignBundle $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\signbundle.log", @@ -410,11 +377,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -430,6 +393,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\src\\test\\dir.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=diag;LogFile=$(PB_SourcesDirectory)\\tests.log", @@ -437,11 +404,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -457,6 +420,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", @@ -464,11 +431,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -484,6 +447,10 @@ }, "inputs": { "solution": "$(PB_SourcesDirectory)\\Tools\\scripts\\vstsagent\\cleanupagent.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", "msbuildArguments": "/p:AgentDirectory=$(Agent.HomeDirectory) /p:DoClean=$(PB_CleanAgent)", @@ -491,11 +458,7 @@ "maximumCpuCount": "false", "restoreNugetPackages": "false", "logProjectEvents": "false", - "createLogFile": "false", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "" + "createLogFile": "false" } }, { @@ -532,6 +495,16 @@ } ], "options": [ + { + "enabled": false, + "definition": { + "id": "5d58cc01-7c75-450c-be18-a388ddb129ec" + }, + "inputs": { + "branchFilters": "[\"+refs/heads/*\"]", + "additionalFields": "{}" + } + }, { "enabled": false, "definition": { @@ -614,10 +587,7 @@ "value": "400" }, "PB_DistroRid": { - "value": "win-x64" - }, - "RID": { - "value": "win-x64", + "value": "win-$(PB_TargetArchitecture)", "allowOverride": true }, "MsbuildSigningArguments": { @@ -630,7 +600,7 @@ "value": "false" }, "PB_PortableBuild": { - "value": "false", + "value": "true", "allowOverride": true }, "NUGET_SYMBOLS_FEED_URL": { @@ -752,6 +722,7 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097676 + "revision": 418097676, + "visibility": "private" } } \ No newline at end of file From 71e078560e53542e46de7cfe084c2a7ccfee3ae8 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Thu, 25 May 2017 16:39:51 -0700 Subject: [PATCH 485/625] Combine deb package props with deb publish props --- dir.props | 9 +++++++++ publish/dir.targets | 6 +++--- src/pkg/packaging/deb/package.props | 9 --------- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/dir.props b/dir.props index 8cbfa559..50d1b3a2 100644 --- a/dir.props +++ b/dir.props @@ -402,6 +402,15 @@ $(HostFxrInstallerStart)$(HostResolverVersionMoniker)$(InstallerExtension) $(SharedFrameworkInstallerStart)$(ProductMoniker)$(InstallerExtension) + + + dotnet-host + $(SharedHostDebPkgName.ToLower()) + $([System.IO.Path]::GetFileNameWithoutExtension('$(HostFxrInstallerFile)')) + $(HostFxrDebPkgName.ToLower()) + $([System.IO.Path]::GetFileNameWithoutExtension('$(SharedFrameworkInstallerFile)')) + $(SharedFxDebPkgName.ToLower()) + 2ded50b86b1599881e556363fa62bc7bde850525 - 2ded50b86b1599881e556363fa62bc7bde850525 - 2ded50b86b1599881e556363fa62bc7bde850525 - 2ded50b86b1599881e556363fa62bc7bde850525 + ec8853bd6ba3456493d24983d32c6d9654d8891d + ec8853bd6ba3456493d24983d32c6d9654d8891d + ec8853bd6ba3456493d24983d32c6d9654d8891d 4.5.0-preview1-25324-02 2.1.0-preview1-25324-02 - 2.1.0-preview1-25324-01 + 2.1.0-preview1-25330-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25324-01 + 2.1.0-preview1-25329-01 1.4.1 - 4.5.0-preview1-25324-01 + 4.5.0-preview1-25329-01 From 294cb6b0070278a5d3ae2c8fe5eec14089b3f78d Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Tue, 30 May 2017 06:39:21 -0700 Subject: [PATCH 492/625] Update CoreClr, Standard, WCF to preview1-25330-02, preview1-25330-01, preview1-25330-01, respectively --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index aa57b78c..8b9e5211 100644 --- a/dependencies.props +++ b/dependencies.props @@ -10,19 +10,19 @@ --> 2ded50b86b1599881e556363fa62bc7bde850525 - ec8853bd6ba3456493d24983d32c6d9654d8891d - ec8853bd6ba3456493d24983d32c6d9654d8891d - ec8853bd6ba3456493d24983d32c6d9654d8891d + 969d2bc613cc192283ef4d303803df9e39aa40aa + 969d2bc613cc192283ef4d303803df9e39aa40aa + 969d2bc613cc192283ef4d303803df9e39aa40aa 4.5.0-preview1-25324-02 2.1.0-preview1-25324-02 - 2.1.0-preview1-25330-01 + 2.1.0-preview1-25330-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25329-01 + 2.1.0-preview1-25330-01 1.4.1 - 4.5.0-preview1-25329-01 + 4.5.0-preview1-25330-01 From 0c86d8889a8bb78269ee85d0e7a4ecbe574100dc Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Tue, 30 May 2017 10:55:03 -0700 Subject: [PATCH 493/625] Remove Debian Armel (#2557) --- src/pkg/projects/netcoreappRIDs.props | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/pkg/projects/netcoreappRIDs.props b/src/pkg/projects/netcoreappRIDs.props index dcbc85f7..1f7736bd 100644 --- a/src/pkg/projects/netcoreappRIDs.props +++ b/src/pkg/projects/netcoreappRIDs.props @@ -35,9 +35,6 @@ - - armel - armel From c2ff7d0233cb210a0dee3c4b8538e0bcd0415c93 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Tue, 30 May 2017 19:28:52 -0700 Subject: [PATCH 494/625] Update CoreFx to preview1-25330-06 (#2564) --- dependencies.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.props b/dependencies.props index 8b9e5211..586707cc 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,14 +9,14 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 2ded50b86b1599881e556363fa62bc7bde850525 + c540e83335d09db008df5cc54f5b448d1b0c4d34 969d2bc613cc192283ef4d303803df9e39aa40aa 969d2bc613cc192283ef4d303803df9e39aa40aa 969d2bc613cc192283ef4d303803df9e39aa40aa - 4.5.0-preview1-25324-02 + 4.5.0-preview1-25330-06 2.1.0-preview1-25324-02 2.1.0-preview1-25330-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) From 09bee487b0520675e5fd6838823fca719e72f603 Mon Sep 17 00:00:00 2001 From: Steve Harter Date: Wed, 31 May 2017 12:16:29 -0500 Subject: [PATCH 495/625] Improve error message when assembly missing from runtime store --- src/corehost/cli/deps_entry.h | 1 + src/corehost/cli/deps_format.cpp | 14 +++++++++----- src/corehost/cli/deps_format.h | 5 +++-- src/corehost/cli/deps_resolver.cpp | 21 ++++++++++++--------- 4 files changed, 25 insertions(+), 16 deletions(-) diff --git a/src/corehost/cli/deps_entry.h b/src/corehost/cli/deps_entry.h index c228303e..727700d4 100644 --- a/src/corehost/cli/deps_entry.h +++ b/src/corehost/cli/deps_entry.h @@ -21,6 +21,7 @@ struct deps_entry_t static const std::array s_known_asset_types; + pal::string_t deps_file; pal::string_t library_type; pal::string_t library_name; pal::string_t library_version; diff --git a/src/corehost/cli/deps_format.cpp b/src/corehost/cli/deps_format.cpp index 316e14f1..6984f953 100644 --- a/src/corehost/cli/deps_format.cpp +++ b/src/corehost/cli/deps_format.cpp @@ -47,10 +47,13 @@ pal::string_t deps_json_t::get_optional_path( } void deps_json_t::reconcile_libraries_with_targets( + const pal::string_t& deps_path, const json_value& json, const std::function& library_exists_fn, const std::function&(const pal::string_t&, int, bool*)>& get_rel_paths_by_asset_type_fn) { + pal::string_t deps_file = get_filename(deps_path); + const auto& libraries = json.at(_X("libraries")).as_object(); for (const auto& library : libraries) { @@ -98,6 +101,7 @@ void deps_json_t::reconcile_libraries_with_targets( entry.relative_path = rel_path; entry.is_serviceable = serviceable; entry.is_rid_specific = rid_specific; + entry.deps_file = deps_file; // TODO: Deps file does not follow spec. It uses '\\', should use '/' replace_char(&entry.relative_path, _X('\\'), _X('/')); @@ -260,7 +264,7 @@ bool deps_json_t::process_targets(const json_value& json, const pal::string_t& t return true; } -bool deps_json_t::load_portable(const json_value& json, const pal::string_t& target_name, const rid_fallback_graph_t& rid_fallback_graph) +bool deps_json_t::load_portable(const pal::string_t& deps_path, const json_value& json, const pal::string_t& target_name, const rid_fallback_graph_t& rid_fallback_graph) { if (!process_runtime_targets(json, target_name, rid_fallback_graph, &m_rid_assets)) { @@ -302,12 +306,12 @@ bool deps_json_t::load_portable(const json_value& json, const pal::string_t& tar return empty; }; - reconcile_libraries_with_targets(json, package_exists, get_relpaths); + reconcile_libraries_with_targets(deps_path, json, package_exists, get_relpaths); return true; } -bool deps_json_t::load_standalone(const json_value& json, const pal::string_t& target_name) +bool deps_json_t::load_standalone(const pal::string_t& deps_path, const json_value& json, const pal::string_t& target_name) { if (!process_targets(json, target_name, &m_assets)) { @@ -323,7 +327,7 @@ bool deps_json_t::load_standalone(const json_value& json, const pal::string_t& t return m_assets.libs[package].by_type[type_index].vec; }; - reconcile_libraries_with_targets(json, package_exists, get_relpaths); + reconcile_libraries_with_targets(deps_path, json, package_exists, get_relpaths); const auto& json_object = json.as_object(); const auto iter = json_object.find(_X("runtimes")); @@ -414,7 +418,7 @@ bool deps_json_t::load(bool portable, const pal::string_t& deps_path, const rid_ trace::verbose(_X("Loading deps file... %s as portable=[%d]"), deps_path.c_str(), portable); - return (portable) ? load_portable(json, name, rid_fallback_graph) : load_standalone(json, name); + return (portable) ? load_portable(deps_path, json, name, rid_fallback_graph) : load_standalone(deps_path, json, name); } catch (const std::exception& je) { diff --git a/src/corehost/cli/deps_format.h b/src/corehost/cli/deps_format.h index 4341a40e..78b6a4c1 100644 --- a/src/corehost/cli/deps_format.h +++ b/src/corehost/cli/deps_format.h @@ -70,13 +70,14 @@ public: const deps_entry_t& try_ni(const deps_entry_t& entry) const; private: - bool load_standalone(const json_value& json, const pal::string_t& target_name); - bool load_portable(const json_value& json, const pal::string_t& target_name, const rid_fallback_graph_t& rid_fallback_graph); + bool load_standalone(const pal::string_t& deps_path, const json_value& json, const pal::string_t& target_name); + bool load_portable(const pal::string_t& deps_path, const json_value& json, const pal::string_t& target_name, const rid_fallback_graph_t& rid_fallback_graph); bool load(bool portable, const pal::string_t& deps_path, const rid_fallback_graph_t& rid_fallback_graph); bool process_runtime_targets(const json_value& json, const pal::string_t& target_name, const rid_fallback_graph_t& rid_fallback_graph, rid_specific_assets_t* p_assets); bool process_targets(const json_value& json, const pal::string_t& target_name, deps_assets_t* p_assets); void reconcile_libraries_with_targets( + const pal::string_t& deps_path, const json_value& json, const std::function& library_exists_fn, const std::function&(const pal::string_t&, int, bool*)>& get_rel_paths_by_asset_type_fn); diff --git a/src/corehost/cli/deps_resolver.cpp b/src/corehost/cli/deps_resolver.cpp index b6ba1349..8cdd7261 100644 --- a/src/corehost/cli/deps_resolver.cpp +++ b/src/corehost/cli/deps_resolver.cpp @@ -262,8 +262,8 @@ bool deps_resolver_t::probe_deps_entry(const deps_entry_t& entry, const pal::str continue; } pal::string_t probe_dir = config.probe_dir; - - if (config.probe_deps_json) + + if (config.probe_deps_json) { // If the deps json has the package name and version, then someone has already done rid selection and // put the right asset in the dir. So checking just package name and version would suffice. @@ -305,15 +305,18 @@ bool deps_resolver_t::probe_deps_entry(const deps_entry_t& entry, const pal::str bool report_missing_assembly_in_manifest(const deps_entry_t& entry) { + trace::error(_X( + "Error: An assembly specified in the application dependencies manifest (%s) was not found:\n" + " package: '%s', version: '%s'\n" + " path: '%s'"), + entry.deps_file.c_str(), entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); + if (!entry.runtime_store_manifest_list.empty()) { - trace::error(_X("Error: assembly specified in the dependencies manifest was not found probably due to missing runtime store associated with %s -- package: '%s', version: '%s', path: '%s'"), - entry.runtime_store_manifest_list.c_str(), entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); - } - else - { - trace::error(_X("Error: assembly specified in the dependencies manifest was not found -- package: '%s', version: '%s', path: '%s'"), - entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); + trace::error(_X( + " This assembly was expected to be in the local runtime store as the application was published using the following target manifest files:\n" + " %s"), + entry.runtime_store_manifest_list.c_str()); } return false; From a9b44ef3ea79adf631d6fcf347eb32d50c1550ae Mon Sep 17 00:00:00 2001 From: Steve Harter Date: Wed, 31 May 2017 14:00:44 -0500 Subject: [PATCH 496/625] Update error message and test --- src/corehost/cli/deps_resolver.cpp | 3 ++- .../GivenThatICareAboutLightupAppActivation.cs | 8 ++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/corehost/cli/deps_resolver.cpp b/src/corehost/cli/deps_resolver.cpp index 8cdd7261..cf41401e 100644 --- a/src/corehost/cli/deps_resolver.cpp +++ b/src/corehost/cli/deps_resolver.cpp @@ -306,7 +306,8 @@ bool deps_resolver_t::probe_deps_entry(const deps_entry_t& entry, const pal::str bool report_missing_assembly_in_manifest(const deps_entry_t& entry) { trace::error(_X( - "Error: An assembly specified in the application dependencies manifest (%s) was not found:\n" + "Error:\n" + " An assembly specified in the application dependencies manifest (%s) was not found:\n" " package: '%s', version: '%s'\n" " path: '%s'"), entry.deps_file.c_str(), entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); diff --git a/src/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs b/src/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs index 861f1ac8..a856bb18 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutLightupAppActivation.cs @@ -63,11 +63,15 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.LightupApp dotnet.Exec("exec", "--additional-deps", libDepsJson, appDll) .CaptureStdErr() .CaptureStdOut() - .Execute(fExpectedToFail:true) + .Execute(fExpectedToFail: true) .Should() .Fail() .And - .HaveStdErrContaining("Error: assembly specified in the dependencies manifest was not found -- package: \'LightupLib\', version: \'1.0.0\', path: \'LightupLib.dll\'"); + .HaveStdErrContaining( + "Error:" + Environment.NewLine + + " An assembly specified in the application dependencies manifest (LightupLib.deps.json) was not found:" + Environment.NewLine + + " package: \'LightupLib\', version: \'1.0.0\'" + Environment.NewLine + + " path: \'LightupLib.dll\'"); } // Attempt to run the app with lightup deps.json specified and lightup library present in the expected From 627dd3c2889bdca6177faa81761709a368ac162f Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Wed, 31 May 2017 16:10:06 -0700 Subject: [PATCH 497/625] Update CoreClr, Standard, WCF to preview1-25331-02, preview1-25331-01, preview1-25331-01, respectively (#2569) --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index 586707cc..55daecd6 100644 --- a/dependencies.props +++ b/dependencies.props @@ -10,19 +10,19 @@ --> c540e83335d09db008df5cc54f5b448d1b0c4d34 - 969d2bc613cc192283ef4d303803df9e39aa40aa - 969d2bc613cc192283ef4d303803df9e39aa40aa - 969d2bc613cc192283ef4d303803df9e39aa40aa + 29b0e62fdbc8ac3ea4efd132421848502d6e8c4d + 29b0e62fdbc8ac3ea4efd132421848502d6e8c4d + 29b0e62fdbc8ac3ea4efd132421848502d6e8c4d 4.5.0-preview1-25330-06 2.1.0-preview1-25324-02 - 2.1.0-preview1-25330-02 + 2.1.0-preview1-25331-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25330-01 + 2.1.0-preview1-25331-01 1.4.1 - 4.5.0-preview1-25330-01 + 4.5.0-preview1-25331-01 From 8666686d33887f575357c92470d47d90d1d363cd Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Wed, 31 May 2017 19:31:45 -0700 Subject: [PATCH 498/625] Update CoreClr, CoreFx to preview1-25331-03, preview1-25401-02, respectively (#2578) --- dependencies.props | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dependencies.props b/dependencies.props index 55daecd6..43a59e18 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,16 +9,16 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - c540e83335d09db008df5cc54f5b448d1b0c4d34 - 29b0e62fdbc8ac3ea4efd132421848502d6e8c4d + 5345e5b4eac8279a97e744026f93e9f6ef1ccca3 + 5345e5b4eac8279a97e744026f93e9f6ef1ccca3 29b0e62fdbc8ac3ea4efd132421848502d6e8c4d 29b0e62fdbc8ac3ea4efd132421848502d6e8c4d - 4.5.0-preview1-25330-06 + 4.5.0-preview1-25401-02 2.1.0-preview1-25324-02 - 2.1.0-preview1-25331-02 + 2.1.0-preview1-25331-03 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.1.0-preview1-25331-01 1.4.1 From 2bf5020fabf2aae84ab7d030d1dd36956267f8bc Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Thu, 1 Jun 2017 08:18:40 -0700 Subject: [PATCH 499/625] Build CoreRuntime AppX Package for UWP (#2520) Build UWP components: 1. Build native UWP components, sign them and publish to Azure blob. 2. Generate the Microsoft.NET.CoreRuntime.2.0 FW AppX package. --- dir.props | 1 + publish/dir.props | 3 + publish/dir.targets | 1 + sign.proj | 18 + src/corehost/CMakeLists.txt | 124 +- src/corehost/build.cmd | 2 +- src/corehost/cli/setup.cmake | 101 - src/pkg/packages.builds | 1 + .../AppxManifest.xml.template | 28 + .../Microsoft.NET.CoreRuntime.builds | 14 + .../Microsoft.NET.CoreRuntime.depproj | 80 + .../Microsoft.NET.CoreRuntime/dir.props | 4 + .../Microsoft.NET.CoreRuntime/logo.png | Bin 0 -> 515 bytes src/settings.cmake | 226 ++ src/src.builds | 1 + src/uwp/CMakeLists.txt | 9 + src/uwp/CopyWin32Resources/CMakeLists.txt | 12 + .../CopyWin32Resources/CopyWin32Resources.cpp | 313 ++ src/uwp/CopyWin32Resources/native.rc | 40 + src/uwp/Host/CMakeLists.txt | 2 + src/uwp/Host/UWPHost/CMakeLists.txt | 23 + src/uwp/Host/UWPHost/HostEnvironment.cpp | 251 ++ src/uwp/Host/UWPHost/HostEnvironment.h | 214 ++ src/uwp/Host/UWPHost/UWPHost.cpp | 260 ++ src/uwp/Host/UWPHost/UWPHost.def | 9 + src/uwp/Host/UWPHost/UWPHost.h | 36 + src/uwp/Host/UWPHost/mscoree.h | 2929 +++++++++++++++++ src/uwp/Host/UWPHost/native.rc | 40 + src/uwp/Host/UWPShim/CMakeLists.txt | 11 + src/uwp/Host/UWPShim/UWPShim.cpp | 60 + src/uwp/Host/UWPShim/native.rc | 40 + src/uwp/Windows/gen-buildsys-win.bat | 54 + src/uwp/Windows/probe-win.ps1 | 65 + src/uwp/build.cmd | 110 + src/uwp/build.proj | 37 + src/uwp/dir.props | 4 + 36 files changed, 4898 insertions(+), 225 deletions(-) create mode 100644 src/pkg/projects/Microsoft.NET.CoreRuntime/AppxManifest.xml.template create mode 100644 src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds create mode 100644 src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj create mode 100644 src/pkg/projects/Microsoft.NET.CoreRuntime/dir.props create mode 100644 src/pkg/projects/Microsoft.NET.CoreRuntime/logo.png create mode 100644 src/settings.cmake create mode 100644 src/uwp/CMakeLists.txt create mode 100644 src/uwp/CopyWin32Resources/CMakeLists.txt create mode 100644 src/uwp/CopyWin32Resources/CopyWin32Resources.cpp create mode 100644 src/uwp/CopyWin32Resources/native.rc create mode 100644 src/uwp/Host/CMakeLists.txt create mode 100644 src/uwp/Host/UWPHost/CMakeLists.txt create mode 100644 src/uwp/Host/UWPHost/HostEnvironment.cpp create mode 100644 src/uwp/Host/UWPHost/HostEnvironment.h create mode 100644 src/uwp/Host/UWPHost/UWPHost.cpp create mode 100644 src/uwp/Host/UWPHost/UWPHost.def create mode 100644 src/uwp/Host/UWPHost/UWPHost.h create mode 100644 src/uwp/Host/UWPHost/mscoree.h create mode 100644 src/uwp/Host/UWPHost/native.rc create mode 100644 src/uwp/Host/UWPShim/CMakeLists.txt create mode 100644 src/uwp/Host/UWPShim/UWPShim.cpp create mode 100644 src/uwp/Host/UWPShim/native.rc create mode 100644 src/uwp/Windows/gen-buildsys-win.bat create mode 100644 src/uwp/Windows/probe-win.ps1 create mode 100644 src/uwp/build.cmd create mode 100644 src/uwp/build.proj create mode 100644 src/uwp/dir.props diff --git a/dir.props b/dir.props index 50d1b3a2..f58e352d 100644 --- a/dir.props +++ b/dir.props @@ -268,6 +268,7 @@ $(IntermediateOutputRootPath)$(MSBuildProjectName)\ $(BaseOutputRootPath)corehost\ + $(BaseOutputRootPath)uwp\ $(BinDir)$(OSPlatformConfig)/ $(PackagesBasePath)packages/ diff --git a/publish/dir.props b/publish/dir.props index 303478cf..4f25f9de 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -25,6 +25,9 @@ $(BinariesRelativePath) + + $(BinariesRelativePath) + $(BinariesRelativePath) diff --git a/publish/dir.targets b/publish/dir.targets index 9d0b8691..7fd4cbfa 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -7,6 +7,7 @@ + UploadToAzure diff --git a/sign.proj b/sign.proj index f99e762e..0d481f44 100644 --- a/sign.proj +++ b/sign.proj @@ -90,4 +90,22 @@ + + + + + + + + $(CertificateId) + + + $(CertificateId) + + + $(CertificateId) + + + + diff --git a/src/corehost/CMakeLists.txt b/src/corehost/CMakeLists.txt index 456aa04a..fd2dd125 100644 --- a/src/corehost/CMakeLists.txt +++ b/src/corehost/CMakeLists.txt @@ -1,126 +1,4 @@ cmake_minimum_required (VERSION 2.6) -if(CMAKE_SYSTEM_NAME STREQUAL Linux) - set(CLR_CMAKE_PLATFORM_UNIX 1) - message("System name Linux") -endif(CMAKE_SYSTEM_NAME STREQUAL Linux) - -if(CMAKE_SYSTEM_NAME STREQUAL Darwin) - set(CLR_CMAKE_PLATFORM_UNIX 1) - message("System name Darwin") -endif(CMAKE_SYSTEM_NAME STREQUAL Darwin) - -if(CMAKE_SYSTEM_NAME STREQUAL FreeBSD) - set(CLR_CMAKE_PLATFORM_UNIX 1) - add_definitions(-D_BSD_SOURCE) # required for getline - message("System name FreeBSD") -endif(CMAKE_SYSTEM_NAME STREQUAL FreeBSD) - -if(CMAKE_SYSTEM_NAME STREQUAL OpenBSD) - set(CLR_CMAKE_PLATFORM_UNIX 1) - message("System name OpenBSD") -endif(CMAKE_SYSTEM_NAME STREQUAL OpenBSD) - -if(CMAKE_SYSTEM_NAME STREQUAL NetBSD) - set(CLR_CMAKE_PLATFORM_UNIX 1) - message("System name NetBSD") -endif(CMAKE_SYSTEM_NAME STREQUAL NetBSD) - -if(CMAKE_SYSTEM_NAME STREQUAL SunOS) - set(CLR_CMAKE_PLATFORM_UNIX 1) - message("System name SunOS") -endif(CMAKE_SYSTEM_NAME STREQUAL SunOS) - -if (NOT WIN32) - if (CMAKE_SYSTEM_NAME STREQUAL Darwin) - # Ensure that dsymutil and strip are present - find_program(DSYMUTIL dsymutil) - if (DSYMUTIL STREQUAL "DSYMUTIL-NOTFOUND") - message(FATAL_ERROR "dsymutil not found") - endif() - - find_program(STRIP strip) - if (STRIP STREQUAL "STRIP-NOTFOUND") - message(FATAL_ERROR "strip not found") - endif() - else (CMAKE_SYSTEM_NAME STREQUAL Darwin) - # Ensure that objcopy is present - if(DEFINED ENV{ROOTFS_DIR}) - if(CMAKE_SYSTEM_PROCESSOR STREQUAL armv7l OR CMAKE_SYSTEM_PROCESSOR STREQUAL aarch64 OR CMAKE_SYSTEM_PROCESSOR STREQUAL i686) - find_program(OBJCOPY ${TOOLCHAIN}-objcopy) - else() - message(FATAL_ERROR "Only AMD64, X86, ARM64 and ARM are supported") - endif() - else() - find_program(OBJCOPY objcopy) - endif() - if (OBJCOPY STREQUAL "OBJCOPY-NOTFOUND" AND NOT CMAKE_SYSTEM_PROCESSOR STREQUAL i686) - message(FATAL_ERROR "objcopy not found") - endif() - endif (CMAKE_SYSTEM_NAME STREQUAL Darwin) -endif () - -function(strip_symbols targetName outputFilename) - if(CLR_CMAKE_PLATFORM_UNIX) - if(STRIP_SYMBOLS) - - # On the older version of cmake (2.8.12) used on Ubuntu 14.04 the TARGET_FILE - # generator expression doesn't work correctly returning the wrong path and on - # the newer cmake versions the LOCATION property isn't supported anymore. - if(CMAKE_VERSION VERSION_EQUAL 3.0 OR CMAKE_VERSION VERSION_GREATER 3.0) - set(strip_source_file $) - else() - get_property(strip_source_file TARGET ${targetName} PROPERTY LOCATION) - endif() - - if(CMAKE_SYSTEM_NAME STREQUAL Darwin) - set(strip_destination_file ${strip_source_file}.dwarf) - - add_custom_command( - TARGET ${targetName} - POST_BUILD - VERBATIM - COMMAND ${DSYMUTIL} --flat --minimize ${strip_source_file} - COMMAND ${STRIP} -u -r ${strip_source_file} - COMMENT Stripping symbols from ${strip_source_file} into file ${strip_destination_file} - ) - else(CMAKE_SYSTEM_NAME STREQUAL Darwin) - set(strip_destination_file ${strip_source_file}.dbg) - - add_custom_command( - TARGET ${targetName} - POST_BUILD - VERBATIM - COMMAND ${OBJCOPY} --only-keep-debug ${strip_source_file} ${strip_destination_file} - COMMAND ${OBJCOPY} --strip-unneeded ${strip_source_file} - COMMAND ${OBJCOPY} --add-gnu-debuglink=${strip_destination_file} ${strip_source_file} - COMMENT Stripping symbols from ${strip_source_file} into file ${strip_destination_file} - ) - endif(CMAKE_SYSTEM_NAME STREQUAL Darwin) - - set(${outputFilename} ${strip_destination_file} PARENT_SCOPE) - endif(STRIP_SYMBOLS) - endif(CLR_CMAKE_PLATFORM_UNIX) -endfunction() - -function(install_library_and_symbols targetName) - strip_symbols(${targetName} strip_destination_file) - - # On the older version of cmake (2.8.12) used on Ubuntu 14.04 the TARGET_FILE - # generator expression doesn't work correctly returning the wrong path and on - # the newer cmake versions the LOCATION property isn't supported anymore. - if(CMAKE_VERSION VERSION_EQUAL 3.0 OR CMAKE_VERSION VERSION_GREATER 3.0) - set(install_source_file $) - else() - get_property(install_source_file TARGET ${targetName} PROPERTY LOCATION) - endif() - - install(PROGRAMS ${install_source_file} DESTINATION .) - if(WIN32) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/$/${targetName}.pdb DESTINATION PDB) - else() - install(FILES ${strip_destination_file} DESTINATION .) - endif() -endfunction() - +include(../settings.cmake) add_subdirectory(cli) diff --git a/src/corehost/build.cmd b/src/corehost/build.cmd index 4ef41bec..8a5fadfd 100644 --- a/src/corehost/build.cmd +++ b/src/corehost/build.cmd @@ -79,7 +79,7 @@ if %__CMakeBinDir% == "" ( if %__IntermediatesDir% == "" ( set "__IntermediatesDir=%__binDir%\obj\%__TargetRid%.%CMAKE_BUILD_TYPE%\corehost" ) -set "__ResourcesDir=%__binDir%\obj\%__TargetRid%.%CMAKE_BUILD_TYPE%\hostResourceFiles% +set "__ResourcesDir=%__binDir%\obj\%__TargetRid%.%CMAKE_BUILD_TYPE%\hostResourceFiles" set "__CMakeBinDir=%__CMakeBinDir:\=/%" set "__IntermediatesDir=%__IntermediatesDir:\=/%" diff --git a/src/corehost/cli/setup.cmake b/src/corehost/cli/setup.cmake index 3b161f75..04e2acf0 100644 --- a/src/corehost/cli/setup.cmake +++ b/src/corehost/cli/setup.cmake @@ -1,107 +1,6 @@ # Copyright (c) .NET Foundation and contributors. All rights reserved. # Licensed under the MIT license. See LICENSE file in the project root for full license information. -set (CMAKE_CXX_STANDARD 11) - -if(WIN32) - add_definitions(-DWIN32) - add_definitions(-D_WIN32=1) - if(IS_64BIT_BUILD) - add_definitions(-D_WIN64=1) - endif() - add_compile_options($<$:-DDEBUG>) - add_compile_options($<$:-DNDEBUG>) - add_compile_options($<$:-DNDEBUG>) - add_compile_options($<$:/Od>) - add_compile_options(/guard:cf) - add_compile_options(/d2Zi+) # make optimized builds debugging easier - add_compile_options(/Oi) # enable intrinsics - add_compile_options(/Oy-) # disable suppressing of the creation of frame pointers on the call stack for quicker function calls - add_compile_options(/GF) # enable read-only string pooling - add_compile_options(/FC) # use full pathnames in diagnostics - add_compile_options(/DEBUG) - add_compile_options(/GS) - add_compile_options(/W1) - add_compile_options(/Zc:inline) - add_compile_options(/fp:precise) - add_compile_options(/EHsc) - - set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /LARGEADDRESSAWARE") # can handle addresses larger than 2 gigabytes - set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /DEBUG") - set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /INCREMENTAL:NO") - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /DEBUG /PDBCOMPRESS") - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /STACK:1572864") - - set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /guard:cf") - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /guard:cf") - - # Debug build specific flags - set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "/NOVCFEATURE") - - # Release build specific flags - set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE} /DEBUG /OPT:REF /OPT:ICF") - set(CMAKE_STATIC_LINKER_FLAGS_RELEASE "${CMAKE_STATIC_LINKER_FLAGS_RELEASE} /DEBUG /OPT:REF /OPT:ICF") - set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /DEBUG /OPT:REF /OPT:ICF") - set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:libucrt.lib /DEFAULTLIB:ucrt.lib") - set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:libucrt.lib /DEFAULTLIB:ucrt.lib") - - # RelWithDebInfo specific flags - set(CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO} /DEBUG /OPT:REF /OPT:ICF") - set(CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO} /DEBUG /OPT:REF /OPT:ICF") - set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO} /DEBUG /OPT:REF /OPT:ICF") - set(CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO} /NODEFAULTLIB:libucrt.lib /DEFAULTLIB:ucrt.lib") - set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO} /NODEFAULTLIB:libucrt.lib /DEFAULTLIB:ucrt.lib") -else() - add_compile_options(-Wno-unused-local-typedef) -endif() - -# Older CMake doesn't support CMAKE_CXX_STANDARD and GCC/Clang need a switch to enable C++ 11 -if(${CMAKE_CXX_COMPILER_ID} MATCHES "(Clang|GNU)") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") -endif() - -# This is required to map a symbol reference to a matching definition local to the module (.so) -# containing the reference instead of using definitions from other modules. -if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") - set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Xlinker -Bsymbolic -Bsymbolic-functions") - set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--build-id=sha1") - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--build-id=sha1") - add_compile_options(-fstack-protector-strong) -elseif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") - add_compile_options(-fstack-protector) -endif() - -add_definitions(-D_NO_ASYNCRTIMP) -add_definitions(-D_NO_PPLXIMP) -if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") - add_definitions(-D__LINUX__) -endif() - -if(CLI_CMAKE_PLATFORM_ARCH_I386) - add_definitions(-D_TARGET_X86_=1) -elseif(CLI_CMAKE_PLATFORM_ARCH_AMD64) - add_definitions(-D_TARGET_AMD64_=1) -elseif(CLI_CMAKE_PLATFORM_ARCH_ARM) - add_definitions(-D_TARGET_ARM_=1) -elseif(CLI_CMAKE_PLATFORM_ARCH_ARM64) - add_definitions(-D_TARGET_ARM64_=1) - if(WIN32) - set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /MACHINE:arm64") - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /MACHINE:arm64") - endif() -else() - message(FATAL_ERROR "Unknown target architecture") -endif() - -# Specify the Windows SDK to be used for Arm builds -if (WIN32 AND CLI_CMAKE_PLATFORM_ARCH_ARM) - if(NOT DEFINED CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION OR CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION STREQUAL "" ) - message(FATAL_ERROR "Windows SDK is required for the Arm32 build.") - else() - message("Using Windows SDK version ${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION}") - endif() -endif () - if (CLI_CMAKE_PORTABLE_BUILD) add_definitions(-DFEATURE_PORTABLE_BUILD=1) endif () diff --git a/src/pkg/packages.builds b/src/pkg/packages.builds index c9b666d6..8dcb242c 100644 --- a/src/pkg/packages.builds +++ b/src/pkg/packages.builds @@ -10,6 +10,7 @@ + $(AdditionalProperties) diff --git a/src/pkg/projects/Microsoft.NET.CoreRuntime/AppxManifest.xml.template b/src/pkg/projects/Microsoft.NET.CoreRuntime/AppxManifest.xml.template new file mode 100644 index 00000000..c81f9662 --- /dev/null +++ b/src/pkg/projects/Microsoft.NET.CoreRuntime/AppxManifest.xml.template @@ -0,0 +1,28 @@ + + + + + + true + [AppxDisplayName] + Microsoft Corporation + Microsoft .Net Core Runtime Package for Universal Windows Applications + logo.png + + + + + + + + diff --git a/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds b/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds new file mode 100644 index 00000000..f6a940a6 --- /dev/null +++ b/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds @@ -0,0 +1,14 @@ + + + + + false + + + + + + + + + diff --git a/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj b/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj new file mode 100644 index 00000000..cb4e4534 --- /dev/null +++ b/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj @@ -0,0 +1,80 @@ + + + + + false + UAP,Version=v10.1 + uap10.1 + win10-$(Platform) + + $(MSBuildProjectDirectory)\AppxManifest.xml.template + $(IntermediateOutputPath)AppxManifest.xml + + Microsoft.NET.CoreRuntime + Microsoft.NET.CoreRuntime.$(MajorVersion).$(MinorVersion) + Microsoft.NET.CoreRuntime.$(MajorVersion).$(MinorVersion) + + + $(IntermediateOutputPath)$(AppxIdentityName) + $(IntermediateOutputPath)$(AppxIdentityName) + + + $(UWPOutputDir)$(AppxIdentityName).appx + + + true + true + + + + + + + + $(PlatformPackageVersion) + + + + + $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/pkg/projects/Microsoft.NET.CoreRuntime/dir.props b/src/pkg/projects/Microsoft.NET.CoreRuntime/dir.props new file mode 100644 index 00000000..04e9cd8b --- /dev/null +++ b/src/pkg/projects/Microsoft.NET.CoreRuntime/dir.props @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/src/pkg/projects/Microsoft.NET.CoreRuntime/logo.png b/src/pkg/projects/Microsoft.NET.CoreRuntime/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..3bf0d316bb3100d538fb658c7e254d80dfdbb492 GIT binary patch literal 515 zcmV+e0{s1nP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!~g&e!~vBn4jTXf0hmcdK~y+TWBd;U z3={w+3iN`t4!i-3urM$yTF4+Gr4Dx1r`Jyzj&ug2_^!fg7MRcYpON7a8wbPEgRxLP z&;*cXSA7+@h9_@6Gu(aris8tFIItK<^To?A7&w@?8H6Nx7<9A*7|y)?1vZ4yv~aS2Mgl@tJ|=>mLRt0ZxW{oOc-Ru5Sd( z2dT~l)86VV3{3xC{RV4B1|ZF^-n?UY!To^Yzk?vdQ-Mct%^-E(lhqksJ3#a>%K6rU z6Oy@|HN%%LKfr>|9zSMy|N0e!vX(Bx-D{V@VlWrlrY>RNRaaq;wgk2jAQ_H~4UHQNR)VqjI{1hap?g@jYW^S=zqTjC)GfCRK6 zTEP+$3Tj{)rWxinTZaWOCWG96X4Ghe%aFks_@qp+3jh>sm@?_Y`|kh%002ovPDHLk FV1n;j+) + else() + get_property(strip_source_file TARGET ${targetName} PROPERTY LOCATION) + endif() + + if(CMAKE_SYSTEM_NAME STREQUAL Darwin) + set(strip_destination_file ${strip_source_file}.dwarf) + + add_custom_command( + TARGET ${targetName} + POST_BUILD + VERBATIM + COMMAND ${DSYMUTIL} --flat --minimize ${strip_source_file} + COMMAND ${STRIP} -u -r ${strip_source_file} + COMMENT Stripping symbols from ${strip_source_file} into file ${strip_destination_file} + ) + else(CMAKE_SYSTEM_NAME STREQUAL Darwin) + set(strip_destination_file ${strip_source_file}.dbg) + + add_custom_command( + TARGET ${targetName} + POST_BUILD + VERBATIM + COMMAND ${OBJCOPY} --only-keep-debug ${strip_source_file} ${strip_destination_file} + COMMAND ${OBJCOPY} --strip-unneeded ${strip_source_file} + COMMAND ${OBJCOPY} --add-gnu-debuglink=${strip_destination_file} ${strip_source_file} + COMMENT Stripping symbols from ${strip_source_file} into file ${strip_destination_file} + ) + endif(CMAKE_SYSTEM_NAME STREQUAL Darwin) + + set(${outputFilename} ${strip_destination_file} PARENT_SCOPE) + endif(STRIP_SYMBOLS) + endif(CLR_CMAKE_PLATFORM_UNIX) +endfunction() + +function(install_library_and_symbols targetName) + strip_symbols(${targetName} strip_destination_file) + + # On the older version of cmake (2.8.12) used on Ubuntu 14.04 the TARGET_FILE + # generator expression doesn't work correctly returning the wrong path and on + # the newer cmake versions the LOCATION property isn't supported anymore. + if(CMAKE_VERSION VERSION_EQUAL 3.0 OR CMAKE_VERSION VERSION_GREATER 3.0) + set(install_source_file $) + else() + get_property(install_source_file TARGET ${targetName} PROPERTY LOCATION) + endif() + + install(PROGRAMS ${install_source_file} DESTINATION .) + if(WIN32) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/$/${targetName}.pdb DESTINATION PDB) + else() + install(FILES ${strip_destination_file} DESTINATION .) + endif() +endfunction() + +if(WIN32) + add_definitions(-DWIN32) + add_definitions(-D_WIN32=1) + if(IS_64BIT_BUILD) + add_definitions(-D_WIN64=1) + endif() + add_compile_options($<$:-DDEBUG>) + add_compile_options($<$:-DNDEBUG>) + add_compile_options($<$:-DNDEBUG>) + add_compile_options($<$:/Od>) + add_compile_options(/guard:cf) + add_compile_options(/d2Zi+) # make optimized builds debugging easier + add_compile_options(/Oi) # enable intrinsics + add_compile_options(/Oy-) # disable suppressing of the creation of frame pointers on the call stack for quicker function calls + add_compile_options(/GF) # enable read-only string pooling + add_compile_options(/FC) # use full pathnames in diagnostics + add_compile_options(/DEBUG) + add_compile_options(/GS) + add_compile_options(/W1) + add_compile_options(/Zc:inline) + add_compile_options(/fp:precise) + add_compile_options(/EHsc) + + set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /LARGEADDRESSAWARE") # can handle addresses larger than 2 gigabytes + set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /DEBUG") + set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /INCREMENTAL:NO") + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /DEBUG /PDBCOMPRESS") + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /STACK:1572864") + + set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /guard:cf") + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /guard:cf") + + # Debug build specific flags + set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "/NOVCFEATURE") + + # Release build specific flags + set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE} /DEBUG /OPT:REF /OPT:ICF") + set(CMAKE_STATIC_LINKER_FLAGS_RELEASE "${CMAKE_STATIC_LINKER_FLAGS_RELEASE} /DEBUG /OPT:REF /OPT:ICF") + set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /DEBUG /OPT:REF /OPT:ICF") + set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:libucrt.lib /DEFAULTLIB:ucrt.lib") + set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /NODEFAULTLIB:libucrt.lib /DEFAULTLIB:ucrt.lib") + + # RelWithDebInfo specific flags + set(CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO} /DEBUG /OPT:REF /OPT:ICF") + set(CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO} /DEBUG /OPT:REF /OPT:ICF") + set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO} /DEBUG /OPT:REF /OPT:ICF") + set(CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO} /NODEFAULTLIB:libucrt.lib /DEFAULTLIB:ucrt.lib") + set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO} /NODEFAULTLIB:libucrt.lib /DEFAULTLIB:ucrt.lib") +else() + add_compile_options(-Wno-unused-local-typedef) +endif() + +# Older CMake doesn't support CMAKE_CXX_STANDARD and GCC/Clang need a switch to enable C++ 11 +if(${CMAKE_CXX_COMPILER_ID} MATCHES "(Clang|GNU)") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") +endif() + +# This is required to map a symbol reference to a matching definition local to the module (.so) +# containing the reference instead of using definitions from other modules. +if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") + set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Xlinker -Bsymbolic -Bsymbolic-functions") + set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--build-id=sha1") + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--build-id=sha1") + add_compile_options(-fstack-protector-strong) +elseif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") + add_compile_options(-fstack-protector) +endif() + +add_definitions(-D_NO_ASYNCRTIMP) +add_definitions(-D_NO_PPLXIMP) +if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") + add_definitions(-D__LINUX__) +endif() + +if(CLI_CMAKE_PLATFORM_ARCH_I386) + add_definitions(-D_TARGET_X86_=1) +elseif(CLI_CMAKE_PLATFORM_ARCH_AMD64) + add_definitions(-D_TARGET_AMD64_=1) +elseif(CLI_CMAKE_PLATFORM_ARCH_ARM) + add_definitions(-D_TARGET_ARM_=1) +elseif(CLI_CMAKE_PLATFORM_ARCH_ARM64) + add_definitions(-D_TARGET_ARM64_=1) + if(WIN32) + set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /MACHINE:arm64") + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /MACHINE:arm64") + endif() +else() + message(FATAL_ERROR "Unknown target architecture") +endif() + +# Specify the Windows SDK to be used for Arm builds +if (WIN32 AND CLI_CMAKE_PLATFORM_ARCH_ARM) + if(NOT DEFINED CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION OR CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION STREQUAL "" ) + message(FATAL_ERROR "Windows SDK is required for the Arm32 build.") + else() + message("Using Windows SDK version ${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION}") + endif() +endif () \ No newline at end of file diff --git a/src/src.builds b/src/src.builds index f1a5bd9f..db8e7155 100644 --- a/src/src.builds +++ b/src/src.builds @@ -9,6 +9,7 @@ + diff --git a/src/uwp/CMakeLists.txt b/src/uwp/CMakeLists.txt new file mode 100644 index 00000000..7586cb45 --- /dev/null +++ b/src/uwp/CMakeLists.txt @@ -0,0 +1,9 @@ +# Copyright (c) .NET Foundation and contributors. All rights reserved. +# Licensed under the MIT license. See LICENSE file in the project root for full license information. + +include(../settings.cmake) + +add_definitions(-DUNICODE) +add_definitions(-D_UNICODE) +add_subdirectory(Host) +add_subdirectory(CopyWin32Resources) diff --git a/src/uwp/CopyWin32Resources/CMakeLists.txt b/src/uwp/CopyWin32Resources/CMakeLists.txt new file mode 100644 index 00000000..928cd570 --- /dev/null +++ b/src/uwp/CopyWin32Resources/CMakeLists.txt @@ -0,0 +1,12 @@ +include_directories("${CLI_CMAKE_RESOURCE_DIR}/copywin32resources") + +add_executable(CopyWin32Resources + CopyWin32Resources.cpp + native.rc +) + +target_link_libraries(CopyWin32Resources + imagehlp.lib +) + +install(FILES $ DESTINATION .) \ No newline at end of file diff --git a/src/uwp/CopyWin32Resources/CopyWin32Resources.cpp b/src/uwp/CopyWin32Resources/CopyWin32Resources.cpp new file mode 100644 index 00000000..85f4552b --- /dev/null +++ b/src/uwp/CopyWin32Resources/CopyWin32Resources.cpp @@ -0,0 +1,313 @@ +// +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. +// + +#include +#include +#include +#include +#include +#include +#include +#include + +// Declare callback functions. +BOOL EnumTypesFunc( + HMODULE hModule, + _In_z_ LPTSTR lpType, + LONG_PTR lParam); + +BOOL EnumNamesFunc( + HMODULE hModule, + _In_z_ LPCTSTR lpType, + _In_z_ LPTSTR lpName, + LONG_PTR lParam); + +BOOL EnumLangsFunc( + HMODULE hModule, + _In_z_ LPCTSTR lpType, + _In_z_ LPCTSTR lpName, + WORD wLang, + LONG_PTR lParam); + +const wchar_t* input_format = L"/input:"; +const wchar_t* output_format = L"/output:"; +const size_t input_format_size = wcslen(input_format); +const size_t output_format_size = wcslen(output_format); + +enum ACTION { + eInsert, + eRemove, +}; + +typedef struct { + HANDLE handle; + ACTION action; +} EnumResourceCallbackParam, *pEnumResourceCallbackParam; + + +int CopyWin32Resources(_In_z_ LPWSTR inputFile, _In_z_ LPWSTR destFile); + + +int __cdecl wmain(int argc, _In_reads_(argc) wchar_t* argv[]) +{ + wprintf(L"Copyright (c) Microsoft Corporation. All rights reserved."); + wchar_t *copyFrom = 0, *copyTo = 0; + + while (--argc) + { + argv++; + if (!wcsncmp(*argv, input_format, input_format_size)) + { + copyFrom = *argv + input_format_size; + } + else if (!wcsncmp(*argv, output_format, output_format_size)) + { + copyTo = *argv + output_format_size; + } + else + { + return 90; + } + } + + return CopyWin32Resources(copyFrom, copyTo); +} + +int DeleteCertificates(_In_z_ LPWSTR fileName) +{ + HANDLE hFile = CreateFile(fileName, + FILE_GENERIC_READ | FILE_GENERIC_WRITE, + 0, + NULL, + OPEN_EXISTING, + 0, + NULL + ); + + if (hFile == INVALID_HANDLE_VALUE) + { + return 701; + } + + DWORD certificateCount; + DWORD *certificateIndices; + + if (!ImageEnumerateCertificates(hFile, + CERT_SECTION_TYPE_ANY, + &certificateCount, + NULL, + 0 + )) + { + CloseHandle(hFile); + return 702; + } + + if (certificateCount == 0) + { + CloseHandle(hFile); + return 0; + } + certificateIndices = new (std::nothrow) DWORD[certificateCount]; + + if (certificateIndices == NULL) + { + CloseHandle(hFile); + return 703; + } + + ImageEnumerateCertificates(hFile, + CERT_SECTION_TYPE_ANY, + &certificateCount, + certificateIndices, + certificateCount + ); + + if (certificateCount == 0) + { + CloseHandle(hFile); + return 704; + } + + for (DWORD i=0; iaction == eInsert) + { + // Lock the resource box into global memory. + lpResLock = LockResource(hResLoad); + if (lpResLock == NULL) + { + return FALSE; + } + } + + + result = UpdateResource(pCallbackParam->handle, // update resource handle + lpType, + lpName, + wLang, + lpResLock, // ptr to resource info + (pCallbackParam->action == eRemove) ? 0 : SizeofResource(hModule, hRes) // size of resource info + ); + + if (result == FALSE) + { + return FALSE; + } + return TRUE; +} diff --git a/src/uwp/CopyWin32Resources/native.rc b/src/uwp/CopyWin32Resources/native.rc new file mode 100644 index 00000000..62aa3957 --- /dev/null +++ b/src/uwp/CopyWin32Resources/native.rc @@ -0,0 +1,40 @@ +#include "version_info.h" + +VS_VERSION_INFO VERSIONINFO +FILEVERSION VER_FILEVERSION +PRODUCTVERSION VER_PRODUCTVERSION +FILEFLAGSMASK VS_FFI_FILEFLAGSMASK +FILEFLAGS VER_DEBUG +FILEOS VOS__WINDOWS32 +FILETYPE VFT_DLL +FILESUBTYPE VFT2_UNKNOWN +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904E4" + BEGIN + VALUE "CompanyName", VER_COMPANYNAME_STR + VALUE "FileDescription", VER_FILEDESCRIPTION_STR + VALUE "FileVersion", VER_FILEVERSION_STR + VALUE "InternalName", VER_INTERNALNAME_STR + VALUE "LegalCopyright", VER_LEGALCOPYRIGHT_STR + VALUE "OriginalFilename", VER_ORIGINALFILENAME_STR + VALUE "ProductName", VER_PRODUCTNAME_STR + VALUE "ProductVersion", VER_PRODUCTVERSION_STR + END + END + + BLOCK "VarFileInfo" + BEGIN + /* The following line should only be modified for localized versions. */ + /* It consists of any number of WORD,WORD pairs, with each pair */ + /* describing a language,codepage combination supported by the file. */ + /* */ + /* For example, a file might have values "0x409,1252" indicating that it */ + /* supports English language (0x409) in the Windows ANSI codepage (1252). */ + + VALUE "Translation", 0x409, 1252 + + END +END + diff --git a/src/uwp/Host/CMakeLists.txt b/src/uwp/Host/CMakeLists.txt new file mode 100644 index 00000000..f180f129 --- /dev/null +++ b/src/uwp/Host/CMakeLists.txt @@ -0,0 +1,2 @@ +add_subdirectory(UWPHost) +add_subdirectory(UWPShim) diff --git a/src/uwp/Host/UWPHost/CMakeLists.txt b/src/uwp/Host/UWPHost/CMakeLists.txt new file mode 100644 index 00000000..2d7862d1 --- /dev/null +++ b/src/uwp/Host/UWPHost/CMakeLists.txt @@ -0,0 +1,23 @@ +include_directories("${CLI_CMAKE_RESOURCE_DIR}/uwphost") + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(UWPHost_SOURCES + UWPHost.cpp + HostEnvironment.cpp + UWPHost.def +) + +set(UWPHost_RESOURCES native.rc) + +add_library(UWPHost + SHARED + ${UWPHost_SOURCES} + ${UWPHost_RESOURCES} +) + +target_link_libraries(UWPHost + onecore.lib +) + +install(TARGETS UWPHost RUNTIME DESTINATION .) diff --git a/src/uwp/Host/UWPHost/HostEnvironment.cpp b/src/uwp/Host/UWPHost/HostEnvironment.cpp new file mode 100644 index 00000000..b464245a --- /dev/null +++ b/src/uwp/Host/UWPHost/HostEnvironment.cpp @@ -0,0 +1,251 @@ +// +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. +// + + +// +// CoreCLR Host that is used in activating CoreCLR in +// UWP apps' F5/development time scenarios +// + +#include "windows.h" +#include "HostEnvironment.h" + +// This should ideally come from WINDOWS SDK header but is missing in earlier versions +#ifndef PACKAGE_FILTER_IS_IN_RELATED_SET +#define PACKAGE_FILTER_IS_IN_RELATED_SET 0x40000 +#endif + + +HRESULT HostEnvironment::TryLoadCoreCLR() { + + m_coreCLRModule = ::LoadLibraryEx(coreCLRDll, NULL, 0); + if (!m_coreCLRModule) { + return HRESULT_FROM_WIN32(GetLastError()); + } + + // Pin the module - CoreCLR.dll does not support being unloaded. + // N.B.: HostEnvironment is not calling ::FreeLibrary on this loaded module since we're pinning it anyway. + // If unloading CoreCLR is ever supported and the pinning below is to be removed please make sure that + // the ::FreeLibrary is called appropriately. + HMODULE dummy_coreCLRModule; + if (!::GetModuleHandleExW(GET_MODULE_HANDLE_EX_FLAG_PIN, coreCLRDll, &dummy_coreCLRModule)) + { + return HRESULT_FROM_WIN32(GetLastError()); + } + + if (!GetModuleFileNameW(m_coreCLRModule, m_coreCLRInstallDirectory, MAX_PATH)) + { + return HRESULT_FROM_WIN32(GetLastError()); + } + // Find out where the last backslash is, and trim the path to get the directory containing coreclr.dll + wchar_t *lastBackSlash = wcsrchr(m_coreCLRInstallDirectory, L'\\'); + if (lastBackSlash != nullptr) + { + *(lastBackSlash+1) = L'\0'; + } + else + { + memset(m_coreCLRInstallDirectory, 0, MAX_PATH * sizeof(wchar_t)); + return E_FAIL; + } + + return S_OK; +} + + +HRESULT HostEnvironment::Initialize() +{ + HRESULT hr = S_OK; + // + // Get the package root. + // This is also our check for the App to be an AppX app. + // TODO: Not all AppX apps are UWP apps. Add validation for UWP apps. + // + UINT32 length = 0; + LONG rc = GetCurrentPackagePath(&length, NULL); + if (rc != ERROR_INSUFFICIENT_BUFFER) + { + return HRESULT_FROM_WIN32(rc); + } + + m_packageRoot = (PWSTR) malloc(length * sizeof(*m_packageRoot)); + if (m_packageRoot == NULL) + { + return E_FAIL; + } + + // Get the actual path to the package root from the path to the current module. + rc = GetCurrentPackagePath(&length, m_packageRoot); + IfFailWin32Ret(rc); + + m_fIsAppXPackage = true; + + // + // Query the package full name + // + length = 0; + rc = GetCurrentPackageFullName(&length, NULL); + if (rc != ERROR_INSUFFICIENT_BUFFER) + { + return HRESULT_FROM_WIN32(rc); + } + + m_currentPackageFullName = (PWSTR) malloc(length * sizeof(*m_currentPackageFullName)); + if (m_currentPackageFullName == NULL) + { + return HRESULT_FROM_WIN32(rc); + } + + rc = GetCurrentPackageFullName(&length, m_currentPackageFullName); + IfFailWin32Ret(rc); + + // Try to load CoreCLR + IfFailRet(TryLoadCoreCLR()); + + + PACKAGE_INFO_REFERENCE packageInfoReference = {0}; + rc = OpenPackageInfoByFullName(m_currentPackageFullName, 0 , &packageInfoReference); + IfFailWin32Ret(rc); + + length = 0; + rc = GetPackageInfo(packageInfoReference, PACKAGE_FILTER_DIRECT|PACKAGE_FILTER_IS_IN_RELATED_SET, &length, NULL, &m_dependentPackagesCount); + IfFalseWin32Goto(rc == ERROR_INSUFFICIENT_BUFFER, rc, ErrExit2); + + BYTE* buffer = (BYTE *) malloc(length); + IfFalseGoto(buffer != NULL, E_FAIL, ErrExit2); + + m_dependentPackagesRootPaths = (wchar_t**) malloc(m_dependentPackagesCount * sizeof(wchar_t*)); + IfFalseGo(m_dependentPackagesRootPaths != NULL, E_FAIL); + memset(m_dependentPackagesRootPaths, 0, m_dependentPackagesCount * sizeof(wchar_t*)); + + rc = GetPackageInfo(packageInfoReference, PACKAGE_FILTER_DIRECT|PACKAGE_FILTER_IS_IN_RELATED_SET, &length, buffer, &m_dependentPackagesCount); + IfFailWin32Go(rc); + + const PACKAGE_INFO *packageInfo = (PACKAGE_INFO *) buffer; + for (UINT32 i=0; ipackageFullName, &length, NULL); + IfFalseWin32Go(rc == ERROR_INSUFFICIENT_BUFFER, rc); + + // +1 below is to append a '\' at the end of the string if it's not already ending with one. + m_dependentPackagesRootPaths[i] = (wchar_t*) malloc((length+1) * sizeof(wchar_t)); + IfFalseGo(m_dependentPackagesRootPaths[i] != NULL, E_FAIL); + + rc = GetPackagePathByFullName(packageInfo->packageFullName, &length, m_dependentPackagesRootPaths[i]); + IfFailWin32Go(rc); + + // Note: length includes the null-terminator. So the last char is at index (length-2) + wchar_t* lastBackslash = wcsrchr(m_dependentPackagesRootPaths[i], L'\\'); + if ((lastBackslash != nullptr) && ((UINT32)(lastBackslash - m_dependentPackagesRootPaths[i] + 1) != length - 2)) + { + wcsncat_s(m_dependentPackagesRootPaths[i], length+1, L"\\", 1); + } + } + + + return S_OK; + +ErrExit: + free(buffer); +ErrExit2: + ClosePackageInfo(packageInfoReference); + return hr; +} + +HostEnvironment::HostEnvironment() + : m_CLRRuntimeHost(nullptr), m_coreCLRModule(NULL), m_fIsAppXPackage(false), + m_dependentPackagesRootPaths(NULL), m_dependentPackagesCount(0) +{ +} + +HostEnvironment::~HostEnvironment() +{ + if (m_packageRoot) + { + free(m_packageRoot); + m_packageRoot = NULL; + } + if (m_dependentPackagesCount > 0 && m_dependentPackagesRootPaths != NULL) + { + for (UINT32 i=0;i +#include "mscoree.h" +#include "appmodel.h" +#ifdef _DEBUG +#include "assert.h" +#define _ASSERTE assert +#endif + +// Some useful macros +#ifndef IfFailGoto +#define IfFailGoto(EXPR, LABEL) \ +do { hr = (EXPR); if(FAILED(hr)) { goto LABEL; } } while (0) +#endif + +#ifndef IfFailRet +#define IfFailRet(EXPR) \ +do { hr = (EXPR); if(FAILED(hr)) { return (hr); } } while (0) +#endif + +#ifndef IfFailWin32Ret +#define IfFailWin32Ret(EXPR) \ +do { hr = (EXPR); if(hr != ERROR_SUCCESS) { hr = HRESULT_FROM_WIN32(hr); return hr;} } while (0) +#endif + +#ifndef IfFailWin32Goto +#define IfFailWin32Goto(EXPR, LABEL) \ +do { hr = (EXPR); if(hr != ERROR_SUCCESS) { hr = HRESULT_FROM_WIN32(hr); goto LABEL; } } while (0) +#endif + +#ifndef IfFalseWin32Goto +#define IfFalseWin32Goto(EXPR1, EXPR2, LABEL) \ +do { if (TRUE != (EXPR1)) { IfFailWin32Goto(EXPR2, LABEL); } } while (0) +#endif + +#ifndef IfFalseGoto +#define IfFalseGoto(EXPR1, EXPR2, LABEL) \ +do { if (TRUE != (EXPR1)) { IfFailGoto(EXPR2, LABEL); } } while (0) +#endif + +#ifndef IfFailGo +#define IfFailGo(EXPR) IfFailGoto(EXPR, ErrExit) +#endif + +#ifndef IfFailWin32Go +#define IfFailWin32Go(EXPR) IfFailWin32Goto(EXPR, ErrExit) +#endif + +#ifndef IfFalseWin32Go +#define IfFalseWin32Go(EXPR1, EXPR2) IfFalseWin32Goto(EXPR1, EXPR2, ErrExit) +#endif + +#ifndef IfFalseGo +#define IfFalseGo(EXPR1, EXPR2) IfFalseGoto(EXPR1, EXPR2, ErrExit) +#endif +// ---- + + +// The name of the CoreCLR native runtime DLL. +static wchar_t *coreCLRDll = L"CoreCLR.dll"; +#ifdef _DEBUG +static wchar_t *coreRuntimePackageFullNamePrefix = L"Microsoft.NET.CoreRuntime"; +#endif + +// Dynamically expanding string buffer to hold TPA list +class StringBuffer { + wchar_t* m_buffer; + size_t m_capacity; + size_t m_length; + + StringBuffer(const StringBuffer&); + StringBuffer& operator =(const StringBuffer&); + +public: + StringBuffer() : m_capacity(0), m_buffer(0), m_length(0) { + } + + ~StringBuffer() { + delete[] m_buffer; + } + + const wchar_t* CStr() const { + return m_buffer; + } + + void Append(const wchar_t* str, size_t strLen) { + if (!m_buffer) { + m_buffer = new wchar_t[4096]; + m_capacity = 4096; + } + if (m_length + strLen + 1 > m_capacity) { + size_t newCapacity = m_capacity * 2; + wchar_t* newBuffer = new wchar_t[newCapacity]; + wcsncpy_s(newBuffer, newCapacity, m_buffer, m_length); + delete[] m_buffer; + m_buffer = newBuffer; + m_capacity = newCapacity; + } + wcsncpy_s(m_buffer + m_length, m_capacity - m_length, str, strLen); + m_length += strLen; + } +}; + + +class HostEnvironment +{ + +private: + + + StringBuffer m_tpaList; + + StringBuffer m_appPaths; + wchar_t** m_dependentPackagesRootPaths; + UINT32 m_dependentPackagesCount; + + ICLRRuntimeHost2* m_CLRRuntimeHost; + + HMODULE m_coreCLRModule; + + bool m_fIsAppXPackage; + + // AppX package path + wchar_t * m_packageRoot; + + wchar_t *m_currentPackageFullName; + wchar_t m_coreCLRInstallDirectory[MAX_PATH]; + + // Attempts to load CoreCLR.dll + // On success pins the dll and returns the HMODULE. + // On failure returns nullptr. + HRESULT TryLoadCoreCLR(); + + void InitializeTPAList(_In_reads_(tpaEntriesCount) wchar_t** tpaEntries, int tpaEntriesCount); +public: + + HRESULT Initialize(); + + bool CanDebugUWPApps() + { + // Combine with development mode flag + return m_fIsAppXPackage /* && m_fIsInDevelopmentMode */; + } + + bool IsCoreCLRLoaded() + { + return (m_coreCLRModule != NULL); + } + + PWSTR GetPackageRoot() + { + return m_packageRoot; + } + + wchar_t* GetCoreCLRInstallPath() + { + return m_coreCLRInstallDirectory; + } + + + HostEnvironment(); + + ~HostEnvironment(); + + // Returns the semicolon-separated list of paths to runtime dlls that are considered trusted. + // On first call, scans the coreclr directory for dlls and adds them all to the list. + const wchar_t * GetTpaList() + { + if (!m_tpaList.CStr()) + { + wchar_t *tpaEntries[] = {L"System.Private.CoreLib.ni.dll", L"mscorlib.ni.dll"}; + InitializeTPAList(tpaEntries, _countof(tpaEntries)); + } + + return m_tpaList.CStr(); + } + + const wchar_t * GetAppPaths() + { + if (!m_appPaths.CStr()) + { + m_appPaths.Append(m_packageRoot, wcslen(m_packageRoot)); + m_appPaths.Append(L"\\entrypoint;", wcslen(L"\\entrypoint;")); + m_appPaths.Append(m_packageRoot, wcslen(m_packageRoot)); + m_appPaths.Append(L";",1); + for (UINT32 i=0;i +#include +#include "UWPHost.h" + +const DWORD DefaultADID = 1; + +bool UWPHost::m_Inited = false; +CRITICAL_SECTION UWPHost::m_critSec; + +extern "C" BOOLEAN WINAPI DllMain(HINSTANCE hDllHandle, DWORD nReason, LPVOID Reserved) +{ + switch (nReason) + { + case DLL_PROCESS_ATTACH: + InitializeCriticalSection(&UWPHost::m_critSec); + break; + case DLL_PROCESS_DETACH: + DeleteCriticalSection(&UWPHost::m_critSec); + break; + } + return TRUE; +} + +class CritSecHolder +{ +private: + CRITICAL_SECTION* value; +public: + CritSecHolder(CRITICAL_SECTION* data) + { + value = data; + EnterCriticalSection(value); + } + ~CritSecHolder() + { + LeaveCriticalSection(value); + } +}; + +HRESULT UWPHost::LoadAndStartCoreCLRRuntime() +{ + HRESULT hr = S_OK; + HostEnvironment hostEnvironment; + + IfFailRet(hostEnvironment.Initialize()); + + if (!hostEnvironment.CanDebugUWPApps()) + { + return E_FAIL; + } + + if (!hostEnvironment.IsCoreCLRLoaded()) + { + return E_FAIL; + } + + // + // Setup arguments for the runtime + // + + wchar_t *appPath = (wchar_t *)hostEnvironment.GetPackageRoot(); + wchar_t *appPaths = (wchar_t *)hostEnvironment.GetAppPaths(); + + // Construct native search directory paths + StringBuffer sbNativeDllSearchDirs; + wchar_t * coreCLRInstallPath = hostEnvironment.GetCoreCLRInstallPath(); + sbNativeDllSearchDirs.Append(coreCLRInstallPath, wcslen(coreCLRInstallPath)); + sbNativeDllSearchDirs.Append(L";", 1); + sbNativeDllSearchDirs.Append(appPaths, wcslen(appPaths)); + const wchar_t *nativeDllSearchDirs = sbNativeDllSearchDirs.CStr(); + + // Check for app local WinMetadata + wchar_t appLocalWinMetadata[MAX_PATH] = L""; + wcscpy_s(appLocalWinMetadata, appPath); + wcscat_s(appLocalWinMetadata, MAX_PATH, L"\\WinMetadata"); + DWORD dwFileAttributes = ::GetFileAttributes(appLocalWinMetadata); + bool appLocalWinMetadataExists = dwFileAttributes != INVALID_FILE_ATTRIBUTES && (dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY); + if (!appLocalWinMetadataExists) + { + memset(appLocalWinMetadata,0,MAX_PATH*sizeof(wchar_t)); + } + + // Start the CoreCLR + m_CLRRuntimeHost = hostEnvironment.GetCLRRuntimeHost(hr); + if (!m_CLRRuntimeHost) { + return hr; + } + + { + CritSecHolder guard(&UWPHost::m_critSec); + if(m_Inited) + { + return hr; + } + + // Default startup flags + hr = m_CLRRuntimeHost->SetStartupFlags((STARTUP_FLAGS) + (STARTUP_FLAGS::STARTUP_LOADER_OPTIMIZATION_SINGLE_DOMAIN | + STARTUP_FLAGS::STARTUP_SINGLE_APPDOMAIN| + STARTUP_FLAGS::STARTUP_CONCURRENT_GC| + STARTUP_FLAGS::STARTUP_APPX_APP_MODEL) + ); + + // + // Authenticate with either + // CORECLR_HOST_AUTHENTICATION_KEY or + // CORECLR_HOST_AUTHENTICATION_KEY_NONGEN + // + IfFailRet(m_CLRRuntimeHost->Authenticate(CORECLR_HOST_AUTHENTICATION_KEY)); + + IfFailRet(m_CLRRuntimeHost->Start()); + + //------------------------------------------------------------- + + // Create an AppDomain + // + // Allowed property names: + // APPBASE + // - The base path of the application from which the exe and other assemblies will be loaded + // + // TRUSTED_PLATFORM_ASSEMBLIES + // - The list of complete paths to each of the fully trusted assemblies + // + // APP_PATHS + // - The list of paths which will be probed by the assembly loader + // + // NATIVE_DLL_SEARCH_DIRECTORIES + // - The list of paths that will be probed for native DLLs called by PInvoke + // + // APP_NI_PATHS + // - The list of paths which will be probed for NGEN images by the assembly loader + // + // PLATFORM_RESOURCE_ROOTS + // - The list of paths which will be probed for loading the satellite assemblies + // + // APP_LOCAL_WINMETADATA + // - The path where the app-local .winmd file can be found. + // + // N.B.: that we're not passing APP_NI_PATHS, since UWP F5 is not expected to have native images and + // relying on the following **ASSUMPTION**: + // fallback is supposed to have the native images in the app package root, + // and as with the same assembly file name of the IL image + // + const wchar_t *property_keys[] = { + L"TRUSTED_PLATFORM_ASSEMBLIES", + L"APP_PATHS", + L"NATIVE_DLL_SEARCH_DIRECTORIES", + L"APP_LOCAL_WINMETADATA" + }; + const wchar_t *property_values[] = { + // TRUSTED_PLATFORM_ASSEMBLIES + hostEnvironment.GetTpaList(), + // APP_PATHS + appPaths, + // NATIVE_DLL_SEARCH_DIRECTORIES + nativeDllSearchDirs, + // APP_LOCAL_WINMETADATA + appLocalWinMetadata + }; + + + DWORD domainId; + + hr = m_CLRRuntimeHost->CreateAppDomainWithManager( + L"CoreCLR_UWP_Domain", // The friendly name of the AppDomain + // Flags: + // APPDOMAIN_ENABLE_PLATFORM_SPECIFIC_APPS + // - By default CoreCLR only allows platform neutral assembly to be run. To allow + // assemblies marked as platform specific, include this flag + // + // APPDOMAIN_ENABLE_PINVOKE_AND_CLASSIC_COMINTEROP + // - Allows sandboxed applications to make P/Invoke calls and use COM interop + // + // APPDOMAIN_SECURITY_SANDBOXED + // - Enables sandboxing. If not set, the app is considered full trust + // + // APPDOMAIN_IGNORE_UNHANDLED_EXCEPTION + // - Prevents the application from being torn down if a managed exception is unhandled + // + APPDOMAIN_ENABLE_PLATFORM_SPECIFIC_APPS | + APPDOMAIN_ENABLE_PINVOKE_AND_CLASSIC_COMINTEROP | + APPDOMAIN_DISABLE_TRANSPARENCY_ENFORCEMENT, + NULL, // Name of the assembly that contains the AppDomainManager implementation + NULL, // The AppDomainManager implementation type name + sizeof(property_keys)/sizeof(wchar_t*), // The number of properties + property_keys, + property_values, + &domainId); + + IfFailRet(hr); + m_Inited = true; + } + return hr; +} // End of UWPHost::LoadAndStartCoreCLRRuntime() + + +HRESULT ExecuteAssembly(_In_z_ wchar_t *entryPointAssemblyFileName, int argc, LPCWSTR* pArgv, DWORD *pExitCode) +{ + + HRESULT hr = S_OK; + + UWPHost uwpHost; + IfFailRet(uwpHost.LoadAndStartCoreCLRRuntime()); + + DWORD domainId; + ICLRRuntimeHost2 *host = uwpHost.GetCLRRuntimeHost(); + IfFailGo(host->GetCurrentAppDomainId(&domainId)); + + // Execute the assembly in question + IfFailGo(host->ExecuteAssembly(domainId, entryPointAssemblyFileName, argc, pArgv, pExitCode)); + + // Unload the AppDomain + hr = host->UnloadAppDomain( + domainId, + true); // Wait until done + + IfFailGo(hr); + + // Stop the runtime + hr = host->Stop(); + // Release the reference to the host + host->Release(); + + return hr; +ErrExit: + if (host != nullptr) + { + host->Stop(); + host->Release(); + } + return hr; +} + +HRESULT STDMETHODCALLTYPE DllGetActivationFactory(HSTRING activatableClassId, IActivationFactory** ppFactory) +{ + HRESULT hr = S_OK; + UWPHost uwpHost; + hr = uwpHost.LoadAndStartCoreCLRRuntime(); + if (FAILED(hr) && (hr != HOST_E_INVALIDOPERATION)) + { + return hr; + } + + ICLRRuntimeHost2 *host = uwpHost.GetCLRRuntimeHost(); + hr = host->DllGetActivationFactory(DefaultADID, WindowsGetStringRawBuffer(activatableClassId,NULL), ppFactory); + host->Release(); + + return hr; +} diff --git a/src/uwp/Host/UWPHost/UWPHost.def b/src/uwp/Host/UWPHost/UWPHost.def new file mode 100644 index 00000000..a45ade4d --- /dev/null +++ b/src/uwp/Host/UWPHost/UWPHost.def @@ -0,0 +1,9 @@ +; ==++== +; +; Copyright (c) Microsoft Corporation. All rights reserved. +; Licensed under the MIT license. See LICENSE file in the project root for full license information. +; ==--== +LIBRARY UWPHOST +EXPORTS + DllGetActivationFactory + ExecuteAssembly diff --git a/src/uwp/Host/UWPHost/UWPHost.h b/src/uwp/Host/UWPHost/UWPHost.h new file mode 100644 index 00000000..f144170f --- /dev/null +++ b/src/uwp/Host/UWPHost/UWPHost.h @@ -0,0 +1,36 @@ +// +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. +// + + +// +// Base class for UWP hosts WinRT and Exe hosts +// +#ifndef __UWPHOST_H__ +#define __UWPHOST_H__ +#include "HostEnvironment.h" +#include "corerror.h" + +class UWPHost +{ +private: + ICLRRuntimeHost2* m_CLRRuntimeHost; +public: + static bool m_Inited; + static CRITICAL_SECTION m_critSec; + + UWPHost() + : m_CLRRuntimeHost(nullptr) + {}; + + ICLRRuntimeHost2* GetCLRRuntimeHost() + { + return m_CLRRuntimeHost; + } + + HRESULT LoadAndStartCoreCLRRuntime(); +}; + + +#endif // __UWPHOST_H__ diff --git a/src/uwp/Host/UWPHost/mscoree.h b/src/uwp/Host/UWPHost/mscoree.h new file mode 100644 index 00000000..56f4160c --- /dev/null +++ b/src/uwp/Host/UWPHost/mscoree.h @@ -0,0 +1,2929 @@ +// +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. +// + +/* this ALWAYS GENERATED file contains the definitions for the interfaces */ + + + /* File created by MIDL compiler version 8.00.0603 */ +/* @@MIDL_FILE_HEADING( ) */ + +#pragma warning( disable: 4049 ) /* more than 64k source lines */ + + +/* verify that the version is high enough to compile this file*/ +#ifndef __REQUIRED_RPCNDR_H_VERSION__ +#define __REQUIRED_RPCNDR_H_VERSION__ 475 +#endif + +#include "rpc.h" +#include "rpcndr.h" + +#ifndef __RPCNDR_H_VERSION__ +#error this stub requires an updated version of +#endif // __RPCNDR_H_VERSION__ + +#ifndef COM_NO_WINDOWS_H +#include "windows.h" +#include "ole2.h" +#endif /*COM_NO_WINDOWS_H*/ + +#ifndef __mscoree_h__ +#define __mscoree_h__ + +#if defined(_MSC_VER) && (_MSC_VER >= 1020) +#pragma once +#endif + +/* Forward Declarations */ + +#ifndef __IDebuggerThreadControl_FWD_DEFINED__ +#define __IDebuggerThreadControl_FWD_DEFINED__ +typedef interface IDebuggerThreadControl IDebuggerThreadControl; + +#endif /* __IDebuggerThreadControl_FWD_DEFINED__ */ + + +#ifndef __IDebuggerInfo_FWD_DEFINED__ +#define __IDebuggerInfo_FWD_DEFINED__ +typedef interface IDebuggerInfo IDebuggerInfo; + +#endif /* __IDebuggerInfo_FWD_DEFINED__ */ + + +#ifndef __ICLRErrorReportingManager_FWD_DEFINED__ +#define __ICLRErrorReportingManager_FWD_DEFINED__ +typedef interface ICLRErrorReportingManager ICLRErrorReportingManager; + +#endif /* __ICLRErrorReportingManager_FWD_DEFINED__ */ + + +#ifndef __ICLRErrorReportingManager2_FWD_DEFINED__ +#define __ICLRErrorReportingManager2_FWD_DEFINED__ +typedef interface ICLRErrorReportingManager2 ICLRErrorReportingManager2; + +#endif /* __ICLRErrorReportingManager2_FWD_DEFINED__ */ + + +#ifndef __ICLRPolicyManager_FWD_DEFINED__ +#define __ICLRPolicyManager_FWD_DEFINED__ +typedef interface ICLRPolicyManager ICLRPolicyManager; + +#endif /* __ICLRPolicyManager_FWD_DEFINED__ */ + + +#ifndef __ICLRGCManager_FWD_DEFINED__ +#define __ICLRGCManager_FWD_DEFINED__ +typedef interface ICLRGCManager ICLRGCManager; + +#endif /* __ICLRGCManager_FWD_DEFINED__ */ + + +#ifndef __ICLRGCManager2_FWD_DEFINED__ +#define __ICLRGCManager2_FWD_DEFINED__ +typedef interface ICLRGCManager2 ICLRGCManager2; + +#endif /* __ICLRGCManager2_FWD_DEFINED__ */ + + +#ifndef __IHostControl_FWD_DEFINED__ +#define __IHostControl_FWD_DEFINED__ +typedef interface IHostControl IHostControl; + +#endif /* __IHostControl_FWD_DEFINED__ */ + + +#ifndef __ICLRControl_FWD_DEFINED__ +#define __ICLRControl_FWD_DEFINED__ +typedef interface ICLRControl ICLRControl; + +#endif /* __ICLRControl_FWD_DEFINED__ */ + + +#ifndef __ICLRRuntimeHost_FWD_DEFINED__ +#define __ICLRRuntimeHost_FWD_DEFINED__ +typedef interface ICLRRuntimeHost ICLRRuntimeHost; + +#endif /* __ICLRRuntimeHost_FWD_DEFINED__ */ + + +#ifndef __ICLRRuntimeHost2_FWD_DEFINED__ +#define __ICLRRuntimeHost2_FWD_DEFINED__ +typedef interface ICLRRuntimeHost2 ICLRRuntimeHost2; + +#endif /* __ICLRRuntimeHost2_FWD_DEFINED__ */ + + +#ifndef __ICLRExecutionManager_FWD_DEFINED__ +#define __ICLRExecutionManager_FWD_DEFINED__ +typedef interface ICLRExecutionManager ICLRExecutionManager; + +#endif /* __ICLRExecutionManager_FWD_DEFINED__ */ + + +#ifndef __IHostNetCFDebugControlManager_FWD_DEFINED__ +#define __IHostNetCFDebugControlManager_FWD_DEFINED__ +typedef interface IHostNetCFDebugControlManager IHostNetCFDebugControlManager; + +#endif /* __IHostNetCFDebugControlManager_FWD_DEFINED__ */ + + +#ifndef __ITypeName_FWD_DEFINED__ +#define __ITypeName_FWD_DEFINED__ +typedef interface ITypeName ITypeName; + +#endif /* __ITypeName_FWD_DEFINED__ */ + + +#ifndef __ITypeNameBuilder_FWD_DEFINED__ +#define __ITypeNameBuilder_FWD_DEFINED__ +typedef interface ITypeNameBuilder ITypeNameBuilder; + +#endif /* __ITypeNameBuilder_FWD_DEFINED__ */ + + +#ifndef __ITypeNameFactory_FWD_DEFINED__ +#define __ITypeNameFactory_FWD_DEFINED__ +typedef interface ITypeNameFactory ITypeNameFactory; + +#endif /* __ITypeNameFactory_FWD_DEFINED__ */ + + +#ifndef __IManagedObject_FWD_DEFINED__ +#define __IManagedObject_FWD_DEFINED__ +typedef interface IManagedObject IManagedObject; + +#endif /* __IManagedObject_FWD_DEFINED__ */ + + +#ifndef __ComCallUnmarshal_FWD_DEFINED__ +#define __ComCallUnmarshal_FWD_DEFINED__ + +#ifdef __cplusplus +typedef class ComCallUnmarshal ComCallUnmarshal; +#else +typedef struct ComCallUnmarshal ComCallUnmarshal; +#endif /* __cplusplus */ + +#endif /* __ComCallUnmarshal_FWD_DEFINED__ */ + + +#ifndef __ComCallUnmarshalV4_FWD_DEFINED__ +#define __ComCallUnmarshalV4_FWD_DEFINED__ + +#ifdef __cplusplus +typedef class ComCallUnmarshalV4 ComCallUnmarshalV4; +#else +typedef struct ComCallUnmarshalV4 ComCallUnmarshalV4; +#endif /* __cplusplus */ + +#endif /* __ComCallUnmarshalV4_FWD_DEFINED__ */ + + +#ifndef __CLRRuntimeHost_FWD_DEFINED__ +#define __CLRRuntimeHost_FWD_DEFINED__ + +#ifdef __cplusplus +typedef class CLRRuntimeHost CLRRuntimeHost; +#else +typedef struct CLRRuntimeHost CLRRuntimeHost; +#endif /* __cplusplus */ + +#endif /* __CLRRuntimeHost_FWD_DEFINED__ */ + + +#ifndef __TypeNameFactory_FWD_DEFINED__ +#define __TypeNameFactory_FWD_DEFINED__ + +#ifdef __cplusplus +typedef class TypeNameFactory TypeNameFactory; +#else +typedef struct TypeNameFactory TypeNameFactory; +#endif /* __cplusplus */ + +#endif /* __TypeNameFactory_FWD_DEFINED__ */ + + +#ifndef __ICLRAppDomainResourceMonitor_FWD_DEFINED__ +#define __ICLRAppDomainResourceMonitor_FWD_DEFINED__ +typedef interface ICLRAppDomainResourceMonitor ICLRAppDomainResourceMonitor; + +#endif /* __ICLRAppDomainResourceMonitor_FWD_DEFINED__ */ + + +/* header files for imported files */ +#include "unknwn.h" +#include "gchost.h" +#include "ivalidator.h" + +#ifdef __cplusplus +extern "C"{ +#endif + + +/* interface __MIDL_itf_mscoree_0000_0000 */ +/* [local] */ + +#define DECLARE_DEPRECATED +#define DEPRECATED_CLR_STDAPI STDAPI + +struct IActivationFactory; + +#define CLR_MAJOR_VERSION ( 4 ) + +#define CLR_MINOR_VERSION ( 0 ) + +#define CLR_BUILD_VERSION ( 23203 ) + +#define CLR_ASSEMBLY_MAJOR_VERSION ( 4 ) + +#define CLR_ASSEMBLY_MINOR_VERSION ( 0 ) + +#define CLR_ASSEMBLY_BUILD_VERSION ( 0 ) + +EXTERN_GUID(CLSID_TypeNameFactory, 0xB81FF171, 0x20F3, 0x11d2, 0x8d, 0xcc, 0x00, 0xa0, 0xc9, 0xb0, 0x05, 0x25); +EXTERN_GUID(CLSID_ComCallUnmarshal, 0x3F281000,0xE95A,0x11d2,0x88,0x6B,0x00,0xC0,0x4F,0x86,0x9F,0x04); +EXTERN_GUID(CLSID_ComCallUnmarshalV4, 0x45fb4600,0xe6e8,0x4928,0xb2,0x5e,0x50,0x47,0x6f,0xf7,0x94,0x25); +EXTERN_GUID(IID_IManagedObject, 0xc3fcc19e, 0xa970, 0x11d2, 0x8b, 0x5a, 0x00, 0xa0, 0xc9, 0xb7, 0xc9, 0xc4); +EXTERN_GUID(IID_ICLRAppDomainResourceMonitor, 0XC62DE18C, 0X2E23, 0X4AEA, 0X84, 0X23, 0XB4, 0X0C, 0X1F, 0XC5, 0X9E, 0XAE); +EXTERN_GUID(IID_ICLRPolicyManager, 0x7D290010, 0xD781, 0x45da, 0xA6, 0xF8, 0xAA, 0x5D, 0x71, 0x1A, 0x73, 0x0E); +EXTERN_GUID(IID_ICLRGCManager, 0x54D9007E, 0xA8E2, 0x4885, 0xB7, 0xBF, 0xF9, 0x98, 0xDE, 0xEE, 0x4F, 0x2A); +EXTERN_GUID(IID_ICLRGCManager2, 0x0603B793, 0xA97A, 0x4712, 0x9C, 0xB4, 0x0C, 0xD1, 0xC7, 0x4C, 0x0F, 0x7C); +EXTERN_GUID(IID_ICLRErrorReportingManager, 0x980d2f1a, 0xbf79, 0x4c08, 0x81, 0x2a, 0xbb, 0x97, 0x78, 0x92, 0x8f, 0x78); +EXTERN_GUID(IID_ICLRErrorReportingManager2, 0xc68f63b1, 0x4d8b, 0x4e0b, 0x95, 0x64, 0x9d, 0x2e, 0xfe, 0x2f, 0xa1, 0x8c); +EXTERN_GUID(IID_ICLRRuntimeHost, 0x90F1A06C, 0x7712, 0x4762, 0x86, 0xB5, 0x7A, 0x5E, 0xBA, 0x6B, 0xDB, 0x02); +EXTERN_GUID(IID_ICLRRuntimeHost2, 0x712AB73F, 0x2C22, 0x4807, 0xAD, 0x7E, 0xF5, 0x01, 0xD7, 0xb7, 0x2C, 0x2D); +EXTERN_GUID(IID_ICLRExecutionManager, 0x1000A3E7, 0xB420, 0x4620, 0xAE, 0x30, 0xFB, 0x19, 0xB5, 0x87, 0xAD, 0x1D); +EXTERN_GUID(IID_ITypeName, 0xB81FF171, 0x20F3, 0x11d2, 0x8d, 0xcc, 0x00, 0xa0, 0xc9, 0xb0, 0x05, 0x22); +EXTERN_GUID(IID_ITypeNameBuilder, 0xB81FF171, 0x20F3, 0x11d2, 0x8d, 0xcc, 0x00, 0xa0, 0xc9, 0xb0, 0x05, 0x23); +EXTERN_GUID(IID_ITypeNameFactory, 0xB81FF171, 0x20F3, 0x11d2, 0x8d, 0xcc, 0x00, 0xa0, 0xc9, 0xb0, 0x05, 0x21); +DEPRECATED_CLR_STDAPI GetCORSystemDirectory(_Out_writes_to_(cchBuffer, *dwLength) LPWSTR pbuffer, DWORD cchBuffer, DWORD* dwLength); +DEPRECATED_CLR_STDAPI GetCORVersion(_Out_writes_to_(cchBuffer, *dwLength) LPWSTR pbBuffer, DWORD cchBuffer, DWORD* dwLength); +DEPRECATED_CLR_STDAPI GetFileVersion(LPCWSTR szFilename, _Out_writes_to_opt_(cchBuffer, *dwLength) LPWSTR szBuffer, DWORD cchBuffer, DWORD* dwLength); +DEPRECATED_CLR_STDAPI GetCORRequiredVersion(_Out_writes_to_(cchBuffer, *dwLength) LPWSTR pbuffer, DWORD cchBuffer, DWORD* dwLength); +DEPRECATED_CLR_STDAPI GetRequestedRuntimeInfo(LPCWSTR pExe, LPCWSTR pwszVersion, LPCWSTR pConfigurationFile, DWORD startupFlags, DWORD runtimeInfoFlags, _Out_writes_opt_(dwDirectory) LPWSTR pDirectory, DWORD dwDirectory, _Out_opt_ DWORD *dwDirectoryLength, _Out_writes_opt_(cchBuffer) LPWSTR pVersion, DWORD cchBuffer, _Out_opt_ DWORD* dwlength); +DEPRECATED_CLR_STDAPI GetRequestedRuntimeVersion(_In_ LPWSTR pExe, _Out_writes_to_(cchBuffer, *dwLength) LPWSTR pVersion, DWORD cchBuffer, _Out_ DWORD* dwLength); +DEPRECATED_CLR_STDAPI CorBindToRuntimeHost(LPCWSTR pwszVersion, LPCWSTR pwszBuildFlavor, LPCWSTR pwszHostConfigFile, VOID* pReserved, DWORD startupFlags, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv); +DEPRECATED_CLR_STDAPI CorBindToRuntimeEx(LPCWSTR pwszVersion, LPCWSTR pwszBuildFlavor, DWORD startupFlags, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv); +DEPRECATED_CLR_STDAPI CorBindToRuntimeByCfg(IStream* pCfgStream, DWORD reserved, DWORD startupFlags, REFCLSID rclsid,REFIID riid, LPVOID FAR* ppv); +DEPRECATED_CLR_STDAPI CorBindToRuntime(LPCWSTR pwszVersion, LPCWSTR pwszBuildFlavor, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv); +DEPRECATED_CLR_STDAPI CorBindToCurrentRuntime(LPCWSTR pwszFileName, REFCLSID rclsid, REFIID riid, LPVOID FAR *ppv); +DEPRECATED_CLR_STDAPI ClrCreateManagedInstance(LPCWSTR pTypeName, REFIID riid, void **ppObject); +DECLARE_DEPRECATED void STDMETHODCALLTYPE CorMarkThreadInThreadPool(); +DEPRECATED_CLR_STDAPI RunDll32ShimW(HWND hwnd, HINSTANCE hinst, LPCWSTR lpszCmdLine, int nCmdShow); +DEPRECATED_CLR_STDAPI LoadLibraryShim(LPCWSTR szDllName, LPCWSTR szVersion, LPVOID pvReserved, HMODULE *phModDll); +DEPRECATED_CLR_STDAPI CallFunctionShim(LPCWSTR szDllName, LPCSTR szFunctionName, LPVOID lpvArgument1, LPVOID lpvArgument2, LPCWSTR szVersion, LPVOID pvReserved); +DEPRECATED_CLR_STDAPI GetRealProcAddress(LPCSTR pwszProcName, VOID** ppv); +DECLARE_DEPRECATED void STDMETHODCALLTYPE CorExitProcess(int exitCode); +DEPRECATED_CLR_STDAPI LoadStringRC(UINT iResouceID, _Out_writes_z_(iMax) LPWSTR szBuffer, int iMax, int bQuiet); +typedef HRESULT (STDAPICALLTYPE *FnGetCLRRuntimeHost)(REFIID riid, IUnknown **pUnk); +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0000_0001 + { + HOST_TYPE_DEFAULT = 0, + HOST_TYPE_APPLAUNCH = 0x1, + HOST_TYPE_CORFLAG = 0x2 + } HOST_TYPE; + +STDAPI CorLaunchApplication(HOST_TYPE dwClickOnceHost, LPCWSTR pwzAppFullName, DWORD dwManifestPaths, LPCWSTR* ppwzManifestPaths, DWORD dwActivationData, LPCWSTR* ppwzActivationData, LPPROCESS_INFORMATION lpProcessInformation); +typedef HRESULT ( __stdcall *FExecuteInAppDomainCallback )( + void *cookie); + +typedef /* [public][public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0000_0002 + { + STARTUP_CONCURRENT_GC = 0x1, + STARTUP_LOADER_OPTIMIZATION_MASK = ( 0x3 << 1 ) , + STARTUP_LOADER_OPTIMIZATION_SINGLE_DOMAIN = ( 0x1 << 1 ) , + STARTUP_LOADER_OPTIMIZATION_MULTI_DOMAIN = ( 0x2 << 1 ) , + STARTUP_LOADER_OPTIMIZATION_MULTI_DOMAIN_HOST = ( 0x3 << 1 ) , + STARTUP_LOADER_SAFEMODE = 0x10, + STARTUP_LOADER_SETPREFERENCE = 0x100, + STARTUP_SERVER_GC = 0x1000, + STARTUP_HOARD_GC_VM = 0x2000, + STARTUP_SINGLE_VERSION_HOSTING_INTERFACE = 0x4000, + STARTUP_LEGACY_IMPERSONATION = 0x10000, + STARTUP_DISABLE_COMMITTHREADSTACK = 0x20000, + STARTUP_ALWAYSFLOW_IMPERSONATION = 0x40000, + STARTUP_TRIM_GC_COMMIT = 0x80000, + STARTUP_ETW = 0x100000, + STARTUP_ARM = 0x400000, + STARTUP_SINGLE_APPDOMAIN = 0x800000, + STARTUP_APPX_APP_MODEL = 0x1000000, + STARTUP_DISABLE_RANDOMIZED_STRING_HASHING = 0x2000000 + } STARTUP_FLAGS; + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0000_0003 + { + CLSID_RESOLUTION_DEFAULT = 0, + CLSID_RESOLUTION_REGISTERED = 0x1 + } CLSID_RESOLUTION_FLAGS; + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0000_0004 + { + RUNTIME_INFO_UPGRADE_VERSION = 0x1, + RUNTIME_INFO_REQUEST_IA64 = 0x2, + RUNTIME_INFO_REQUEST_AMD64 = 0x4, + RUNTIME_INFO_REQUEST_X86 = 0x8, + RUNTIME_INFO_DONT_RETURN_DIRECTORY = 0x10, + RUNTIME_INFO_DONT_RETURN_VERSION = 0x20, + RUNTIME_INFO_DONT_SHOW_ERROR_DIALOG = 0x40, + RUNTIME_INFO_IGNORE_ERROR_MODE = 0x1000 + } RUNTIME_INFO_FLAGS; + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0000_0005 + { + APPDOMAIN_SECURITY_DEFAULT = 0, + APPDOMAIN_SECURITY_SANDBOXED = 0x1, + APPDOMAIN_SECURITY_FORBID_CROSSAD_REVERSE_PINVOKE = 0x2, + APPDOMAIN_IGNORE_UNHANDLED_EXCEPTIONS = 0x4, + APPDOMAIN_FORCE_TRIVIAL_WAIT_OPERATIONS = 0x8, + APPDOMAIN_ENABLE_PINVOKE_AND_CLASSIC_COMINTEROP = 0x10, + APPDOMAIN_SET_TEST_KEY = 0x20, + APPDOMAIN_ENABLE_PLATFORM_SPECIFIC_APPS = 0x40, + APPDOMAIN_ENABLE_ASSEMBLY_LOADFILE = 0x80, + APPDOMAIN_DISABLE_TRANSPARENCY_ENFORCEMENT = 0x100 + } APPDOMAIN_SECURITY_FLAGS; + +STDAPI GetRequestedRuntimeVersionForCLSID(REFCLSID rclsid, _Out_writes_opt_(cchBuffer) LPWSTR pVersion, DWORD cchBuffer, _Out_opt_ DWORD* dwLength, CLSID_RESOLUTION_FLAGS dwResolutionFlags); +EXTERN_GUID(IID_IDebuggerThreadControl, 0x23d86786, 0x0bb5, 0x4774, 0x8f, 0xb5, 0xe3, 0x52, 0x2a, 0xdd, 0x62, 0x46); + + +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0000_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0000_v0_0_s_ifspec; + +#ifndef __IDebuggerThreadControl_INTERFACE_DEFINED__ +#define __IDebuggerThreadControl_INTERFACE_DEFINED__ + +/* interface IDebuggerThreadControl */ +/* [object][local][unique][helpstring][version][uuid] */ + + +EXTERN_C const IID IID_IDebuggerThreadControl; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("23D86786-0BB5-4774-8FB5-E3522ADD6246") + IDebuggerThreadControl : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE ThreadIsBlockingForDebugger( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE ReleaseAllRuntimeThreads( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE StartBlockingForDebugger( + DWORD dwUnused) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IDebuggerThreadControlVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IDebuggerThreadControl * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IDebuggerThreadControl * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IDebuggerThreadControl * This); + + HRESULT ( STDMETHODCALLTYPE *ThreadIsBlockingForDebugger )( + IDebuggerThreadControl * This); + + HRESULT ( STDMETHODCALLTYPE *ReleaseAllRuntimeThreads )( + IDebuggerThreadControl * This); + + HRESULT ( STDMETHODCALLTYPE *StartBlockingForDebugger )( + IDebuggerThreadControl * This, + DWORD dwUnused); + + END_INTERFACE + } IDebuggerThreadControlVtbl; + + interface IDebuggerThreadControl + { + CONST_VTBL struct IDebuggerThreadControlVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IDebuggerThreadControl_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IDebuggerThreadControl_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IDebuggerThreadControl_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IDebuggerThreadControl_ThreadIsBlockingForDebugger(This) \ + ( (This)->lpVtbl -> ThreadIsBlockingForDebugger(This) ) + +#define IDebuggerThreadControl_ReleaseAllRuntimeThreads(This) \ + ( (This)->lpVtbl -> ReleaseAllRuntimeThreads(This) ) + +#define IDebuggerThreadControl_StartBlockingForDebugger(This,dwUnused) \ + ( (This)->lpVtbl -> StartBlockingForDebugger(This,dwUnused) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IDebuggerThreadControl_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_mscoree_0000_0001 */ +/* [local] */ + +EXTERN_GUID(IID_IDebuggerInfo, 0xbf24142d, 0xa47d, 0x4d24, 0xa6, 0x6d, 0x8c, 0x21, 0x41, 0x94, 0x4e, 0x44); + + +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0001_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0001_v0_0_s_ifspec; + +#ifndef __IDebuggerInfo_INTERFACE_DEFINED__ +#define __IDebuggerInfo_INTERFACE_DEFINED__ + +/* interface IDebuggerInfo */ +/* [object][local][unique][helpstring][version][uuid] */ + + +EXTERN_C const IID IID_IDebuggerInfo; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("BF24142D-A47D-4d24-A66D-8C2141944E44") + IDebuggerInfo : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE IsDebuggerAttached( + /* [out] */ BOOL *pbAttached) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IDebuggerInfoVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IDebuggerInfo * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IDebuggerInfo * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IDebuggerInfo * This); + + HRESULT ( STDMETHODCALLTYPE *IsDebuggerAttached )( + IDebuggerInfo * This, + /* [out] */ BOOL *pbAttached); + + END_INTERFACE + } IDebuggerInfoVtbl; + + interface IDebuggerInfo + { + CONST_VTBL struct IDebuggerInfoVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IDebuggerInfo_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IDebuggerInfo_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IDebuggerInfo_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IDebuggerInfo_IsDebuggerAttached(This,pbAttached) \ + ( (This)->lpVtbl -> IsDebuggerAttached(This,pbAttached) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IDebuggerInfo_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_mscoree_0000_0002 */ +/* [local] */ + +typedef void *HDOMAINENUM; + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0002_0001 + { + eMemoryAvailableLow = 1, + eMemoryAvailableNeutral = 2, + eMemoryAvailableHigh = 3 + } EMemoryAvailable; + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0002_0002 + { + eTaskCritical = 0, + eAppDomainCritical = 1, + eProcessCritical = 2 + } EMemoryCriticalLevel; + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0002_0003 + { + WAIT_MSGPUMP = 0x1, + WAIT_ALERTABLE = 0x2, + WAIT_NOTINDEADLOCK = 0x4 + } WAIT_OPTION; + +typedef UINT64 TASKID; + +typedef DWORD CONNID; + +typedef +enum ETaskType + { + TT_DEBUGGERHELPER = 0x1, + TT_GC = 0x2, + TT_FINALIZER = 0x4, + TT_THREADPOOL_TIMER = 0x8, + TT_THREADPOOL_GATE = 0x10, + TT_THREADPOOL_WORKER = 0x20, + TT_THREADPOOL_IOCOMPLETION = 0x40, + TT_ADUNLOAD = 0x80, + TT_USER = 0x100, + TT_THREADPOOL_WAIT = 0x200, + TT_UNKNOWN = 0x80000000 + } ETaskType; + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0002_0004 + { + eSymbolReadingNever = 0, + eSymbolReadingAlways = 1, + eSymbolReadingFullTrustOnly = 2 + } ESymbolReadingPolicy; + +typedef /* [public][public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0002_0005 + { + DUMP_FLAVOR_Mini = 0, + DUMP_FLAVOR_CriticalCLRState = 1, + DUMP_FLAVOR_NonHeapCLRState = 2, + DUMP_FLAVOR_Default = DUMP_FLAVOR_Mini + } ECustomDumpFlavor; + +typedef /* [public][public][public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0002_0006 + { + DUMP_ITEM_None = 0 + } ECustomDumpItemKind; + +typedef /* [public][public] */ struct __MIDL___MIDL_itf_mscoree_0000_0002_0007 + { + ECustomDumpItemKind itemKind; + union + { + UINT_PTR pReserved; + } ; + } CustomDumpItem; + +#define BucketParamsCount ( 10 ) + +#define BucketParamLength ( 255 ) + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0002_0009 + { + Parameter1 = 0, + Parameter2 = ( Parameter1 + 1 ) , + Parameter3 = ( Parameter2 + 1 ) , + Parameter4 = ( Parameter3 + 1 ) , + Parameter5 = ( Parameter4 + 1 ) , + Parameter6 = ( Parameter5 + 1 ) , + Parameter7 = ( Parameter6 + 1 ) , + Parameter8 = ( Parameter7 + 1 ) , + Parameter9 = ( Parameter8 + 1 ) , + InvalidBucketParamIndex = ( Parameter9 + 1 ) + } BucketParameterIndex; + +typedef struct _BucketParameters + { + BOOL fInited; + WCHAR pszEventTypeName[ 255 ]; + WCHAR pszParams[ 10 ][ 255 ]; + } BucketParameters; + + + +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0002_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0002_v0_0_s_ifspec; + +#ifndef __ICLRErrorReportingManager_INTERFACE_DEFINED__ +#define __ICLRErrorReportingManager_INTERFACE_DEFINED__ + +/* interface ICLRErrorReportingManager */ +/* [object][local][unique][helpstring][version][uuid] */ + + +EXTERN_C const IID IID_ICLRErrorReportingManager; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("980D2F1A-BF79-4c08-812A-BB9778928F78") + ICLRErrorReportingManager : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE GetBucketParametersForCurrentException( + /* [out] */ BucketParameters *pParams) = 0; + + virtual HRESULT STDMETHODCALLTYPE BeginCustomDump( + /* [in] */ ECustomDumpFlavor dwFlavor, + /* [in] */ DWORD dwNumItems, + /* [length_is][size_is][in] */ CustomDumpItem *items, + DWORD dwReserved) = 0; + + virtual HRESULT STDMETHODCALLTYPE EndCustomDump( void) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ICLRErrorReportingManagerVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ICLRErrorReportingManager * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ICLRErrorReportingManager * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ICLRErrorReportingManager * This); + + HRESULT ( STDMETHODCALLTYPE *GetBucketParametersForCurrentException )( + ICLRErrorReportingManager * This, + /* [out] */ BucketParameters *pParams); + + HRESULT ( STDMETHODCALLTYPE *BeginCustomDump )( + ICLRErrorReportingManager * This, + /* [in] */ ECustomDumpFlavor dwFlavor, + /* [in] */ DWORD dwNumItems, + /* [length_is][size_is][in] */ CustomDumpItem *items, + DWORD dwReserved); + + HRESULT ( STDMETHODCALLTYPE *EndCustomDump )( + ICLRErrorReportingManager * This); + + END_INTERFACE + } ICLRErrorReportingManagerVtbl; + + interface ICLRErrorReportingManager + { + CONST_VTBL struct ICLRErrorReportingManagerVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ICLRErrorReportingManager_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ICLRErrorReportingManager_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ICLRErrorReportingManager_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ICLRErrorReportingManager_GetBucketParametersForCurrentException(This,pParams) \ + ( (This)->lpVtbl -> GetBucketParametersForCurrentException(This,pParams) ) + +#define ICLRErrorReportingManager_BeginCustomDump(This,dwFlavor,dwNumItems,items,dwReserved) \ + ( (This)->lpVtbl -> BeginCustomDump(This,dwFlavor,dwNumItems,items,dwReserved) ) + +#define ICLRErrorReportingManager_EndCustomDump(This) \ + ( (This)->lpVtbl -> EndCustomDump(This) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ICLRErrorReportingManager_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_mscoree_0000_0003 */ +/* [local] */ + +typedef /* [public][public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0003_0001 + { + ApplicationID = 0x1, + InstanceID = 0x2 + } ApplicationDataKey; + + + +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0003_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0003_v0_0_s_ifspec; + +#ifndef __ICLRErrorReportingManager2_INTERFACE_DEFINED__ +#define __ICLRErrorReportingManager2_INTERFACE_DEFINED__ + +/* interface ICLRErrorReportingManager2 */ +/* [object][local][unique][helpstring][version][uuid] */ + + +EXTERN_C const IID IID_ICLRErrorReportingManager2; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("C68F63B1-4D8B-4E0B-9564-9D2EFE2FA18C") + ICLRErrorReportingManager2 : public ICLRErrorReportingManager + { + public: + virtual HRESULT STDMETHODCALLTYPE SetApplicationData( + /* [in] */ ApplicationDataKey key, + /* [in] */ const WCHAR *pValue) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetBucketParametersForUnhandledException( + /* [in] */ const BucketParameters *pBucketParams, + /* [out] */ DWORD *pCountParams) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ICLRErrorReportingManager2Vtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ICLRErrorReportingManager2 * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ICLRErrorReportingManager2 * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ICLRErrorReportingManager2 * This); + + HRESULT ( STDMETHODCALLTYPE *GetBucketParametersForCurrentException )( + ICLRErrorReportingManager2 * This, + /* [out] */ BucketParameters *pParams); + + HRESULT ( STDMETHODCALLTYPE *BeginCustomDump )( + ICLRErrorReportingManager2 * This, + /* [in] */ ECustomDumpFlavor dwFlavor, + /* [in] */ DWORD dwNumItems, + /* [length_is][size_is][in] */ CustomDumpItem *items, + DWORD dwReserved); + + HRESULT ( STDMETHODCALLTYPE *EndCustomDump )( + ICLRErrorReportingManager2 * This); + + HRESULT ( STDMETHODCALLTYPE *SetApplicationData )( + ICLRErrorReportingManager2 * This, + /* [in] */ ApplicationDataKey key, + /* [in] */ const WCHAR *pValue); + + HRESULT ( STDMETHODCALLTYPE *SetBucketParametersForUnhandledException )( + ICLRErrorReportingManager2 * This, + /* [in] */ const BucketParameters *pBucketParams, + /* [out] */ DWORD *pCountParams); + + END_INTERFACE + } ICLRErrorReportingManager2Vtbl; + + interface ICLRErrorReportingManager2 + { + CONST_VTBL struct ICLRErrorReportingManager2Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ICLRErrorReportingManager2_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ICLRErrorReportingManager2_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ICLRErrorReportingManager2_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ICLRErrorReportingManager2_GetBucketParametersForCurrentException(This,pParams) \ + ( (This)->lpVtbl -> GetBucketParametersForCurrentException(This,pParams) ) + +#define ICLRErrorReportingManager2_BeginCustomDump(This,dwFlavor,dwNumItems,items,dwReserved) \ + ( (This)->lpVtbl -> BeginCustomDump(This,dwFlavor,dwNumItems,items,dwReserved) ) + +#define ICLRErrorReportingManager2_EndCustomDump(This) \ + ( (This)->lpVtbl -> EndCustomDump(This) ) + + +#define ICLRErrorReportingManager2_SetApplicationData(This,key,pValue) \ + ( (This)->lpVtbl -> SetApplicationData(This,key,pValue) ) + +#define ICLRErrorReportingManager2_SetBucketParametersForUnhandledException(This,pBucketParams,pCountParams) \ + ( (This)->lpVtbl -> SetBucketParametersForUnhandledException(This,pBucketParams,pCountParams) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ICLRErrorReportingManager2_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_mscoree_0000_0004 */ +/* [local] */ + +typedef /* [public][public][public][public][public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0004_0001 + { + OPR_ThreadAbort = 0, + OPR_ThreadRudeAbortInNonCriticalRegion = ( OPR_ThreadAbort + 1 ) , + OPR_ThreadRudeAbortInCriticalRegion = ( OPR_ThreadRudeAbortInNonCriticalRegion + 1 ) , + OPR_AppDomainUnload = ( OPR_ThreadRudeAbortInCriticalRegion + 1 ) , + OPR_AppDomainRudeUnload = ( OPR_AppDomainUnload + 1 ) , + OPR_ProcessExit = ( OPR_AppDomainRudeUnload + 1 ) , + OPR_FinalizerRun = ( OPR_ProcessExit + 1 ) , + MaxClrOperation = ( OPR_FinalizerRun + 1 ) + } EClrOperation; + +typedef /* [public][public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0004_0002 + { + FAIL_NonCriticalResource = 0, + FAIL_CriticalResource = ( FAIL_NonCriticalResource + 1 ) , + FAIL_FatalRuntime = ( FAIL_CriticalResource + 1 ) , + FAIL_OrphanedLock = ( FAIL_FatalRuntime + 1 ) , + FAIL_StackOverflow = ( FAIL_OrphanedLock + 1 ) , + FAIL_AccessViolation = ( FAIL_StackOverflow + 1 ) , + FAIL_CodeContract = ( FAIL_AccessViolation + 1 ) , + MaxClrFailure = ( FAIL_CodeContract + 1 ) + } EClrFailure; + +typedef /* [public][public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0004_0003 + { + eRuntimeDeterminedPolicy = 0, + eHostDeterminedPolicy = ( eRuntimeDeterminedPolicy + 1 ) + } EClrUnhandledException; + +typedef /* [public][public][public][public][public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0004_0004 + { + eNoAction = 0, + eThrowException = ( eNoAction + 1 ) , + eAbortThread = ( eThrowException + 1 ) , + eRudeAbortThread = ( eAbortThread + 1 ) , + eUnloadAppDomain = ( eRudeAbortThread + 1 ) , + eRudeUnloadAppDomain = ( eUnloadAppDomain + 1 ) , + eExitProcess = ( eRudeUnloadAppDomain + 1 ) , + eFastExitProcess = ( eExitProcess + 1 ) , + eRudeExitProcess = ( eFastExitProcess + 1 ) , + eDisableRuntime = ( eRudeExitProcess + 1 ) , + MaxPolicyAction = ( eDisableRuntime + 1 ) + } EPolicyAction; + + + +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0004_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0004_v0_0_s_ifspec; + +#ifndef __ICLRPolicyManager_INTERFACE_DEFINED__ +#define __ICLRPolicyManager_INTERFACE_DEFINED__ + +/* interface ICLRPolicyManager */ +/* [object][local][unique][helpstring][version][uuid] */ + + +EXTERN_C const IID IID_ICLRPolicyManager; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("7D290010-D781-45da-A6F8-AA5D711A730E") + ICLRPolicyManager : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE SetDefaultAction( + /* [in] */ EClrOperation operation, + /* [in] */ EPolicyAction action) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetTimeout( + /* [in] */ EClrOperation operation, + /* [in] */ DWORD dwMilliseconds) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetActionOnTimeout( + /* [in] */ EClrOperation operation, + /* [in] */ EPolicyAction action) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetTimeoutAndAction( + /* [in] */ EClrOperation operation, + /* [in] */ DWORD dwMilliseconds, + /* [in] */ EPolicyAction action) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetActionOnFailure( + /* [in] */ EClrFailure failure, + /* [in] */ EPolicyAction action) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetUnhandledExceptionPolicy( + /* [in] */ EClrUnhandledException policy) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ICLRPolicyManagerVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ICLRPolicyManager * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ICLRPolicyManager * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ICLRPolicyManager * This); + + HRESULT ( STDMETHODCALLTYPE *SetDefaultAction )( + ICLRPolicyManager * This, + /* [in] */ EClrOperation operation, + /* [in] */ EPolicyAction action); + + HRESULT ( STDMETHODCALLTYPE *SetTimeout )( + ICLRPolicyManager * This, + /* [in] */ EClrOperation operation, + /* [in] */ DWORD dwMilliseconds); + + HRESULT ( STDMETHODCALLTYPE *SetActionOnTimeout )( + ICLRPolicyManager * This, + /* [in] */ EClrOperation operation, + /* [in] */ EPolicyAction action); + + HRESULT ( STDMETHODCALLTYPE *SetTimeoutAndAction )( + ICLRPolicyManager * This, + /* [in] */ EClrOperation operation, + /* [in] */ DWORD dwMilliseconds, + /* [in] */ EPolicyAction action); + + HRESULT ( STDMETHODCALLTYPE *SetActionOnFailure )( + ICLRPolicyManager * This, + /* [in] */ EClrFailure failure, + /* [in] */ EPolicyAction action); + + HRESULT ( STDMETHODCALLTYPE *SetUnhandledExceptionPolicy )( + ICLRPolicyManager * This, + /* [in] */ EClrUnhandledException policy); + + END_INTERFACE + } ICLRPolicyManagerVtbl; + + interface ICLRPolicyManager + { + CONST_VTBL struct ICLRPolicyManagerVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ICLRPolicyManager_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ICLRPolicyManager_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ICLRPolicyManager_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ICLRPolicyManager_SetDefaultAction(This,operation,action) \ + ( (This)->lpVtbl -> SetDefaultAction(This,operation,action) ) + +#define ICLRPolicyManager_SetTimeout(This,operation,dwMilliseconds) \ + ( (This)->lpVtbl -> SetTimeout(This,operation,dwMilliseconds) ) + +#define ICLRPolicyManager_SetActionOnTimeout(This,operation,action) \ + ( (This)->lpVtbl -> SetActionOnTimeout(This,operation,action) ) + +#define ICLRPolicyManager_SetTimeoutAndAction(This,operation,dwMilliseconds,action) \ + ( (This)->lpVtbl -> SetTimeoutAndAction(This,operation,dwMilliseconds,action) ) + +#define ICLRPolicyManager_SetActionOnFailure(This,failure,action) \ + ( (This)->lpVtbl -> SetActionOnFailure(This,failure,action) ) + +#define ICLRPolicyManager_SetUnhandledExceptionPolicy(This,policy) \ + ( (This)->lpVtbl -> SetUnhandledExceptionPolicy(This,policy) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ICLRPolicyManager_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_mscoree_0000_0005 */ +/* [local] */ + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0005_0001 + { + Event_DomainUnload = 0, + Event_ClrDisabled = ( Event_DomainUnload + 1 ) , + Event_MDAFired = ( Event_ClrDisabled + 1 ) , + Event_StackOverflow = ( Event_MDAFired + 1 ) , + MaxClrEvent = ( Event_StackOverflow + 1 ) + } EClrEvent; + +typedef struct _MDAInfo + { + LPCWSTR lpMDACaption; + LPCWSTR lpMDAMessage; + LPCWSTR lpStackTrace; + } MDAInfo; + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0005_0002 + { + SO_Managed = 0, + SO_ClrEngine = ( SO_Managed + 1 ) , + SO_Other = ( SO_ClrEngine + 1 ) + } StackOverflowType; + +typedef struct _StackOverflowInfo +{ + StackOverflowType soType; + EXCEPTION_POINTERS *pExceptionInfo; +} StackOverflowInfo; + + +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0005_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0005_v0_0_s_ifspec; + +#ifndef __ICLRGCManager_INTERFACE_DEFINED__ +#define __ICLRGCManager_INTERFACE_DEFINED__ + +/* interface ICLRGCManager */ +/* [object][local][unique][version][uuid] */ + + +EXTERN_C const IID IID_ICLRGCManager; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("54D9007E-A8E2-4885-B7BF-F998DEEE4F2A") + ICLRGCManager : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE Collect( + /* [in] */ LONG Generation) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetStats( + /* [out][in] */ COR_GC_STATS *pStats) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetGCStartupLimits( + /* [in] */ DWORD SegmentSize, + /* [in] */ DWORD MaxGen0Size) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ICLRGCManagerVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ICLRGCManager * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ICLRGCManager * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ICLRGCManager * This); + + HRESULT ( STDMETHODCALLTYPE *Collect )( + ICLRGCManager * This, + /* [in] */ LONG Generation); + + HRESULT ( STDMETHODCALLTYPE *GetStats )( + ICLRGCManager * This, + /* [out][in] */ COR_GC_STATS *pStats); + + HRESULT ( STDMETHODCALLTYPE *SetGCStartupLimits )( + ICLRGCManager * This, + /* [in] */ DWORD SegmentSize, + /* [in] */ DWORD MaxGen0Size); + + END_INTERFACE + } ICLRGCManagerVtbl; + + interface ICLRGCManager + { + CONST_VTBL struct ICLRGCManagerVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ICLRGCManager_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ICLRGCManager_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ICLRGCManager_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ICLRGCManager_Collect(This,Generation) \ + ( (This)->lpVtbl -> Collect(This,Generation) ) + +#define ICLRGCManager_GetStats(This,pStats) \ + ( (This)->lpVtbl -> GetStats(This,pStats) ) + +#define ICLRGCManager_SetGCStartupLimits(This,SegmentSize,MaxGen0Size) \ + ( (This)->lpVtbl -> SetGCStartupLimits(This,SegmentSize,MaxGen0Size) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ICLRGCManager_INTERFACE_DEFINED__ */ + + +#ifndef __ICLRGCManager2_INTERFACE_DEFINED__ +#define __ICLRGCManager2_INTERFACE_DEFINED__ + +/* interface ICLRGCManager2 */ +/* [object][local][unique][version][uuid] */ + + +EXTERN_C const IID IID_ICLRGCManager2; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("0603B793-A97A-4712-9CB4-0CD1C74C0F7C") + ICLRGCManager2 : public ICLRGCManager + { + public: + virtual HRESULT STDMETHODCALLTYPE SetGCStartupLimitsEx( + /* [in] */ SIZE_T SegmentSize, + /* [in] */ SIZE_T MaxGen0Size) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ICLRGCManager2Vtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ICLRGCManager2 * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ICLRGCManager2 * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ICLRGCManager2 * This); + + HRESULT ( STDMETHODCALLTYPE *Collect )( + ICLRGCManager2 * This, + /* [in] */ LONG Generation); + + HRESULT ( STDMETHODCALLTYPE *GetStats )( + ICLRGCManager2 * This, + /* [out][in] */ COR_GC_STATS *pStats); + + HRESULT ( STDMETHODCALLTYPE *SetGCStartupLimits )( + ICLRGCManager2 * This, + /* [in] */ DWORD SegmentSize, + /* [in] */ DWORD MaxGen0Size); + + HRESULT ( STDMETHODCALLTYPE *SetGCStartupLimitsEx )( + ICLRGCManager2 * This, + /* [in] */ SIZE_T SegmentSize, + /* [in] */ SIZE_T MaxGen0Size); + + END_INTERFACE + } ICLRGCManager2Vtbl; + + interface ICLRGCManager2 + { + CONST_VTBL struct ICLRGCManager2Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ICLRGCManager2_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ICLRGCManager2_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ICLRGCManager2_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ICLRGCManager2_Collect(This,Generation) \ + ( (This)->lpVtbl -> Collect(This,Generation) ) + +#define ICLRGCManager2_GetStats(This,pStats) \ + ( (This)->lpVtbl -> GetStats(This,pStats) ) + +#define ICLRGCManager2_SetGCStartupLimits(This,SegmentSize,MaxGen0Size) \ + ( (This)->lpVtbl -> SetGCStartupLimits(This,SegmentSize,MaxGen0Size) ) + + +#define ICLRGCManager2_SetGCStartupLimitsEx(This,SegmentSize,MaxGen0Size) \ + ( (This)->lpVtbl -> SetGCStartupLimitsEx(This,SegmentSize,MaxGen0Size) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ICLRGCManager2_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_mscoree_0000_0007 */ +/* [local] */ + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0007_0001 + { + ePolicyLevelNone = 0, + ePolicyLevelRetargetable = 0x1, + ePolicyUnifiedToCLR = 0x2, + ePolicyLevelApp = 0x4, + ePolicyLevelPublisher = 0x8, + ePolicyLevelHost = 0x10, + ePolicyLevelAdmin = 0x20, + ePolicyPortability = 0x40 + } EBindPolicyLevels; + +typedef struct _AssemblyBindInfo + { + DWORD dwAppDomainId; + LPCWSTR lpReferencedIdentity; + LPCWSTR lpPostPolicyIdentity; + DWORD ePolicyLevel; + } AssemblyBindInfo; + +typedef struct _ModuleBindInfo + { + DWORD dwAppDomainId; + LPCWSTR lpAssemblyIdentity; + LPCWSTR lpModuleName; + } ModuleBindInfo; + +typedef +enum _HostApplicationPolicy + { + HOST_APPLICATION_BINDING_POLICY = 1 + } EHostApplicationPolicy; + +STDAPI GetCLRIdentityManager(REFIID riid, IUnknown **ppManager); +EXTERN_GUID(IID_IHostControl, 0x02CA073C, 0x7079, 0x4860, 0x88, 0x0A, 0xC2, 0xF7, 0xA4, 0x49, 0xC9, 0x91); + + +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0007_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0007_v0_0_s_ifspec; + +#ifndef __IHostControl_INTERFACE_DEFINED__ +#define __IHostControl_INTERFACE_DEFINED__ + +/* interface IHostControl */ +/* [object][local][unique][helpstring][version][uuid] */ + + +EXTERN_C const IID IID_IHostControl; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("02CA073C-7079-4860-880A-C2F7A449C991") + IHostControl : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE GetHostManager( + /* [in] */ REFIID riid, + /* [out] */ void **ppObject) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetAppDomainManager( + /* [in] */ DWORD dwAppDomainID, + /* [in] */ IUnknown *pUnkAppDomainManager) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IHostControlVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IHostControl * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IHostControl * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IHostControl * This); + + HRESULT ( STDMETHODCALLTYPE *GetHostManager )( + IHostControl * This, + /* [in] */ REFIID riid, + /* [out] */ void **ppObject); + + HRESULT ( STDMETHODCALLTYPE *SetAppDomainManager )( + IHostControl * This, + /* [in] */ DWORD dwAppDomainID, + /* [in] */ IUnknown *pUnkAppDomainManager); + + END_INTERFACE + } IHostControlVtbl; + + interface IHostControl + { + CONST_VTBL struct IHostControlVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IHostControl_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IHostControl_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IHostControl_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IHostControl_GetHostManager(This,riid,ppObject) \ + ( (This)->lpVtbl -> GetHostManager(This,riid,ppObject) ) + +#define IHostControl_SetAppDomainManager(This,dwAppDomainID,pUnkAppDomainManager) \ + ( (This)->lpVtbl -> SetAppDomainManager(This,dwAppDomainID,pUnkAppDomainManager) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IHostControl_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_mscoree_0000_0008 */ +/* [local] */ + +EXTERN_GUID(IID_ICLRControl, 0x9065597E, 0xD1A1, 0x4fb2, 0xB6, 0xBA, 0x7E, 0x1F, 0xCE, 0x23, 0x0F, 0x61); + + +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0008_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0008_v0_0_s_ifspec; + +#ifndef __ICLRControl_INTERFACE_DEFINED__ +#define __ICLRControl_INTERFACE_DEFINED__ + +/* interface ICLRControl */ +/* [object][local][unique][helpstring][version][uuid] */ + + +EXTERN_C const IID IID_ICLRControl; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("9065597E-D1A1-4fb2-B6BA-7E1FCE230F61") + ICLRControl : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE GetCLRManager( + /* [in] */ REFIID riid, + /* [out] */ void **ppObject) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetAppDomainManagerType( + /* [in] */ LPCWSTR pwzAppDomainManagerAssembly, + /* [in] */ LPCWSTR pwzAppDomainManagerType) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ICLRControlVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ICLRControl * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ICLRControl * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ICLRControl * This); + + HRESULT ( STDMETHODCALLTYPE *GetCLRManager )( + ICLRControl * This, + /* [in] */ REFIID riid, + /* [out] */ void **ppObject); + + HRESULT ( STDMETHODCALLTYPE *SetAppDomainManagerType )( + ICLRControl * This, + /* [in] */ LPCWSTR pwzAppDomainManagerAssembly, + /* [in] */ LPCWSTR pwzAppDomainManagerType); + + END_INTERFACE + } ICLRControlVtbl; + + interface ICLRControl + { + CONST_VTBL struct ICLRControlVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ICLRControl_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ICLRControl_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ICLRControl_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ICLRControl_GetCLRManager(This,riid,ppObject) \ + ( (This)->lpVtbl -> GetCLRManager(This,riid,ppObject) ) + +#define ICLRControl_SetAppDomainManagerType(This,pwzAppDomainManagerAssembly,pwzAppDomainManagerType) \ + ( (This)->lpVtbl -> SetAppDomainManagerType(This,pwzAppDomainManagerAssembly,pwzAppDomainManagerType) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ICLRControl_INTERFACE_DEFINED__ */ + + +#ifndef __ICLRRuntimeHost_INTERFACE_DEFINED__ +#define __ICLRRuntimeHost_INTERFACE_DEFINED__ + +/* interface ICLRRuntimeHost */ +/* [object][local][unique][helpstring][version][uuid] */ + + +EXTERN_C const IID IID_ICLRRuntimeHost; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("90F1A06C-7712-4762-86B5-7A5EBA6BDB02") + ICLRRuntimeHost : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE Start( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE Stop( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetHostControl( + /* [in] */ IHostControl *pHostControl) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetCLRControl( + /* [out] */ ICLRControl **pCLRControl) = 0; + + virtual HRESULT STDMETHODCALLTYPE UnloadAppDomain( + /* [in] */ DWORD dwAppDomainId, + /* [in] */ BOOL fWaitUntilDone) = 0; + + virtual HRESULT STDMETHODCALLTYPE ExecuteInAppDomain( + /* [in] */ DWORD dwAppDomainId, + /* [in] */ FExecuteInAppDomainCallback pCallback, + /* [in] */ void *cookie) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetCurrentAppDomainId( + /* [out] */ DWORD *pdwAppDomainId) = 0; + + virtual HRESULT STDMETHODCALLTYPE ExecuteApplication( + /* [in] */ LPCWSTR pwzAppFullName, + /* [in] */ DWORD dwManifestPaths, + /* [in] */ LPCWSTR *ppwzManifestPaths, + /* [in] */ DWORD dwActivationData, + /* [in] */ LPCWSTR *ppwzActivationData, + /* [out] */ int *pReturnValue) = 0; + + virtual HRESULT STDMETHODCALLTYPE ExecuteInDefaultAppDomain( + /* [in] */ LPCWSTR pwzAssemblyPath, + /* [in] */ LPCWSTR pwzTypeName, + /* [in] */ LPCWSTR pwzMethodName, + /* [in] */ LPCWSTR pwzArgument, + /* [out] */ DWORD *pReturnValue) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ICLRRuntimeHostVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ICLRRuntimeHost * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ICLRRuntimeHost * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ICLRRuntimeHost * This); + + HRESULT ( STDMETHODCALLTYPE *Start )( + ICLRRuntimeHost * This); + + HRESULT ( STDMETHODCALLTYPE *Stop )( + ICLRRuntimeHost * This); + + HRESULT ( STDMETHODCALLTYPE *SetHostControl )( + ICLRRuntimeHost * This, + /* [in] */ IHostControl *pHostControl); + + HRESULT ( STDMETHODCALLTYPE *GetCLRControl )( + ICLRRuntimeHost * This, + /* [out] */ ICLRControl **pCLRControl); + + HRESULT ( STDMETHODCALLTYPE *UnloadAppDomain )( + ICLRRuntimeHost * This, + /* [in] */ DWORD dwAppDomainId, + /* [in] */ BOOL fWaitUntilDone); + + HRESULT ( STDMETHODCALLTYPE *ExecuteInAppDomain )( + ICLRRuntimeHost * This, + /* [in] */ DWORD dwAppDomainId, + /* [in] */ FExecuteInAppDomainCallback pCallback, + /* [in] */ void *cookie); + + HRESULT ( STDMETHODCALLTYPE *GetCurrentAppDomainId )( + ICLRRuntimeHost * This, + /* [out] */ DWORD *pdwAppDomainId); + + HRESULT ( STDMETHODCALLTYPE *ExecuteApplication )( + ICLRRuntimeHost * This, + /* [in] */ LPCWSTR pwzAppFullName, + /* [in] */ DWORD dwManifestPaths, + /* [in] */ LPCWSTR *ppwzManifestPaths, + /* [in] */ DWORD dwActivationData, + /* [in] */ LPCWSTR *ppwzActivationData, + /* [out] */ int *pReturnValue); + + HRESULT ( STDMETHODCALLTYPE *ExecuteInDefaultAppDomain )( + ICLRRuntimeHost * This, + /* [in] */ LPCWSTR pwzAssemblyPath, + /* [in] */ LPCWSTR pwzTypeName, + /* [in] */ LPCWSTR pwzMethodName, + /* [in] */ LPCWSTR pwzArgument, + /* [out] */ DWORD *pReturnValue); + + END_INTERFACE + } ICLRRuntimeHostVtbl; + + interface ICLRRuntimeHost + { + CONST_VTBL struct ICLRRuntimeHostVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ICLRRuntimeHost_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ICLRRuntimeHost_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ICLRRuntimeHost_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ICLRRuntimeHost_Start(This) \ + ( (This)->lpVtbl -> Start(This) ) + +#define ICLRRuntimeHost_Stop(This) \ + ( (This)->lpVtbl -> Stop(This) ) + +#define ICLRRuntimeHost_SetHostControl(This,pHostControl) \ + ( (This)->lpVtbl -> SetHostControl(This,pHostControl) ) + +#define ICLRRuntimeHost_GetCLRControl(This,pCLRControl) \ + ( (This)->lpVtbl -> GetCLRControl(This,pCLRControl) ) + +#define ICLRRuntimeHost_UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone) \ + ( (This)->lpVtbl -> UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone) ) + +#define ICLRRuntimeHost_ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie) \ + ( (This)->lpVtbl -> ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie) ) + +#define ICLRRuntimeHost_GetCurrentAppDomainId(This,pdwAppDomainId) \ + ( (This)->lpVtbl -> GetCurrentAppDomainId(This,pdwAppDomainId) ) + +#define ICLRRuntimeHost_ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue) \ + ( (This)->lpVtbl -> ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue) ) + +#define ICLRRuntimeHost_ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue) \ + ( (This)->lpVtbl -> ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ICLRRuntimeHost_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_mscoree_0000_0010 */ +/* [local] */ + +#define CORECLR_HOST_AUTHENTICATION_KEY 0x1C6CA6F94025800LL +#define CORECLR_HOST_AUTHENTICATION_KEY_NONGEN 0x1C6CA6F94025801LL + + +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0010_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0010_v0_0_s_ifspec; + +#ifndef __ICLRRuntimeHost2_INTERFACE_DEFINED__ +#define __ICLRRuntimeHost2_INTERFACE_DEFINED__ + +/* interface ICLRRuntimeHost2 */ +/* [local][unique][helpstring][version][uuid][object] */ + + +EXTERN_C const IID IID_ICLRRuntimeHost2; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("712AB73F-2C22-4807-AD7E-F501D7B72C2D") + ICLRRuntimeHost2 : public ICLRRuntimeHost + { + public: + virtual HRESULT STDMETHODCALLTYPE CreateAppDomainWithManager( + /* [in] */ LPCWSTR wszFriendlyName, + /* [in] */ DWORD dwFlags, + /* [in] */ LPCWSTR wszAppDomainManagerAssemblyName, + /* [in] */ LPCWSTR wszAppDomainManagerTypeName, + /* [in] */ int nProperties, + /* [in] */ LPCWSTR *pPropertyNames, + /* [in] */ LPCWSTR *pPropertyValues, + /* [out] */ DWORD *pAppDomainID) = 0; + + virtual HRESULT STDMETHODCALLTYPE CreateDelegate( + /* [in] */ DWORD appDomainID, + /* [in] */ LPCWSTR wszAssemblyName, + /* [in] */ LPCWSTR wszClassName, + /* [in] */ LPCWSTR wszMethodName, + /* [out] */ INT_PTR *fnPtr) = 0; + + virtual HRESULT STDMETHODCALLTYPE Authenticate( + /* [in] */ ULONGLONG authKey) = 0; + + virtual HRESULT STDMETHODCALLTYPE RegisterMacEHPort( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetStartupFlags( + /* [in] */ STARTUP_FLAGS dwFlags) = 0; + + virtual HRESULT STDMETHODCALLTYPE DllGetActivationFactory( + /* [in] */ DWORD appDomainID, + /* [in] */ LPCWSTR wszTypeName, + /* [out] */ IActivationFactory **factory) = 0; + + virtual HRESULT STDMETHODCALLTYPE ExecuteAssembly( + /* [in] */ DWORD dwAppDomainId, + /* [in] */ LPCWSTR pwzAssemblyPath, + /* [in] */ int argc, + /* [in] */ LPCWSTR *argv, + /* [out] */ DWORD *pReturnValue) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ICLRRuntimeHost2Vtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ICLRRuntimeHost2 * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ICLRRuntimeHost2 * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ICLRRuntimeHost2 * This); + + HRESULT ( STDMETHODCALLTYPE *Start )( + ICLRRuntimeHost2 * This); + + HRESULT ( STDMETHODCALLTYPE *Stop )( + ICLRRuntimeHost2 * This); + + HRESULT ( STDMETHODCALLTYPE *SetHostControl )( + ICLRRuntimeHost2 * This, + /* [in] */ IHostControl *pHostControl); + + HRESULT ( STDMETHODCALLTYPE *GetCLRControl )( + ICLRRuntimeHost2 * This, + /* [out] */ ICLRControl **pCLRControl); + + HRESULT ( STDMETHODCALLTYPE *UnloadAppDomain )( + ICLRRuntimeHost2 * This, + /* [in] */ DWORD dwAppDomainId, + /* [in] */ BOOL fWaitUntilDone); + + HRESULT ( STDMETHODCALLTYPE *ExecuteInAppDomain )( + ICLRRuntimeHost2 * This, + /* [in] */ DWORD dwAppDomainId, + /* [in] */ FExecuteInAppDomainCallback pCallback, + /* [in] */ void *cookie); + + HRESULT ( STDMETHODCALLTYPE *GetCurrentAppDomainId )( + ICLRRuntimeHost2 * This, + /* [out] */ DWORD *pdwAppDomainId); + + HRESULT ( STDMETHODCALLTYPE *ExecuteApplication )( + ICLRRuntimeHost2 * This, + /* [in] */ LPCWSTR pwzAppFullName, + /* [in] */ DWORD dwManifestPaths, + /* [in] */ LPCWSTR *ppwzManifestPaths, + /* [in] */ DWORD dwActivationData, + /* [in] */ LPCWSTR *ppwzActivationData, + /* [out] */ int *pReturnValue); + + HRESULT ( STDMETHODCALLTYPE *ExecuteInDefaultAppDomain )( + ICLRRuntimeHost2 * This, + /* [in] */ LPCWSTR pwzAssemblyPath, + /* [in] */ LPCWSTR pwzTypeName, + /* [in] */ LPCWSTR pwzMethodName, + /* [in] */ LPCWSTR pwzArgument, + /* [out] */ DWORD *pReturnValue); + + HRESULT ( STDMETHODCALLTYPE *CreateAppDomainWithManager )( + ICLRRuntimeHost2 * This, + /* [in] */ LPCWSTR wszFriendlyName, + /* [in] */ DWORD dwFlags, + /* [in] */ LPCWSTR wszAppDomainManagerAssemblyName, + /* [in] */ LPCWSTR wszAppDomainManagerTypeName, + /* [in] */ int nProperties, + /* [in] */ LPCWSTR *pPropertyNames, + /* [in] */ LPCWSTR *pPropertyValues, + /* [out] */ DWORD *pAppDomainID); + + HRESULT ( STDMETHODCALLTYPE *CreateDelegate )( + ICLRRuntimeHost2 * This, + /* [in] */ DWORD appDomainID, + /* [in] */ LPCWSTR wszAssemblyName, + /* [in] */ LPCWSTR wszClassName, + /* [in] */ LPCWSTR wszMethodName, + /* [out] */ INT_PTR *fnPtr); + + HRESULT ( STDMETHODCALLTYPE *Authenticate )( + ICLRRuntimeHost2 * This, + /* [in] */ ULONGLONG authKey); + + HRESULT ( STDMETHODCALLTYPE *RegisterMacEHPort )( + ICLRRuntimeHost2 * This); + + HRESULT ( STDMETHODCALLTYPE *SetStartupFlags )( + ICLRRuntimeHost2 * This, + /* [in] */ STARTUP_FLAGS dwFlags); + + HRESULT ( STDMETHODCALLTYPE *DllGetActivationFactory )( + ICLRRuntimeHost2 * This, + /* [in] */ DWORD appDomainID, + /* [in] */ LPCWSTR wszTypeName, + /* [out] */ IActivationFactory **factory); + + HRESULT ( STDMETHODCALLTYPE *ExecuteAssembly )( + ICLRRuntimeHost2 * This, + /* [in] */ DWORD dwAppDomainId, + /* [in] */ LPCWSTR pwzAssemblyPath, + /* [in] */ int argc, + /* [in] */ LPCWSTR *argv, + /* [out] */ DWORD *pReturnValue); + + END_INTERFACE + } ICLRRuntimeHost2Vtbl; + + interface ICLRRuntimeHost2 + { + CONST_VTBL struct ICLRRuntimeHost2Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ICLRRuntimeHost2_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ICLRRuntimeHost2_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ICLRRuntimeHost2_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ICLRRuntimeHost2_Start(This) \ + ( (This)->lpVtbl -> Start(This) ) + +#define ICLRRuntimeHost2_Stop(This) \ + ( (This)->lpVtbl -> Stop(This) ) + +#define ICLRRuntimeHost2_SetHostControl(This,pHostControl) \ + ( (This)->lpVtbl -> SetHostControl(This,pHostControl) ) + +#define ICLRRuntimeHost2_GetCLRControl(This,pCLRControl) \ + ( (This)->lpVtbl -> GetCLRControl(This,pCLRControl) ) + +#define ICLRRuntimeHost2_UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone) \ + ( (This)->lpVtbl -> UnloadAppDomain(This,dwAppDomainId,fWaitUntilDone) ) + +#define ICLRRuntimeHost2_ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie) \ + ( (This)->lpVtbl -> ExecuteInAppDomain(This,dwAppDomainId,pCallback,cookie) ) + +#define ICLRRuntimeHost2_GetCurrentAppDomainId(This,pdwAppDomainId) \ + ( (This)->lpVtbl -> GetCurrentAppDomainId(This,pdwAppDomainId) ) + +#define ICLRRuntimeHost2_ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue) \ + ( (This)->lpVtbl -> ExecuteApplication(This,pwzAppFullName,dwManifestPaths,ppwzManifestPaths,dwActivationData,ppwzActivationData,pReturnValue) ) + +#define ICLRRuntimeHost2_ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue) \ + ( (This)->lpVtbl -> ExecuteInDefaultAppDomain(This,pwzAssemblyPath,pwzTypeName,pwzMethodName,pwzArgument,pReturnValue) ) + + +#define ICLRRuntimeHost2_CreateAppDomainWithManager(This,wszFriendlyName,dwFlags,wszAppDomainManagerAssemblyName,wszAppDomainManagerTypeName,nProperties,pPropertyNames,pPropertyValues,pAppDomainID) \ + ( (This)->lpVtbl -> CreateAppDomainWithManager(This,wszFriendlyName,dwFlags,wszAppDomainManagerAssemblyName,wszAppDomainManagerTypeName,nProperties,pPropertyNames,pPropertyValues,pAppDomainID) ) + +#define ICLRRuntimeHost2_CreateDelegate(This,appDomainID,wszAssemblyName,wszClassName,wszMethodName,fnPtr) \ + ( (This)->lpVtbl -> CreateDelegate(This,appDomainID,wszAssemblyName,wszClassName,wszMethodName,fnPtr) ) + +#define ICLRRuntimeHost2_Authenticate(This,authKey) \ + ( (This)->lpVtbl -> Authenticate(This,authKey) ) + +#define ICLRRuntimeHost2_RegisterMacEHPort(This) \ + ( (This)->lpVtbl -> RegisterMacEHPort(This) ) + +#define ICLRRuntimeHost2_SetStartupFlags(This,dwFlags) \ + ( (This)->lpVtbl -> SetStartupFlags(This,dwFlags) ) + +#define ICLRRuntimeHost2_DllGetActivationFactory(This,appDomainID,wszTypeName,factory) \ + ( (This)->lpVtbl -> DllGetActivationFactory(This,appDomainID,wszTypeName,factory) ) + +#define ICLRRuntimeHost2_ExecuteAssembly(This,dwAppDomainId,pwzAssemblyPath,argc,argv,pReturnValue) \ + ( (This)->lpVtbl -> ExecuteAssembly(This,dwAppDomainId,pwzAssemblyPath,argc,argv,pReturnValue) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ICLRRuntimeHost2_INTERFACE_DEFINED__ */ + + +#ifndef __ICLRExecutionManager_INTERFACE_DEFINED__ +#define __ICLRExecutionManager_INTERFACE_DEFINED__ + +/* interface ICLRExecutionManager */ +/* [object][local][unique][helpstring][version][uuid] */ + + +EXTERN_C const IID IID_ICLRExecutionManager; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("1000A3E7-B420-4620-AE30-FB19B587AD1D") + ICLRExecutionManager : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE Pause( + /* [in] */ DWORD dwAppDomainId, + /* [in] */ DWORD dwFlags) = 0; + + virtual HRESULT STDMETHODCALLTYPE Resume( + /* [in] */ DWORD dwAppDomainId) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ICLRExecutionManagerVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ICLRExecutionManager * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ICLRExecutionManager * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ICLRExecutionManager * This); + + HRESULT ( STDMETHODCALLTYPE *Pause )( + ICLRExecutionManager * This, + /* [in] */ DWORD dwAppDomainId, + /* [in] */ DWORD dwFlags); + + HRESULT ( STDMETHODCALLTYPE *Resume )( + ICLRExecutionManager * This, + /* [in] */ DWORD dwAppDomainId); + + END_INTERFACE + } ICLRExecutionManagerVtbl; + + interface ICLRExecutionManager + { + CONST_VTBL struct ICLRExecutionManagerVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ICLRExecutionManager_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ICLRExecutionManager_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ICLRExecutionManager_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ICLRExecutionManager_Pause(This,dwAppDomainId,dwFlags) \ + ( (This)->lpVtbl -> Pause(This,dwAppDomainId,dwFlags) ) + +#define ICLRExecutionManager_Resume(This,dwAppDomainId) \ + ( (This)->lpVtbl -> Resume(This,dwAppDomainId) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ICLRExecutionManager_INTERFACE_DEFINED__ */ + + +#ifndef __IHostNetCFDebugControlManager_INTERFACE_DEFINED__ +#define __IHostNetCFDebugControlManager_INTERFACE_DEFINED__ + +/* interface IHostNetCFDebugControlManager */ +/* [object][local][unique][helpstring][version][uuid] */ + + +EXTERN_C const IID IID_IHostNetCFDebugControlManager; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("F2833A0C-F944-48d8-940E-F59425EDBFCF") + IHostNetCFDebugControlManager : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE NotifyPause( + DWORD dwReserved) = 0; + + virtual HRESULT STDMETHODCALLTYPE NotifyResume( + DWORD dwReserved) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IHostNetCFDebugControlManagerVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IHostNetCFDebugControlManager * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IHostNetCFDebugControlManager * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IHostNetCFDebugControlManager * This); + + HRESULT ( STDMETHODCALLTYPE *NotifyPause )( + IHostNetCFDebugControlManager * This, + DWORD dwReserved); + + HRESULT ( STDMETHODCALLTYPE *NotifyResume )( + IHostNetCFDebugControlManager * This, + DWORD dwReserved); + + END_INTERFACE + } IHostNetCFDebugControlManagerVtbl; + + interface IHostNetCFDebugControlManager + { + CONST_VTBL struct IHostNetCFDebugControlManagerVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IHostNetCFDebugControlManager_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IHostNetCFDebugControlManager_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IHostNetCFDebugControlManager_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IHostNetCFDebugControlManager_NotifyPause(This,dwReserved) \ + ( (This)->lpVtbl -> NotifyPause(This,dwReserved) ) + +#define IHostNetCFDebugControlManager_NotifyResume(This,dwReserved) \ + ( (This)->lpVtbl -> NotifyResume(This,dwReserved) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IHostNetCFDebugControlManager_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_mscoree_0000_0013 */ +/* [local] */ + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0013_0001 + { + eNoChecks = 0, + eSynchronization = 0x1, + eSharedState = 0x2, + eExternalProcessMgmt = 0x4, + eSelfAffectingProcessMgmt = 0x8, + eExternalThreading = 0x10, + eSelfAffectingThreading = 0x20, + eSecurityInfrastructure = 0x40, + eUI = 0x80, + eMayLeakOnAbort = 0x100, + eAll = 0x1ff + } EApiCategories; + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0013_0002 + { + eInitializeNewDomainFlags_None = 0, + eInitializeNewDomainFlags_NoSecurityChanges = 0x2 + } EInitializeNewDomainFlags; + + + +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0013_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0013_v0_0_s_ifspec; + + +#ifndef __mscoree_LIBRARY_DEFINED__ +#define __mscoree_LIBRARY_DEFINED__ + +/* library mscoree */ +/* [helpstring][version][uuid] */ + +#define CCW_PTR int * + +EXTERN_C const IID LIBID_mscoree; + +#ifndef __ITypeName_INTERFACE_DEFINED__ +#define __ITypeName_INTERFACE_DEFINED__ + +/* interface ITypeName */ +/* [unique][helpstring][uuid][oleautomation][object] */ + + +EXTERN_C const IID IID_ITypeName; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("B81FF171-20F3-11d2-8DCC-00A0C9B00522") + ITypeName : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE GetNameCount( + /* [retval][out] */ DWORD *pCount) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetNames( + /* [in] */ DWORD count, + /* [out] */ BSTR *rgbszNames, + /* [retval][out] */ DWORD *pCount) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetTypeArgumentCount( + /* [retval][out] */ DWORD *pCount) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetTypeArguments( + /* [in] */ DWORD count, + /* [out] */ ITypeName **rgpArguments, + /* [retval][out] */ DWORD *pCount) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetModifierLength( + /* [retval][out] */ DWORD *pCount) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetModifiers( + /* [in] */ DWORD count, + /* [out] */ DWORD *rgModifiers, + /* [retval][out] */ DWORD *pCount) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetAssemblyName( + /* [retval][out] */ BSTR *rgbszAssemblyNames) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ITypeNameVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ITypeName * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ITypeName * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ITypeName * This); + + HRESULT ( STDMETHODCALLTYPE *GetNameCount )( + ITypeName * This, + /* [retval][out] */ DWORD *pCount); + + HRESULT ( STDMETHODCALLTYPE *GetNames )( + ITypeName * This, + /* [in] */ DWORD count, + /* [out] */ BSTR *rgbszNames, + /* [retval][out] */ DWORD *pCount); + + HRESULT ( STDMETHODCALLTYPE *GetTypeArgumentCount )( + ITypeName * This, + /* [retval][out] */ DWORD *pCount); + + HRESULT ( STDMETHODCALLTYPE *GetTypeArguments )( + ITypeName * This, + /* [in] */ DWORD count, + /* [out] */ ITypeName **rgpArguments, + /* [retval][out] */ DWORD *pCount); + + HRESULT ( STDMETHODCALLTYPE *GetModifierLength )( + ITypeName * This, + /* [retval][out] */ DWORD *pCount); + + HRESULT ( STDMETHODCALLTYPE *GetModifiers )( + ITypeName * This, + /* [in] */ DWORD count, + /* [out] */ DWORD *rgModifiers, + /* [retval][out] */ DWORD *pCount); + + HRESULT ( STDMETHODCALLTYPE *GetAssemblyName )( + ITypeName * This, + /* [retval][out] */ BSTR *rgbszAssemblyNames); + + END_INTERFACE + } ITypeNameVtbl; + + interface ITypeName + { + CONST_VTBL struct ITypeNameVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ITypeName_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ITypeName_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ITypeName_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ITypeName_GetNameCount(This,pCount) \ + ( (This)->lpVtbl -> GetNameCount(This,pCount) ) + +#define ITypeName_GetNames(This,count,rgbszNames,pCount) \ + ( (This)->lpVtbl -> GetNames(This,count,rgbszNames,pCount) ) + +#define ITypeName_GetTypeArgumentCount(This,pCount) \ + ( (This)->lpVtbl -> GetTypeArgumentCount(This,pCount) ) + +#define ITypeName_GetTypeArguments(This,count,rgpArguments,pCount) \ + ( (This)->lpVtbl -> GetTypeArguments(This,count,rgpArguments,pCount) ) + +#define ITypeName_GetModifierLength(This,pCount) \ + ( (This)->lpVtbl -> GetModifierLength(This,pCount) ) + +#define ITypeName_GetModifiers(This,count,rgModifiers,pCount) \ + ( (This)->lpVtbl -> GetModifiers(This,count,rgModifiers,pCount) ) + +#define ITypeName_GetAssemblyName(This,rgbszAssemblyNames) \ + ( (This)->lpVtbl -> GetAssemblyName(This,rgbszAssemblyNames) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ITypeName_INTERFACE_DEFINED__ */ + + +#ifndef __ITypeNameBuilder_INTERFACE_DEFINED__ +#define __ITypeNameBuilder_INTERFACE_DEFINED__ + +/* interface ITypeNameBuilder */ +/* [unique][helpstring][uuid][oleautomation][object] */ + + +EXTERN_C const IID IID_ITypeNameBuilder; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("B81FF171-20F3-11d2-8DCC-00A0C9B00523") + ITypeNameBuilder : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE OpenGenericArguments( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE CloseGenericArguments( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE OpenGenericArgument( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE CloseGenericArgument( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE AddName( + /* [in] */ LPCWSTR szName) = 0; + + virtual HRESULT STDMETHODCALLTYPE AddPointer( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE AddByRef( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE AddSzArray( void) = 0; + + virtual HRESULT STDMETHODCALLTYPE AddArray( + /* [in] */ DWORD rank) = 0; + + virtual HRESULT STDMETHODCALLTYPE AddAssemblySpec( + /* [in] */ LPCWSTR szAssemblySpec) = 0; + + virtual HRESULT STDMETHODCALLTYPE ToString( + /* [retval][out] */ BSTR *pszStringRepresentation) = 0; + + virtual HRESULT STDMETHODCALLTYPE Clear( void) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ITypeNameBuilderVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ITypeNameBuilder * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ITypeNameBuilder * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ITypeNameBuilder * This); + + HRESULT ( STDMETHODCALLTYPE *OpenGenericArguments )( + ITypeNameBuilder * This); + + HRESULT ( STDMETHODCALLTYPE *CloseGenericArguments )( + ITypeNameBuilder * This); + + HRESULT ( STDMETHODCALLTYPE *OpenGenericArgument )( + ITypeNameBuilder * This); + + HRESULT ( STDMETHODCALLTYPE *CloseGenericArgument )( + ITypeNameBuilder * This); + + HRESULT ( STDMETHODCALLTYPE *AddName )( + ITypeNameBuilder * This, + /* [in] */ LPCWSTR szName); + + HRESULT ( STDMETHODCALLTYPE *AddPointer )( + ITypeNameBuilder * This); + + HRESULT ( STDMETHODCALLTYPE *AddByRef )( + ITypeNameBuilder * This); + + HRESULT ( STDMETHODCALLTYPE *AddSzArray )( + ITypeNameBuilder * This); + + HRESULT ( STDMETHODCALLTYPE *AddArray )( + ITypeNameBuilder * This, + /* [in] */ DWORD rank); + + HRESULT ( STDMETHODCALLTYPE *AddAssemblySpec )( + ITypeNameBuilder * This, + /* [in] */ LPCWSTR szAssemblySpec); + + HRESULT ( STDMETHODCALLTYPE *ToString )( + ITypeNameBuilder * This, + /* [retval][out] */ BSTR *pszStringRepresentation); + + HRESULT ( STDMETHODCALLTYPE *Clear )( + ITypeNameBuilder * This); + + END_INTERFACE + } ITypeNameBuilderVtbl; + + interface ITypeNameBuilder + { + CONST_VTBL struct ITypeNameBuilderVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ITypeNameBuilder_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ITypeNameBuilder_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ITypeNameBuilder_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ITypeNameBuilder_OpenGenericArguments(This) \ + ( (This)->lpVtbl -> OpenGenericArguments(This) ) + +#define ITypeNameBuilder_CloseGenericArguments(This) \ + ( (This)->lpVtbl -> CloseGenericArguments(This) ) + +#define ITypeNameBuilder_OpenGenericArgument(This) \ + ( (This)->lpVtbl -> OpenGenericArgument(This) ) + +#define ITypeNameBuilder_CloseGenericArgument(This) \ + ( (This)->lpVtbl -> CloseGenericArgument(This) ) + +#define ITypeNameBuilder_AddName(This,szName) \ + ( (This)->lpVtbl -> AddName(This,szName) ) + +#define ITypeNameBuilder_AddPointer(This) \ + ( (This)->lpVtbl -> AddPointer(This) ) + +#define ITypeNameBuilder_AddByRef(This) \ + ( (This)->lpVtbl -> AddByRef(This) ) + +#define ITypeNameBuilder_AddSzArray(This) \ + ( (This)->lpVtbl -> AddSzArray(This) ) + +#define ITypeNameBuilder_AddArray(This,rank) \ + ( (This)->lpVtbl -> AddArray(This,rank) ) + +#define ITypeNameBuilder_AddAssemblySpec(This,szAssemblySpec) \ + ( (This)->lpVtbl -> AddAssemblySpec(This,szAssemblySpec) ) + +#define ITypeNameBuilder_ToString(This,pszStringRepresentation) \ + ( (This)->lpVtbl -> ToString(This,pszStringRepresentation) ) + +#define ITypeNameBuilder_Clear(This) \ + ( (This)->lpVtbl -> Clear(This) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ITypeNameBuilder_INTERFACE_DEFINED__ */ + + +#ifndef __ITypeNameFactory_INTERFACE_DEFINED__ +#define __ITypeNameFactory_INTERFACE_DEFINED__ + +/* interface ITypeNameFactory */ +/* [unique][helpstring][uuid][oleautomation][object] */ + + +EXTERN_C const IID IID_ITypeNameFactory; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("B81FF171-20F3-11d2-8DCC-00A0C9B00521") + ITypeNameFactory : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE ParseTypeName( + /* [in] */ LPCWSTR szName, + /* [out] */ DWORD *pError, + /* [retval][out] */ ITypeName **ppTypeName) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetTypeNameBuilder( + /* [retval][out] */ ITypeNameBuilder **ppTypeBuilder) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ITypeNameFactoryVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ITypeNameFactory * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ITypeNameFactory * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ITypeNameFactory * This); + + HRESULT ( STDMETHODCALLTYPE *ParseTypeName )( + ITypeNameFactory * This, + /* [in] */ LPCWSTR szName, + /* [out] */ DWORD *pError, + /* [retval][out] */ ITypeName **ppTypeName); + + HRESULT ( STDMETHODCALLTYPE *GetTypeNameBuilder )( + ITypeNameFactory * This, + /* [retval][out] */ ITypeNameBuilder **ppTypeBuilder); + + END_INTERFACE + } ITypeNameFactoryVtbl; + + interface ITypeNameFactory + { + CONST_VTBL struct ITypeNameFactoryVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ITypeNameFactory_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ITypeNameFactory_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ITypeNameFactory_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ITypeNameFactory_ParseTypeName(This,szName,pError,ppTypeName) \ + ( (This)->lpVtbl -> ParseTypeName(This,szName,pError,ppTypeName) ) + +#define ITypeNameFactory_GetTypeNameBuilder(This,ppTypeBuilder) \ + ( (This)->lpVtbl -> GetTypeNameBuilder(This,ppTypeBuilder) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ITypeNameFactory_INTERFACE_DEFINED__ */ + + +#ifndef __IManagedObject_INTERFACE_DEFINED__ +#define __IManagedObject_INTERFACE_DEFINED__ + +/* interface IManagedObject */ +/* [proxy][unique][helpstring][uuid][oleautomation][object] */ + + +EXTERN_C const IID IID_IManagedObject; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("C3FCC19E-A970-11d2-8B5A-00A0C9B7C9C4") + IManagedObject : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE GetSerializedBuffer( + /* [out] */ BSTR *pBSTR) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetObjectIdentity( + /* [out] */ BSTR *pBSTRGUID, + /* [out] */ int *AppDomainID, + /* [out] */ int *pCCW) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IManagedObjectVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IManagedObject * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IManagedObject * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IManagedObject * This); + + HRESULT ( STDMETHODCALLTYPE *GetSerializedBuffer )( + IManagedObject * This, + /* [out] */ BSTR *pBSTR); + + HRESULT ( STDMETHODCALLTYPE *GetObjectIdentity )( + IManagedObject * This, + /* [out] */ BSTR *pBSTRGUID, + /* [out] */ int *AppDomainID, + /* [out] */ int *pCCW); + + END_INTERFACE + } IManagedObjectVtbl; + + interface IManagedObject + { + CONST_VTBL struct IManagedObjectVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IManagedObject_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IManagedObject_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IManagedObject_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IManagedObject_GetSerializedBuffer(This,pBSTR) \ + ( (This)->lpVtbl -> GetSerializedBuffer(This,pBSTR) ) + +#define IManagedObject_GetObjectIdentity(This,pBSTRGUID,AppDomainID,pCCW) \ + ( (This)->lpVtbl -> GetObjectIdentity(This,pBSTRGUID,AppDomainID,pCCW) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IManagedObject_INTERFACE_DEFINED__ */ + + +EXTERN_C const CLSID CLSID_ComCallUnmarshal; + +#ifdef __cplusplus + +class DECLSPEC_UUID("3F281000-E95A-11d2-886B-00C04F869F04") +ComCallUnmarshal; +#endif + +EXTERN_C const CLSID CLSID_ComCallUnmarshalV4; + +#ifdef __cplusplus + +class DECLSPEC_UUID("45FB4600-E6E8-4928-B25E-50476FF79425") +ComCallUnmarshalV4; +#endif + +EXTERN_C const CLSID CLSID_CLRRuntimeHost; + +#ifdef __cplusplus + +class DECLSPEC_UUID("90F1A06E-7712-4762-86B5-7A5EBA6BDB02") +CLRRuntimeHost; +#endif + +EXTERN_C const CLSID CLSID_TypeNameFactory; + +#ifdef __cplusplus + +class DECLSPEC_UUID("B81FF171-20F3-11d2-8DCC-00A0C9B00525") +TypeNameFactory; +#endif +#endif /* __mscoree_LIBRARY_DEFINED__ */ + +/* interface __MIDL_itf_mscoree_0000_0014 */ +/* [local] */ + +typedef /* [public] */ +enum __MIDL___MIDL_itf_mscoree_0000_0014_0001 + { + eCurrentContext = 0, + eRestrictedContext = 0x1 + } EContextType; + + + +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0014_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0014_v0_0_s_ifspec; + +#ifndef __ICLRAppDomainResourceMonitor_INTERFACE_DEFINED__ +#define __ICLRAppDomainResourceMonitor_INTERFACE_DEFINED__ + +/* interface ICLRAppDomainResourceMonitor */ +/* [object][local][unique][helpstring][uuid][version] */ + + +EXTERN_C const IID IID_ICLRAppDomainResourceMonitor; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("c62de18c-2e23-4aea-8423-b40c1fc59eae") + ICLRAppDomainResourceMonitor : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE GetCurrentAllocated( + /* [in] */ DWORD dwAppDomainId, + /* [out] */ ULONGLONG *pBytesAllocated) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetCurrentSurvived( + /* [in] */ DWORD dwAppDomainId, + /* [out] */ ULONGLONG *pAppDomainBytesSurvived, + /* [out] */ ULONGLONG *pTotalBytesSurvived) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetCurrentCpuTime( + /* [in] */ DWORD dwAppDomainId, + /* [out] */ ULONGLONG *pMilliseconds) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ICLRAppDomainResourceMonitorVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ICLRAppDomainResourceMonitor * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ICLRAppDomainResourceMonitor * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ICLRAppDomainResourceMonitor * This); + + HRESULT ( STDMETHODCALLTYPE *GetCurrentAllocated )( + ICLRAppDomainResourceMonitor * This, + /* [in] */ DWORD dwAppDomainId, + /* [out] */ ULONGLONG *pBytesAllocated); + + HRESULT ( STDMETHODCALLTYPE *GetCurrentSurvived )( + ICLRAppDomainResourceMonitor * This, + /* [in] */ DWORD dwAppDomainId, + /* [out] */ ULONGLONG *pAppDomainBytesSurvived, + /* [out] */ ULONGLONG *pTotalBytesSurvived); + + HRESULT ( STDMETHODCALLTYPE *GetCurrentCpuTime )( + ICLRAppDomainResourceMonitor * This, + /* [in] */ DWORD dwAppDomainId, + /* [out] */ ULONGLONG *pMilliseconds); + + END_INTERFACE + } ICLRAppDomainResourceMonitorVtbl; + + interface ICLRAppDomainResourceMonitor + { + CONST_VTBL struct ICLRAppDomainResourceMonitorVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ICLRAppDomainResourceMonitor_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ICLRAppDomainResourceMonitor_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ICLRAppDomainResourceMonitor_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ICLRAppDomainResourceMonitor_GetCurrentAllocated(This,dwAppDomainId,pBytesAllocated) \ + ( (This)->lpVtbl -> GetCurrentAllocated(This,dwAppDomainId,pBytesAllocated) ) + +#define ICLRAppDomainResourceMonitor_GetCurrentSurvived(This,dwAppDomainId,pAppDomainBytesSurvived,pTotalBytesSurvived) \ + ( (This)->lpVtbl -> GetCurrentSurvived(This,dwAppDomainId,pAppDomainBytesSurvived,pTotalBytesSurvived) ) + +#define ICLRAppDomainResourceMonitor_GetCurrentCpuTime(This,dwAppDomainId,pMilliseconds) \ + ( (This)->lpVtbl -> GetCurrentCpuTime(This,dwAppDomainId,pMilliseconds) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ICLRAppDomainResourceMonitor_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_mscoree_0000_0015 */ +/* [local] */ + +#undef DEPRECATED_CLR_STDAPI +#undef DECLARE_DEPRECATED +#undef DEPRECATED_CLR_API_MESG + + +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0015_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_mscoree_0000_0015_v0_0_s_ifspec; + +/* Additional Prototypes for ALL interfaces */ + +/* end of Additional Prototypes */ + +#ifdef __cplusplus +} +#endif + +#endif + + diff --git a/src/uwp/Host/UWPHost/native.rc b/src/uwp/Host/UWPHost/native.rc new file mode 100644 index 00000000..62aa3957 --- /dev/null +++ b/src/uwp/Host/UWPHost/native.rc @@ -0,0 +1,40 @@ +#include "version_info.h" + +VS_VERSION_INFO VERSIONINFO +FILEVERSION VER_FILEVERSION +PRODUCTVERSION VER_PRODUCTVERSION +FILEFLAGSMASK VS_FFI_FILEFLAGSMASK +FILEFLAGS VER_DEBUG +FILEOS VOS__WINDOWS32 +FILETYPE VFT_DLL +FILESUBTYPE VFT2_UNKNOWN +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904E4" + BEGIN + VALUE "CompanyName", VER_COMPANYNAME_STR + VALUE "FileDescription", VER_FILEDESCRIPTION_STR + VALUE "FileVersion", VER_FILEVERSION_STR + VALUE "InternalName", VER_INTERNALNAME_STR + VALUE "LegalCopyright", VER_LEGALCOPYRIGHT_STR + VALUE "OriginalFilename", VER_ORIGINALFILENAME_STR + VALUE "ProductName", VER_PRODUCTNAME_STR + VALUE "ProductVersion", VER_PRODUCTVERSION_STR + END + END + + BLOCK "VarFileInfo" + BEGIN + /* The following line should only be modified for localized versions. */ + /* It consists of any number of WORD,WORD pairs, with each pair */ + /* describing a language,codepage combination supported by the file. */ + /* */ + /* For example, a file might have values "0x409,1252" indicating that it */ + /* supports English language (0x409) in the Windows ANSI codepage (1252). */ + + VALUE "Translation", 0x409, 1252 + + END +END + diff --git a/src/uwp/Host/UWPShim/CMakeLists.txt b/src/uwp/Host/UWPShim/CMakeLists.txt new file mode 100644 index 00000000..96a05b68 --- /dev/null +++ b/src/uwp/Host/UWPShim/CMakeLists.txt @@ -0,0 +1,11 @@ +include_directories("${CLI_CMAKE_RESOURCE_DIR}/uwpshim") +add_executable(UWPShim + uwpshim.cpp + native.rc +) + +target_link_libraries(UWPShim + UWPHost +) + +install(TARGETS UWPShim DESTINATION .) diff --git a/src/uwp/Host/UWPShim/UWPShim.cpp b/src/uwp/Host/UWPShim/UWPShim.cpp new file mode 100644 index 00000000..85111ab7 --- /dev/null +++ b/src/uwp/Host/UWPShim/UWPShim.cpp @@ -0,0 +1,60 @@ +// +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. +// + + +// +// A simple in-app shim for UWP app activation +// + +#include "windows.h" + +// Function forwarder to DllGetActivationFactory in UWPHost +// App model requires the inproc server for WinRt components to be in the package which +// installs the component itself. UWPHost is not app-local hence can't be declared as +// inproc server. Instead UWPShim will be the inproc server which merely forwards +// the request to UWPHost +#pragma comment(linker, "/export:DllGetActivationFactory=uwphost.DllGetActivationFactory") + +extern HRESULT ExecuteAssembly(_In_z_ wchar_t *entryPointAssemblyFileName, int argc, LPCWSTR* argv, DWORD *exitCode); + +#ifndef IfFailRet +#define IfFailRet(EXPR) \ +do { errno_t x = (EXPR); if(FAILED(x)) { return (x); } } while (0) +#endif + +int __cdecl wmain(const int argc, const wchar_t* argv[]) +{ + + DWORD exitCode = -1; + if (argc < 2) + { + // Invalid number of arguments + return -1; + } + + // This module is merely a shim to figure out what the actual EntryPoint assembly is and call the Host with + // that information. The EntryPoint would be found based on the following assumptions + // + // 1) Current module lives under the "CoreRuntime" subfolder of the AppX package installation folder. + // 2) It has the same name as the EntryPoint assembly that will reside in the parent folder (i.e. the AppX package installation folder). + + const wchar_t* pActivationModulePath = argv[0]; + + const wchar_t *pLastSlash = wcsrchr(pActivationModulePath, L'\\'); + if (pLastSlash == NULL) + { + return -1; + } + + wchar_t entryPointAssemblyFileName[MAX_PATH]; + IfFailRet(wcsncpy_s(entryPointAssemblyFileName, MAX_PATH, pActivationModulePath, pLastSlash-pActivationModulePath)); + IfFailRet(wcscat_s(entryPointAssemblyFileName, MAX_PATH, L"\\entrypoint")); + IfFailRet(wcscat_s(entryPointAssemblyFileName, MAX_PATH, pLastSlash)); + + auto success = ExecuteAssembly(entryPointAssemblyFileName, argc-1, &(argv[1]), &exitCode); + + return exitCode; +} + diff --git a/src/uwp/Host/UWPShim/native.rc b/src/uwp/Host/UWPShim/native.rc new file mode 100644 index 00000000..62aa3957 --- /dev/null +++ b/src/uwp/Host/UWPShim/native.rc @@ -0,0 +1,40 @@ +#include "version_info.h" + +VS_VERSION_INFO VERSIONINFO +FILEVERSION VER_FILEVERSION +PRODUCTVERSION VER_PRODUCTVERSION +FILEFLAGSMASK VS_FFI_FILEFLAGSMASK +FILEFLAGS VER_DEBUG +FILEOS VOS__WINDOWS32 +FILETYPE VFT_DLL +FILESUBTYPE VFT2_UNKNOWN +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904E4" + BEGIN + VALUE "CompanyName", VER_COMPANYNAME_STR + VALUE "FileDescription", VER_FILEDESCRIPTION_STR + VALUE "FileVersion", VER_FILEVERSION_STR + VALUE "InternalName", VER_INTERNALNAME_STR + VALUE "LegalCopyright", VER_LEGALCOPYRIGHT_STR + VALUE "OriginalFilename", VER_ORIGINALFILENAME_STR + VALUE "ProductName", VER_PRODUCTNAME_STR + VALUE "ProductVersion", VER_PRODUCTVERSION_STR + END + END + + BLOCK "VarFileInfo" + BEGIN + /* The following line should only be modified for localized versions. */ + /* It consists of any number of WORD,WORD pairs, with each pair */ + /* describing a language,codepage combination supported by the file. */ + /* */ + /* For example, a file might have values "0x409,1252" indicating that it */ + /* supports English language (0x409) in the Windows ANSI codepage (1252). */ + + VALUE "Translation", 0x409, 1252 + + END +END + diff --git a/src/uwp/Windows/gen-buildsys-win.bat b/src/uwp/Windows/gen-buildsys-win.bat new file mode 100644 index 00000000..04e6b0fd --- /dev/null +++ b/src/uwp/Windows/gen-buildsys-win.bat @@ -0,0 +1,54 @@ +@if "%_echo%" neq "on" echo off +rem +rem This file invokes cmake and generates the build system for windows. + +set argC=0 +for %%x in (%*) do Set /A argC+=1 + +if NOT %argC%==4 GOTO :USAGE +if %1=="/?" GOTO :USAGE + +echo %1 +echo %2 +echo %3 +echo %4 +echo %5 +echo %6 + +setlocal +set __sourceDir=%~dp0.. +:: VS 2015 is the minimum supported toolset +set __VSString=14 2015 + +:: Set the target architecture to a format cmake understands. ANYCPU defaults to x64 +set cm_BaseRid=win10-%2 +if /i "%2" == "x86" (set cm_Arch=I386&&set __VSString=%__VSString%) +if /i "%2" == "x64" (set cm_Arch=AMD64&&set __VSString=%__VSString% Win64) +if /i "%2" == "arm" (set cm_Arch=ARM&&set __VSString=%__VSString% ARM) + +set __ResourcesDir=%3 +set __OutputDir=%4 + +echo "Computed RID for native build is %cm_BaseRid%" + +if defined CMakePath goto DoGen + +:: Eval the output from probe-win1.ps1 +pushd "%__sourceDir%" +for /f "delims=" %%a in ('powershell -NoProfile -ExecutionPolicy ByPass "& .\Windows\probe-win.ps1"') do %%a +popd + +:DoGen +echo "%CMakePath%" %__sourceDir% %__SDKVersion% "-DCLI_CMAKE_PKG_RID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_PLATFORM_ARCH_%cm_Arch%=1" "-DCMAKE_INSTALL_PREFIX=%__OutputDir%" "-DCLI_CMAKE_RESOURCE_DIR:STRING=%__ResourcesDir%" -G "Visual Studio %__VSString%" + +"%CMakePath%" %__sourceDir% %__SDKVersion% "-DCLI_CMAKE_PKG_RID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_PLATFORM_ARCH_%cm_Arch%=1" "-DCMAKE_INSTALL_PREFIX=%__OutputDir%" "-DCLI_CMAKE_RESOURCE_DIR:STRING=%__ResourcesDir%" -G "Visual Studio %__VSString%" +endlocal +GOTO :DONE + +:USAGE + echo "Usage..." + echo "gen-buildsys-win.bat " + EXIT /B 1 + +:DONE + EXIT /B 0 \ No newline at end of file diff --git a/src/uwp/Windows/probe-win.ps1 b/src/uwp/Windows/probe-win.ps1 new file mode 100644 index 00000000..d1ae1fd5 --- /dev/null +++ b/src/uwp/Windows/probe-win.ps1 @@ -0,0 +1,65 @@ +# This file probes for the prerequisites for the build system, and outputs commands for eval'ing +# from the cmd scripts to set variables (and exit on error) + +function GetCMakeVersions +{ + $items = @() + $items += @(Get-ChildItem hklm:\SOFTWARE\Wow6432Node\Kitware -ErrorAction SilentlyContinue) + $items += @(Get-ChildItem hklm:\SOFTWARE\Kitware -ErrorAction SilentlyContinue) + return $items | Where-Object { $_.PSChildName.StartsWith("CMake ") } +} + +function GetCMakeInfo($regKey) +{ + # This no longer works for versions 3.5+ + try { + $version = [System.Version] $regKey.PSChildName.Split(' ')[1] + } + catch { + return $null + } + $cmakeDir = (Get-ItemProperty $regKey.PSPath).'(default)' + $cmakePath = [System.IO.Path]::Combine($cmakeDir, "bin\cmake.exe") + if (![System.IO.File]::Exists($cmakePath)) { + return $null + } + return @{'version' = $version; 'path' = $cmakePath} +} + +function LocateCMake +{ + $errorMsg = "CMake is a pre-requisite to build this repository but it was not found on the path. Please install CMake from http://www.cmake.org/download/ and ensure it is on your path." + $inPathPath = (get-command cmake.exe -ErrorAction SilentlyContinue).Path + if ($inPathPath -ne $null) { + return $inPathPath + } + # Check the default installation directory + $inDefaultDir = [System.IO.Path]::Combine(${Env:ProgramFiles(x86)}, "CMake\bin\cmake.exe") + if ([System.IO.File]::Exists($inDefaultDir)) { + return $inDefaultDir + } + # Let us hope that CMake keep using their current version scheme + $validVersions = @() + foreach ($regKey in GetCMakeVersions) { + $info = GetCMakeInfo($regKey) + if ($info -ne $null) { + $validVersions += @($info) + } + } + $newestCMakePath = ($validVersions | + Sort-Object -property @{Expression={$_.version}; Ascending=$false} | + Select-Object -first 1).path + if ($newestCMakePath -eq $null) { + Throw $errorMsg + } + return $newestCMakePath +} + +try { + $cmakePath = LocateCMake + [System.Console]::WriteLine("set CMakePath=" + $cmakePath) +} +catch { + [System.Console]::Error.WriteLine($_.Exception.Message) + [System.Console]::WriteLine("exit /b 1") +} diff --git a/src/uwp/build.cmd b/src/uwp/build.cmd new file mode 100644 index 00000000..96316b97 --- /dev/null +++ b/src/uwp/build.cmd @@ -0,0 +1,110 @@ +@if not defined _echo @echo off +setlocal + +:SetupArgs +:: Initialize the args that will be passed to cmake +set __nativeWindowsDir=%~dp0Windows +set __binDir=%~dp0..\..\Bin +set __rootDir=%~dp0..\.. +set __CMakeBinDir="" +set __IntermediatesDir="" +set __BuildArch=x64 +set __appContainer="" +set __VCBuildArch=x86_amd64 +set CMAKE_BUILD_TYPE=Debug +set "__LinkArgs= " +set "__LinkLibraries= " +set __PortableBuild=0 + +:Arg_Loop +if [%1] == [] goto :ToolsVersion +if /i [%1] == [Release] ( set CMAKE_BUILD_TYPE=Release&&shift&goto Arg_Loop) +if /i [%1] == [Debug] ( set CMAKE_BUILD_TYPE=Debug&&shift&goto Arg_Loop) + +if /i [%1] == [AnyCPU] ( set __BuildArch=x64&&set __VCBuildArch=x86_amd64&&shift&goto Arg_Loop) +if /i [%1] == [x86] ( set __BuildArch=x86&&set __VCBuildArch=x86&&shift&goto Arg_Loop) +if /i [%1] == [arm] ( set __BuildArch=arm&&set __VCBuildArch=x86_arm&&set __SDKVersion="-DCMAKE_SYSTEM_VERSION=10.0"&&shift&goto Arg_Loop) +if /i [%1] == [x64] ( set __BuildArch=x64&&set __VCBuildArch=x86_amd64&&shift&goto Arg_Loop) +if /i [%1] == [amd64] ( set __BuildArch=x64&&set __VCBuildArch=x86_amd64&&shift&goto Arg_Loop) + +if /i [%1] == [rid] ( set __TargetRid=%2&&shift&&shift&goto Arg_Loop) +shift +goto :Arg_Loop + +:ToolsVersion +:: Determine the tools version to pass to cmake/msbuild +if not defined VisualStudioVersion ( + if defined VS140COMNTOOLS ( + goto :VS2015 + ) + goto :MissingVersion +) +if "%VisualStudioVersion%"=="14.0" ( + goto :VS2015 +) + +:MissingVersion +:: Can't find VS 2013+ +echo Error: Visual Studio 2015 required +echo Please see https://github.com/dotnet/corefx/blob/master/Documentation/project-docs/developer-guide.md for build instructions. +exit /b 1 + +:VS2015 +:: Setup vars for VS2015 +set __VSVersion=vs2015 +set __PlatformToolset=v140 + +:: Set the environment for the native build +call "%VS140COMNTOOLS%\..\..\VC\vcvarsall.bat" %__VCBuildArch% + +:SetupDirs +:: Setup to cmake the native components +echo Commencing build of native UWP components +echo. + +if %__CMakeBinDir% == "" ( + set "__CMakeBinDir=%__binDir%\%__TargetRid%.%CMAKE_BUILD_TYPE%\uwphost" +) +if %__IntermediatesDir% == "" ( + set "__IntermediatesDir=%__binDir%\obj\%__TargetRid%.%CMAKE_BUILD_TYPE%\uwphost" +) +set "__ResourcesDir=%__binDir%\obj\%__TargetRid%.%CMAKE_BUILD_TYPE%\uwphostResourceFiles" +set "__CMakeBinDir=%__CMakeBinDir:\=/%" +set "__IntermediatesDir=%__IntermediatesDir:\=/%" + +set __SDKVersion="-DCMAKE_SYSTEM_VERSION=10.0" + +:: Check that the intermediate directory exists so we can place our cmake build tree there +if exist "%__IntermediatesDir%" rd /s /q "%__IntermediatesDir%" +if not exist "%__IntermediatesDir%" md "%__IntermediatesDir%" + +:: Regenerate the VS solution + +echo Calling "%__nativeWindowsDir%\gen-buildsys-win.bat" %~dp0 %__BuildArch% %__ResourcesDir% %__CMakeBinDir% +pushd "%__IntermediatesDir%" +call "%__nativeWindowsDir%\gen-buildsys-win.bat" %~dp0 %__BuildArch% %__ResourcesDir% %__CMakeBinDir% +popd + +:CheckForProj +:: Check that the project created by Cmake exists +if exist "%__IntermediatesDir%\ALL_BUILD.vcxproj" goto BuildNativeProj +goto :Failure + +:BuildNativeProj +:: Build the project created by Cmake +set __msbuildArgs=/p:Platform=%__BuildArch% /p:PlatformToolset="%__PlatformToolset%" + +cd %__rootDir% + +echo %__rootDir%\run.cmd build-native -- "%__IntermediatesDir%\ALL_BUILD.vcxproj" /t:rebuild /p:Configuration=%CMAKE_BUILD_TYPE% %__msbuildArgs% +call %__rootDir%\run.cmd build-native -- "%__IntermediatesDir%\ALL_BUILD.vcxproj" /t:rebuild /p:Configuration=%CMAKE_BUILD_TYPE% %__msbuildArgs% +IF ERRORLEVEL 1 ( + goto :Failure +) +echo Done building Native components +exit /B 0 + +:Failure +:: Build failed +echo Failed to generate native component build project! +exit /b 1 \ No newline at end of file diff --git a/src/uwp/build.proj b/src/uwp/build.proj new file mode 100644 index 00000000..d14f8e66 --- /dev/null +++ b/src/uwp/build.proj @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + $(ConfigurationGroup) $(TargetArchitecture) rid $(TargetRid) + + + + + + + + + + + + + + + diff --git a/src/uwp/dir.props b/src/uwp/dir.props new file mode 100644 index 00000000..f190c359 --- /dev/null +++ b/src/uwp/dir.props @@ -0,0 +1,4 @@ + + + + \ No newline at end of file From ecb15a2f7c4dd9f4d033766f8827fb4385fb1bb3 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Thu, 1 Jun 2017 09:30:59 -0700 Subject: [PATCH 500/625] Update CoreClr, CoreFx, Standard, WCF to preview1-25401-01, preview1-25401-06, preview1-25401-01, preview1-25401-01, respectively (#2583) --- dependencies.props | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dependencies.props b/dependencies.props index 43a59e18..5302ddcc 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 5345e5b4eac8279a97e744026f93e9f6ef1ccca3 - 5345e5b4eac8279a97e744026f93e9f6ef1ccca3 - 29b0e62fdbc8ac3ea4efd132421848502d6e8c4d - 29b0e62fdbc8ac3ea4efd132421848502d6e8c4d + a6407630f7f63db38f7be5a867f6f5c4f904ad31 + a6407630f7f63db38f7be5a867f6f5c4f904ad31 + a6407630f7f63db38f7be5a867f6f5c4f904ad31 + a6407630f7f63db38f7be5a867f6f5c4f904ad31 - 4.5.0-preview1-25401-02 + 4.5.0-preview1-25401-06 2.1.0-preview1-25324-02 - 2.1.0-preview1-25331-03 + 2.1.0-preview1-25401-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25331-01 + 2.1.0-preview1-25401-01 1.4.1 - 4.5.0-preview1-25331-01 + 4.5.0-preview1-25401-01 From b5d4f53b5458d068ba5202d641fa300989c96795 Mon Sep 17 00:00:00 2001 From: dotnet-bot Date: Thu, 1 Jun 2017 11:40:01 -0700 Subject: [PATCH 501/625] Update CoreClr to preview1-25401-02 --- dependencies.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.props b/dependencies.props index 5302ddcc..03bb0510 100644 --- a/dependencies.props +++ b/dependencies.props @@ -10,7 +10,7 @@ --> a6407630f7f63db38f7be5a867f6f5c4f904ad31 - a6407630f7f63db38f7be5a867f6f5c4f904ad31 + 661907e7c987821b9aa34c9e54ae526ba3d30cda a6407630f7f63db38f7be5a867f6f5c4f904ad31 a6407630f7f63db38f7be5a867f6f5c4f904ad31 @@ -18,7 +18,7 @@ 4.5.0-preview1-25401-06 2.1.0-preview1-25324-02 - 2.1.0-preview1-25401-01 + 2.1.0-preview1-25401-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.1.0-preview1-25401-01 1.4.1 From 9e7085b00ee2f639abc9c9b0a5d3942d6ec34125 Mon Sep 17 00:00:00 2001 From: karajas Date: Thu, 1 Jun 2017 11:41:33 -0700 Subject: [PATCH 502/625] Fix DEB installer names (Issue #2588) --- dir.props | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/dir.props b/dir.props index f58e352d..d884e078 100644 --- a/dir.props +++ b/dir.props @@ -286,10 +286,13 @@ - $(PackagesOutDir)dotnet-runtime- - $(PackagesOutDir)dotnet-host- - $(PackagesOutDir)dotnet-hostfxr- - $(PackagesOutDir)dotnet-runtime- + dotnet-host- + dotnet-hostfxr- + dotnet-runtime- + $(PackagesOutDir)$(DotnetRuntimeString) + $(PackagesOutDir)$(DotnetHostString) + $(PackagesOutDir)$(DotnetHostFxrString) + $(PackagesOutDir)$(DotnetRuntimeString) @@ -407,9 +410,9 @@ dotnet-host $(SharedHostDebPkgName.ToLower()) - $([System.IO.Path]::GetFileNameWithoutExtension('$(HostFxrInstallerFile)')) + $(DotnetHostFxrString)$(HostResolverVersion) $(HostFxrDebPkgName.ToLower()) - $([System.IO.Path]::GetFileNameWithoutExtension('$(SharedFrameworkInstallerFile)')) + $(DotnetRuntimeString)$(SharedFrameworkNugetVersion) $(SharedFxDebPkgName.ToLower()) From 30c1205931459b7edd32511263bfa136c53bec5a Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Thu, 1 Jun 2017 12:51:58 -0700 Subject: [PATCH 503/625] Update Runtime Installer [Windows] (#2574) * Removed Eula rich text box Updated package branding Added Welcome and Success page messages Added dummyEula as required by Burn authoring . It doesn't show up in UI. * Fixing the text truncation issue in Welcome page --- src/pkg/packaging/dir.props | 11 +- src/pkg/packaging/windows/package.targets | 2 +- .../windows/sharedframework/bundle.thm | 44 ++-- .../windows/sharedframework/bundle.wxl | 15 +- .../windows/sharedframework/bundle.wxs | 4 +- .../windows/sharedframework/dummyEula.rtf | 237 ++++++++++++++++++ 6 files changed, 287 insertions(+), 26 deletions(-) create mode 100644 src/pkg/packaging/windows/sharedframework/dummyEula.rtf diff --git a/src/pkg/packaging/dir.props b/src/pkg/packaging/dir.props index 708c4096..84e62702 100644 --- a/src/pkg/packaging/dir.props +++ b/src/pkg/packaging/dir.props @@ -23,10 +23,11 @@ - Microsoft .NET Core $(ProductionVersion) - Microsoft .NET Core $(ProductionVersion) $(ReleaseBrandSuffix) - $(ProductBrandPrefix) Host - $(ProductBrandPrefix) Host FX Resolver - $(ProductBrandPrefix) Runtime + Microsoft .NET Core + $(ProductionVersion) + $(ProductionVersion) $(ReleaseBrandSuffix) + $(ProductBrandPrefix) Host - $(ProductBrandSuffix) + $(ProductBrandPrefix) Host FX Resolver - $(ProductBrandSuffix) + $(ProductBrandPrefix) Runtime - $(ProductBrandSuffix) \ No newline at end of file diff --git a/src/pkg/packaging/windows/package.targets b/src/pkg/packaging/windows/package.targets index b2d93a30..e1b7145b 100644 --- a/src/pkg/packaging/windows/package.targets +++ b/src/pkg/packaging/windows/package.targets @@ -96,7 +96,7 @@ $(SharedHostInstallerFile) $(HostFxrInstallerFile) $(CombinedInstallerFile) - $(ProductBrandPrefix) Runtime + $(SharedFrameworkBrandName) "$(MsiArch)" "$(TargetArchitecture)" diff --git a/src/pkg/packaging/windows/sharedframework/bundle.thm b/src/pkg/packaging/windows/sharedframework/bundle.thm index 9c962acd..36275b5e 100644 --- a/src/pkg/packaging/windows/sharedframework/bundle.thm +++ b/src/pkg/packaging/windows/sharedframework/bundle.thm @@ -1,6 +1,6 @@ - #(loc.Caption) + #(loc.Caption) Segoe UI Segoe UI Segoe UI @@ -20,20 +20,21 @@ - - - #(loc.Motto) + - - #(loc.InstallAcceptCheckbox) - + #(loc.WelcomeHeaderMessage) + #(loc.WelcomeDescription) + #(loc.LearnMoreTitle) + #(loc.DocumentationLink) + #(loc.PrivacyStatementLink) + #(loc.MITLicenseLink) - + #(loc.OptionsHeader) #(loc.OptionsLocationLabel) @@ -43,7 +44,7 @@ - + #(loc.FilesInUseHeader) #(loc.FilesInUseLabel) @@ -58,7 +59,7 @@ - + #(loc.ProgressHeader) #(loc.ProgressLabel) @@ -68,7 +69,7 @@ - + #(loc.ModifyHeader) @@ -77,20 +78,29 @@ - + #(loc.SuccessHeader) - #(loc.SuccessInstallHeader) - #(loc.SuccessRepairHeader) - #(loc.SuccessUninstallHeader) + #(loc.SuccessInstallHeader) + #(loc.SuccessRepairHeader) + #(loc.SuccessUninstallHeader) #(loc.SuccessRestartText) + + #(loc.SuccessInstallLocation) + #(loc.SuccessInstallProductName) + #(loc.ResourcesHeader) + #(loc.DocumentationLink) + #(loc.RelaseNotesLink) + #(loc.TutorialLink) + #(loc.TelemetryLink) + - + #(loc.FailureHeader) #(loc.FailureInstallHeader) @@ -102,4 +112,4 @@ - \ No newline at end of file + diff --git a/src/pkg/packaging/windows/sharedframework/bundle.wxl b/src/pkg/packaging/windows/sharedframework/bundle.wxl index 243e8522..c9a8b3a4 100644 --- a/src/pkg/packaging/windows/sharedframework/bundle.wxl +++ b/src/pkg/packaging/windows/sharedframework/bundle.wxl @@ -36,7 +36,7 @@ Ready? Set? Let's go! &Close Repair Successfully Completed Uninstall Successfully Completed - Installation Successfully Completed + Installation was successful Setup Successful &Launch You must restart your computer before you can use the software. @@ -56,4 +56,17 @@ Ready? Set? Let's go! &Do not close applications. A reboot will be required. &OK &Cancel + .NET Core Runtime + .NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform, and supported by Microsoft. We hope you enjoy it! + Learn more about .NET Core + The following was installed at [DOTNETHOME] + - [BUNDLEMONIKER] + Resources + <A HREF="https://aka.ms/dotnet-docs">Documentation</A> + <A HREF="https://aka.ms/20-p2-rel-notes">Release Notes</A> + <A HREF="https://aka.ms/dotnet-tutorials">Tutorials</A> + <A HREF="https://aka.ms/dotnet-cli-telemetry">.NET Core Telemetry</A> + <A HREF="https://aka.ms/dev-privacy">Privacy Statement</A> + <A HREF="https://aka.ms/dotnet-license">MIT License</A> + diff --git a/src/pkg/packaging/windows/sharedframework/bundle.wxs b/src/pkg/packaging/windows/sharedframework/bundle.wxs index 03a10b86..602149b6 100644 --- a/src/pkg/packaging/windows/sharedframework/bundle.wxs +++ b/src/pkg/packaging/windows/sharedframework/bundle.wxs @@ -17,7 +17,7 @@ @@ -27,7 +27,7 @@ - + diff --git a/src/pkg/packaging/windows/sharedframework/dummyEula.rtf b/src/pkg/packaging/windows/sharedframework/dummyEula.rtf new file mode 100644 index 00000000..ebcd5ac3 --- /dev/null +++ b/src/pkg/packaging/windows/sharedframework/dummyEula.rtf @@ -0,0 +1,237 @@ +{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff31507\deff0\stshfdbch31505\stshfloch31506\stshfhich31506\stshfbi31507\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} +{\f37\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} +{\fdbmajor\f31501\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhimajor\f31502\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0302020204030204}Calibri Light;} +{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} +{\fdbminor\f31505\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;} +{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f376\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\f377\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} +{\f379\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f380\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f381\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f382\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} +{\f383\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f384\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f376\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\f377\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} +{\f379\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f380\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f381\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f382\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} +{\f383\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f384\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f746\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\f747\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;} +{\f749\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\f750\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\f751\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);}{\f752\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);} +{\f753\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\f754\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;} +{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;} +{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;} +{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbmajor\f31518\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} +{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);} +{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);} +{\fhimajor\f31528\fbidi \fswiss\fcharset238\fprq2 Calibri Light CE;}{\fhimajor\f31529\fbidi \fswiss\fcharset204\fprq2 Calibri Light Cyr;}{\fhimajor\f31531\fbidi \fswiss\fcharset161\fprq2 Calibri Light Greek;} +{\fhimajor\f31532\fbidi \fswiss\fcharset162\fprq2 Calibri Light Tur;}{\fhimajor\f31533\fbidi \fswiss\fcharset177\fprq2 Calibri Light (Hebrew);}{\fhimajor\f31534\fbidi \fswiss\fcharset178\fprq2 Calibri Light (Arabic);} +{\fhimajor\f31535\fbidi \fswiss\fcharset186\fprq2 Calibri Light Baltic;}{\fhimajor\f31536\fbidi \fswiss\fcharset163\fprq2 Calibri Light (Vietnamese);}{\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE;} +{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;} +{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;} +{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} +{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);} +{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);} +{\fdbminor\f31558\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;} +{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} +{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;} +{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;} +{\fhiminor\f31573\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);}{\fhiminor\f31574\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);}{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;} +{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\fbiminor\f31578\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} +{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);} +{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}} +{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0; +\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\*\defchp \fs22\loch\af31506\hich\af31506\dbch\af31505 }{\*\defpap \ql \li0\ri0\sa160\sl259\slmult1 +\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 +\ltrch\fcs0 \fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \snext0 \sqformat \spriority0 Normal;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\* +\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa160\sl259\slmult1 +\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden \sunhideused +Normal Table;}{\s15\ql \li0\ri0\widctlpar\tqc\tx4680\tqr\tx9360\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 +\fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext15 \slink16 \sunhideused \styrsid10564401 header;}{\*\cs16 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 +\sbasedon10 \slink15 \slocked \styrsid10564401 Header Char;}{\s17\ql \li0\ri0\widctlpar\tqc\tx4680\tqr\tx9360\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 +\fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext17 \slink18 \sunhideused \styrsid10564401 footer;}{\*\cs18 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 +\sbasedon10 \slink17 \slocked \styrsid10564401 Footer Char;}}{\*\rsidtbl \rsid2163051\rsid10564401}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim0}{\info +{\operator Rakesh Ranjan Singh}{\creatim\yr2017\mo5\dy30\hr17\min38}{\revtim\yr2017\mo5\dy30\hr17\min39}{\version2}{\edmins1}{\nofpages1}{\nofwords28}{\nofchars160}{\nofcharsws187}{\vern37}}{\*\userprops {\propname MSIP_Label_f42aa342-8706-4288-bd11-ebb85 +995028c_Enabled}\proptype30{\staticval True}{\propname MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId}\proptype30{\staticval 72f988bf-86f1-41af-91ab-2d7cd011db47}{\propname MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Ref}\proptype30 +{\staticval https://api.informationprotection.azure.com/api/72f988bf-86f1-41af-91ab-2d7cd011db47}{\propname MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetBy}\proptype30{\staticval raksingh@microsoft.com}{\propname MSIP_Label_f42aa342-8706-4288-bd11-e +bb85995028c_SetDate}\proptype30{\staticval 2017-05-30T17:39:57.6592568-07:00}{\propname MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Name}\proptype30{\staticval General}{\propname MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Application}\proptype30 +{\staticval Microsoft Azure Information Protection}{\propname MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Extended_MSFT_Method}\proptype30{\staticval Automatic}{\propname Sensitivity}\proptype30{\staticval General}}{\*\xmlnstbl {\xmlns1 http://schemas +.microsoft.com/office/word/2003/wordml}}\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect +\widowctrl\ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont0\relyonvml0\donotembedlingdata1\grfdocevents0\validatexml0\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors0\horzdoc\dghspace120\dgvspace120\dghorigin1701 +\dgvorigin1984\dghshow0\dgvshow3\jcompress\viewkind1\viewscale100\rsidroot10564401 \nouicompat \fet0{\*\wgrffmtfilter 2450}\nofeaturethrottle1\ilfomacatclnup0{\*\ftnsep \ltrpar \pard\plain \ltrpar +\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10564401 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 { +\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid2163051 \chftnsep +\par }}{\*\ftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10564401 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 +\fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid2163051 \chftnsepc +\par }}{\*\aftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10564401 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 +\fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid2163051 \chftnsep +\par }}{\*\aftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10564401 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 +\fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid2163051 \chftnsepc +\par }}\ltrpar \sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\headerl \ltrpar \pard\plain \ltrpar\s15\ql \li0\ri0\widctlpar\tqc\tx4680\tqr\tx9360\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 +\fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10564401 +\par }}{\headerr \ltrpar \pard\plain \ltrpar\s15\ql \li0\ri0\widctlpar\tqc\tx4680\tqr\tx9360\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 +\fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10564401 +\par }}{\footerl \ltrpar \pard\plain \ltrpar\s17\ql \li0\ri0\widctlpar\tqc\tx4680\tqr\tx9360\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 +\fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10564401 +\par }}{\footerr \ltrpar \pard\plain \ltrpar\s17\ql \li0\ri0\widctlpar\tqc\tx4680\tqr\tx9360\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 +\fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10564401 +\par }}{\headerf \ltrpar \pard\plain \ltrpar\s15\ql \li0\ri0\widctlpar\tqc\tx4680\tqr\tx9360\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 +\fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10564401 +\par }}{\footerf \ltrpar \pard\plain \ltrpar\s17\ql \li0\ri0\widctlpar\tqc\tx4680\tqr\tx9360\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 +\fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10564401 +\par }}{\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}} +{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8 +\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar\ql \li0\ri0\sa160\sl259\slmult1 +\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10564401 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 +\af31507 \ltrch\fcs0 \insrsid10564401 \hich\af31506\dbch\af31505\loch\f31506 This is a dummy file for Eula as required by \hich\af31506\dbch\af31505\loch\f31506 B\hich\af31506\dbch\af31505\loch\f31506 urn bundle \hich\af31506\dbch\af31505\loch\f31506 +. The bal.WixStandardBootstrapperApplication element must hav a value for exactly one of the LicenseFile or LicenseUrl attributes.}{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid2163051\charrsid10564401 +\par }{\*\themedata 504b030414000600080000002100e9de0fbfff0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb4ec3301045f748fc83e52d4a +9cb2400825e982c78ec7a27cc0c8992416c9d8b2a755fbf74cd25442a820166c2cd933f79e3be372bd1f07b5c3989ca74aaff2422b24eb1b475da5df374fd9ad +5689811a183c61a50f98f4babebc2837878049899a52a57be670674cb23d8e90721f90a4d2fa3802cb35762680fd800ecd7551dc18eb899138e3c943d7e503b6 +b01d583deee5f99824e290b4ba3f364eac4a430883b3c092d4eca8f946c916422ecab927f52ea42b89a1cd59c254f919b0e85e6535d135a8de20f20b8c12c3b0 +0c895fcf6720192de6bf3b9e89ecdbd6596cbcdd8eb28e7c365ecc4ec1ff1460f53fe813d3cc7f5b7f020000ffff0300504b030414000600080000002100a5d6 +a7e7c0000000360100000b0000005f72656c732f2e72656c73848fcf6ac3300c87ef85bd83d17d51d2c31825762fa590432fa37d00e1287f68221bdb1bebdb4f +c7060abb0884a4eff7a93dfeae8bf9e194e720169aaa06c3e2433fcb68e1763dbf7f82c985a4a725085b787086a37bdbb55fbc50d1a33ccd311ba548b6309512 +0f88d94fbc52ae4264d1c910d24a45db3462247fa791715fd71f989e19e0364cd3f51652d73760ae8fa8c9ffb3c330cc9e4fc17faf2ce545046e37944c69e462 +a1a82fe353bd90a865aad41ed0b5b8f9d6fd010000ffff0300504b0304140006000800000021006b799616830000008a0000001c0000007468656d652f746865 +6d652f7468656d654d616e616765722e786d6c0ccc4d0ac3201040e17da17790d93763bb284562b2cbaebbf600439c1a41c7a0d29fdbd7e5e38337cedf14d59b +4b0d592c9c070d8a65cd2e88b7f07c2ca71ba8da481cc52c6ce1c715e6e97818c9b48d13df49c873517d23d59085adb5dd20d6b52bd521ef2cdd5eb9246a3d8b +4757e8d3f729e245eb2b260a0238fd010000ffff0300504b030414000600080000002100b6f4679893070000c9200000160000007468656d652f7468656d652f +7468656d65312e786d6cec59cd8b1bc915bf07f23f347d97f5d5ad8fc1f2a24fcfda33b6b164873dd648a5eef2547789aad28cc56208de532e81c026e49085bd +ed21842cecc22eb9e48f31d8249b3f22afaa5bdd5552c99e191c3061463074977eefd5afde7bf5de53d5ddcf5e26d4bbc05c1096f6fcfa9d9aefe174ce16248d +7afeb3d9a4d2f13d2151ba4094a5b8e76fb0f03fbbf7eb5fdd454732c609f6403e1547a8e7c752ae8eaa5531876124eeb0154ee1bb25e30992f0caa3ea82a34b +d09bd06aa3566b55134452df4b51026a1f2f97648ebd9952e9dfdb2a1f53784da5500373caa74a35b6243476715e5708b11143cabd0b447b3eccb3609733fc52 +fa1e4542c2173dbfa6fffceabdbb5574940b517940d6909be8bf5c2e17589c37f49c3c3a2b260d823068f50bfd1a40e53e6edc1eb7c6ad429f06a0f91c569a71 +b175b61bc320c71aa0ecd1a17bd41e35eb16ded0dfdce3dc0fd5c7c26b50a63fd8c34f2643b0a285d7a00c1feee1c3417730b2f56b50866fede1dbb5fe28685b +fa3528a6243ddf43d7c25673b85d6d0159327aec8477c360d26ee4ca4b144443115d6a8a254be5a1584bd00bc6270050408a24493db959e1259a43140f112567 +9c7827248a21f056286502866b8ddaa4d684ffea13e827ed5174849121ad780113b137a4f87862cec94af6fc07a0d537206f7ffef9cdeb1fdfbcfee9cd575fbd +79fdf77c6eadca923b466964cafdf2dd1ffef3cd6fbd7ffff0ed2f5fff319b7a172f4cfcbbbffdeedd3ffef93ef5b0e2d2146ffff4fdbb1fbf7ffbe7dfffebaf +5f3bb4f7393a33e1339260e13dc297de5396c0021dfcf119bf9ec42c46c494e8a791402952b338f48f656ca11f6d10450edc00db767cce21d5b880f7d72f2cc2 +d398af2571687c182716f094313a60dc6985876a2ec3ccb3751ab927e76b13f714a10bd7dc43945a5e1eaf579063894be530c616cd2714a5124538c5d253dfb1 +738c1dabfb8210cbaea764ce99604be97d41bc01224e93ccc899154da5d03149c02f1b1741f0b7659bd3e7de8051d7aa47f8c246c2de40d4417e86a965c6fb68 +2d51e252394309350d7e8264ec2239ddf0b9891b0b099e8e3065de78818570c93ce6b05ec3e90f21cdb8dd7e4a37898de4929cbb749e20c64ce4889d0f6394ac +5cd829496313fbb938871045de13265df05366ef10f50e7e40e941773f27d872f787b3c133c8b026a53240d4376beef0e57dccacf89d6ee8126157aae9f3c44a +b17d4e9cd131584756689f604cd1255a60ec3dfbdcc160c05696cd4bd20f62c82ac7d815580f901dabea3dc5027a25d5dcece7c91322ac909de2881de073bad9 +493c1b9426881fd2fc08bc6eda7c0ca52e7105c0633a3f37818f08f480102f4ea33c16a0c308ee835a9fc4c82a60ea5db8e375c32dff5d658fc1be7c61d1b8c2 +be04197c6d1948eca6cc7b6d3343d49aa00c9819822ec3956e41c4727f29a28aab165b3be596f6a62ddd00dd91d5f42424fd6007b4d3fb84ffbbde073a8cb77f +f9c6b10f3e4ebfe3566c25ab6b763a8792c9f14e7f7308b7dbd50c195f904fbfa919a175fa04431dd9cf58b73dcd6d4fe3ffdff73487f6f36d2773a8dfb8ed64 +7ce8306e3b99fc70e5e3743265f3027d8d3af0c80e7af4b14f72f0d46749289dca0dc527421ffc08f83db398c0a092d3279eb838055cc5f0a8ca1c4c60e1228e +b48cc799fc0d91f134462b381daafb4a492472d591f0564cc0a1911e76ea5678ba4e4ed9223becacd7d5c16656590592e5782d2cc6e1a04a66e856bb3cc02bd4 +6bb6913e68dd1250b2d721614c6693683a48b4b783ca48fa58178ce620a157f65158741d2c3a4afdd6557b2c805ae115f8c1edc1cff49e1f06200242701e07cd +f942f92973f5d6bbda991fd3d3878c69450034d8db08283ddd555c0f2e4fad2e0bb52b78da2261849b4d425b46377822869fc17974aad1abd0b8aeafbba54b2d +7aca147a3e08ad9246bbf33e1637f535c8ede6069a9a9982a6de65cf6f35430899395af5fc251c1ac363b282d811ea3717a211dcbccc25cf36fc4d32cb8a0b39 +4222ce0cae934e960d122231f728497abe5a7ee1069aea1ca2b9d51b90103e59725d482b9f1a3970baed64bc5ce2b934dd6e8c284b67af90e1b35ce1fc568bdf +1cac24d91adc3d8d1797de195df3a708422c6cd795011744c0dd413db3e682c0655891c8caf8db294c79da356fa3740c65e388ae62945714339967709dca0b3a +faadb081f196af190c6a98242f8467912ab0a651ad6a5a548d8cc3c1aafb6121653923699635d3ca2aaa6abab39835c3b60cecd8f26645de60b53531e434b3c2 +67a97b37e576b7b96ea74f28aa0418bcb09fa3ea5ea12018d4cac92c6a8af17e1a56393b1fb56bc776811fa07695226164fdd656ed8edd8a1ae19c0e066f54f9 +416e376a6168b9ed2bb5a5f5adb979b1cdce5e40f2184197bba6526857c2c92e47d0104d754f92a50dd8222f65be35e0c95b73d2f3bfac85fd60d80887955a27 +1c57826650ab74c27eb3d20fc3667d1cd66ba341e31514161927f530bbb19fc00506dde4f7f67a7cefee3ed9ded1dc99b3a4caf4dd7c5513d777f7f5c6e1bb7b +8f40d2f9b2d598749bdd41abd26df627956034e854bac3d6a0326a0ddba3c9681876ba9357be77a1c141bf390c5ae34ea5551f0e2b41aba6e877ba9576d068f4 +8376bf330efaaff23606569ea58fdc16605ecdebde7f010000ffff0300504b0304140006000800000021000dd1909fb60000001b010000270000007468656d65 +2f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73848f4d0ac2301484f78277086f6fd3ba109126dd88d0add40384e4350d36 +3f2451eced0dae2c082e8761be9969bb979dc9136332de3168aa1a083ae995719ac16db8ec8e4052164e89d93b64b060828e6f37ed1567914b284d262452282e +3198720e274a939cd08a54f980ae38a38f56e422a3a641c8bbd048f7757da0f19b017cc524bd62107bd5001996509affb3fd381a89672f1f165dfe514173d985 +0528a2c6cce0239baa4c04ca5bbabac4df000000ffff0300504b01022d0014000600080000002100e9de0fbfff0000001c020000130000000000000000000000 +0000000000005b436f6e74656e745f54797065735d2e786d6c504b01022d0014000600080000002100a5d6a7e7c0000000360100000b00000000000000000000 +000000300100005f72656c732f2e72656c73504b01022d00140006000800000021006b799616830000008a0000001c0000000000000000000000000019020000 +7468656d652f7468656d652f7468656d654d616e616765722e786d6c504b01022d0014000600080000002100b6f4679893070000c92000001600000000000000 +000000000000d60200007468656d652f7468656d652f7468656d65312e786d6c504b01022d00140006000800000021000dd1909fb60000001b01000027000000 +000000000000000000009d0a00007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73504b050600000000050005005d010000980b00000000} +{\*\colorschememapping 3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d22796573223f3e0d0a3c613a636c724d +617020786d6c6e733a613d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f64726177696e676d6c2f323030362f6d6169 +6e22206267313d226c743122207478313d22646b3122206267323d226c743222207478323d22646b322220616363656e74313d22616363656e74312220616363 +656e74323d22616363656e74322220616363656e74333d22616363656e74332220616363656e74343d22616363656e74342220616363656e74353d22616363656e74352220616363656e74363d22616363656e74362220686c696e6b3d22686c696e6b2220666f6c486c696e6b3d22666f6c486c696e6b222f3e} +{\*\latentstyles\lsdstimax375\lsdlockeddef0\lsdsemihiddendef0\lsdunhideuseddef0\lsdqformatdef0\lsdprioritydef99{\lsdlockedexcept \lsdqformat1 \lsdpriority0 \lsdlocked0 Normal;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 1; +\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 2;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 3;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 4; +\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 5;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 6;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 7; +\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 8;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 9;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 1; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 5; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 6;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 9; +\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 1;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 2;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 3; +\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 4;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 5;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 6; +\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 7;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 8;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 9;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal Indent; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 footnote text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 header;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 footer; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index heading;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority35 \lsdlocked0 caption;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 table of figures; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 envelope address;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 envelope return;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 footnote reference;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation reference; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 line number;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 page number;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 endnote reference;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 endnote text; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 table of authorities;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 macro;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 toa heading;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 3; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 3; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 3; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 5;\lsdqformat1 \lsdpriority10 \lsdlocked0 Title;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Closing; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Signature;\lsdsemihidden1 \lsdunhideused1 \lsdpriority1 \lsdlocked0 Default Paragraph Font;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text Indent; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 4; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Message Header;\lsdqformat1 \lsdpriority11 \lsdlocked0 Subtitle;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Salutation; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Date;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text First Indent;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text First Indent 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Note Heading; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text Indent 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text Indent 3; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Block Text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Hyperlink;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 FollowedHyperlink;\lsdqformat1 \lsdpriority22 \lsdlocked0 Strong; +\lsdqformat1 \lsdpriority20 \lsdlocked0 Emphasis;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Document Map;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Plain Text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 E-mail Signature; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Top of Form;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Bottom of Form;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal (Web);\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Acronym; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Address;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Cite;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Code;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Definition; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Keyboard;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Preformatted;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Sample;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Typewriter; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Variable;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal Table;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation subject;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 No List; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 1; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 2; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 2; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 3; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 2; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 6; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 2; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 6; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 2; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Contemporary;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Elegant;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Professional; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Subtle 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Subtle 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 2; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Balloon Text;\lsdpriority39 \lsdlocked0 Table Grid;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Theme;\lsdsemihidden1 \lsdlocked0 Placeholder Text; +\lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;\lsdpriority60 \lsdlocked0 Light Shading;\lsdpriority61 \lsdlocked0 Light List;\lsdpriority62 \lsdlocked0 Light Grid;\lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdpriority64 \lsdlocked0 Medium Shading 2; +\lsdpriority65 \lsdlocked0 Medium List 1;\lsdpriority66 \lsdlocked0 Medium List 2;\lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdpriority68 \lsdlocked0 Medium Grid 2;\lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdpriority70 \lsdlocked0 Dark List; +\lsdpriority71 \lsdlocked0 Colorful Shading;\lsdpriority72 \lsdlocked0 Colorful List;\lsdpriority73 \lsdlocked0 Colorful Grid;\lsdpriority60 \lsdlocked0 Light Shading Accent 1;\lsdpriority61 \lsdlocked0 Light List Accent 1; +\lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdsemihidden1 \lsdlocked0 Revision; +\lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1; +\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;\lsdpriority72 \lsdlocked0 Colorful List Accent 1; +\lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdpriority60 \lsdlocked0 Light Shading Accent 2;\lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2; +\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2; +\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;\lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdpriority72 \lsdlocked0 Colorful List Accent 2;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 2; +\lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdpriority61 \lsdlocked0 Light List Accent 3;\lsdpriority62 \lsdlocked0 Light Grid Accent 3;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3; +\lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3; +\lsdpriority70 \lsdlocked0 Dark List Accent 3;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;\lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;\lsdpriority60 \lsdlocked0 Light Shading Accent 4; +\lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdpriority62 \lsdlocked0 Light Grid Accent 4;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 4; +\lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdpriority70 \lsdlocked0 Dark List Accent 4; +\lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;\lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdpriority60 \lsdlocked0 Light Shading Accent 5;\lsdpriority61 \lsdlocked0 Light List Accent 5; +\lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 5; +\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;\lsdpriority70 \lsdlocked0 Dark List Accent 5;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 5; +\lsdpriority72 \lsdlocked0 Colorful List Accent 5;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 5;\lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdpriority61 \lsdlocked0 Light List Accent 6;\lsdpriority62 \lsdlocked0 Light Grid Accent 6; +\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 6;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 6; +\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 6;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 6;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 6;\lsdpriority70 \lsdlocked0 Dark List Accent 6;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 6; +\lsdpriority72 \lsdlocked0 Colorful List Accent 6;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 6;\lsdqformat1 \lsdpriority19 \lsdlocked0 Subtle Emphasis;\lsdqformat1 \lsdpriority21 \lsdlocked0 Intense Emphasis; +\lsdqformat1 \lsdpriority31 \lsdlocked0 Subtle Reference;\lsdqformat1 \lsdpriority32 \lsdlocked0 Intense Reference;\lsdqformat1 \lsdpriority33 \lsdlocked0 Book Title;\lsdsemihidden1 \lsdunhideused1 \lsdpriority37 \lsdlocked0 Bibliography; +\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority39 \lsdlocked0 TOC Heading;\lsdpriority41 \lsdlocked0 Plain Table 1;\lsdpriority42 \lsdlocked0 Plain Table 2;\lsdpriority43 \lsdlocked0 Plain Table 3;\lsdpriority44 \lsdlocked0 Plain Table 4; +\lsdpriority45 \lsdlocked0 Plain Table 5;\lsdpriority40 \lsdlocked0 Grid Table Light;\lsdpriority46 \lsdlocked0 Grid Table 1 Light;\lsdpriority47 \lsdlocked0 Grid Table 2;\lsdpriority48 \lsdlocked0 Grid Table 3;\lsdpriority49 \lsdlocked0 Grid Table 4; +\lsdpriority50 \lsdlocked0 Grid Table 5 Dark;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 1;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 1; +\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 1;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 1;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 1;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 1; +\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 1;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 2;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 2;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 2; +\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 2;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 2;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 2;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 2; +\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 3;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 3;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 3;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 3; +\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 3;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 3;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 3;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 4; +\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 4;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 4;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 4;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 4; +\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 4;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 4;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 5;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 5; +\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 5;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 5;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 5;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 5; +\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 5;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 6;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 6;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 6; +\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 6;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 6;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 6;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 6; +\lsdpriority46 \lsdlocked0 List Table 1 Light;\lsdpriority47 \lsdlocked0 List Table 2;\lsdpriority48 \lsdlocked0 List Table 3;\lsdpriority49 \lsdlocked0 List Table 4;\lsdpriority50 \lsdlocked0 List Table 5 Dark; +\lsdpriority51 \lsdlocked0 List Table 6 Colorful;\lsdpriority52 \lsdlocked0 List Table 7 Colorful;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 1;\lsdpriority47 \lsdlocked0 List Table 2 Accent 1;\lsdpriority48 \lsdlocked0 List Table 3 Accent 1; +\lsdpriority49 \lsdlocked0 List Table 4 Accent 1;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 1;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 1;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 1; +\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 2;\lsdpriority47 \lsdlocked0 List Table 2 Accent 2;\lsdpriority48 \lsdlocked0 List Table 3 Accent 2;\lsdpriority49 \lsdlocked0 List Table 4 Accent 2; +\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 2;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 2;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 2;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 3; +\lsdpriority47 \lsdlocked0 List Table 2 Accent 3;\lsdpriority48 \lsdlocked0 List Table 3 Accent 3;\lsdpriority49 \lsdlocked0 List Table 4 Accent 3;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 3; +\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 3;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 3;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 4;\lsdpriority47 \lsdlocked0 List Table 2 Accent 4; +\lsdpriority48 \lsdlocked0 List Table 3 Accent 4;\lsdpriority49 \lsdlocked0 List Table 4 Accent 4;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 4;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 4; +\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 4;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 5;\lsdpriority47 \lsdlocked0 List Table 2 Accent 5;\lsdpriority48 \lsdlocked0 List Table 3 Accent 5; +\lsdpriority49 \lsdlocked0 List Table 4 Accent 5;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 5;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 5;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 5; +\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 6;\lsdpriority47 \lsdlocked0 List Table 2 Accent 6;\lsdpriority48 \lsdlocked0 List Table 3 Accent 6;\lsdpriority49 \lsdlocked0 List Table 4 Accent 6; +\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 6;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 6;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 6;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Mention; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Smart Hyperlink;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Hashtag;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Unresolved Mention;}}{\*\datastore 010500000200000018000000 +4d73786d6c322e534158584d4c5265616465722e362e3000000000000000000000060000 +d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff090006000000000000000000000001000000010000000000000000100000feffffff00000000feffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e5000000000000000000000000b00a +ec6da6d9d201feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000 +00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000105000000000000}} \ No newline at end of file From 4bbbf374b3878c2c4c8122fc416f335874a69420 Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Thu, 1 Jun 2017 12:52:14 -0700 Subject: [PATCH 504/625] Fix CI build failure. Eula.rtf has been removed from OSX packages but dummy Eula is required by Burn authoring (#2575) --- src/pkg/packaging/osx/package.targets | 26 ++++- .../resources/cs.lproj/conclusion.html | 25 +++++ .../resources/cs.lproj/eula.rtf | 97 ------------------- .../resources/cs.lproj/welcome.html | 22 +++++ .../resources/de.lproj/conclusion.html | 25 +++++ .../resources/de.lproj/eula.rtf | 97 ------------------- .../resources/de.lproj/welcome.html | 22 +++++ .../resources/en.lproj/conclusion.html | 24 +++++ .../resources/en.lproj/welcome.html | 21 ++++ .../resources/es.lproj/conclusion.html | 25 +++++ .../resources/es.lproj/eula.rtf | 97 ------------------- .../resources/es.lproj/welcome.html | 22 +++++ .../resources/fr.lproj/conclusion.html | 25 +++++ .../resources/fr.lproj/eula.rtf | 97 ------------------- .../resources/fr.lproj/welcome.html | 22 +++++ .../resources/it.lproj/conclusion.html | 25 +++++ .../resources/it.lproj/eula.rtf | 97 ------------------- .../resources/it.lproj/welcome.html | 22 +++++ .../resources/ja.lproj/conclusion.html | 25 +++++ .../resources/ja.lproj/eula.rtf | 97 ------------------- .../resources/ja.lproj/welcome.html | 22 +++++ .../resources/ko.lproj/conclusion.html | 25 +++++ .../resources/ko.lproj/eula.rtf | 97 ------------------- .../resources/ko.lproj/welcome.html | 22 +++++ .../resources/pl.lproj/conclusion.html | 25 +++++ .../resources/pl.lproj/eula.rtf | 97 ------------------- .../resources/pl.lproj/welcome.html | 22 +++++ .../resources/pt-br.lproj/conclusion.html | 25 +++++ .../resources/pt-br.lproj/eula.rtf | 97 ------------------- .../resources/pt-br.lproj/welcome.html | 22 +++++ .../resources/ru.lproj/eula.rtf | 97 ------------------- .../resources/tr.lproj/eula.rtf | 97 ------------------- .../resources/zh-hans.lproj/eula.rtf | 97 ------------------- .../resources/zh-hant.lproj/eula.rtf | 97 ------------------- ...shared-framework-distribution-template.xml | 2 +- 35 files changed, 494 insertions(+), 1263 deletions(-) create mode 100644 src/pkg/packaging/osx/sharedframework/resources/cs.lproj/conclusion.html delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/cs.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/sharedframework/resources/cs.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/sharedframework/resources/de.lproj/conclusion.html delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/de.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/sharedframework/resources/de.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/sharedframework/resources/en.lproj/conclusion.html create mode 100644 src/pkg/packaging/osx/sharedframework/resources/en.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/sharedframework/resources/es.lproj/conclusion.html delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/es.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/sharedframework/resources/es.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/sharedframework/resources/fr.lproj/conclusion.html delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/fr.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/sharedframework/resources/fr.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/sharedframework/resources/it.lproj/conclusion.html delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/it.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/sharedframework/resources/it.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/sharedframework/resources/ja.lproj/conclusion.html delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/ja.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/sharedframework/resources/ja.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/sharedframework/resources/ko.lproj/conclusion.html delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/ko.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/sharedframework/resources/ko.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/sharedframework/resources/pl.lproj/conclusion.html delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/pl.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/sharedframework/resources/pl.lproj/welcome.html create mode 100644 src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/conclusion.html delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/welcome.html delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/ru.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/tr.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/zh-hans.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/zh-hant.lproj/eula.rtf diff --git a/src/pkg/packaging/osx/package.targets b/src/pkg/packaging/osx/package.targets index 9164e684..4894f46f 100644 --- a/src/pkg/packaging/osx/package.targets +++ b/src/pkg/packaging/osx/package.targets @@ -49,12 +49,36 @@ $(OSXScriptRoot)sharedframework/ - $(SharedFxScriptRoot)resources + $(PackagesIntermediateDir)resources $(CombinedInstallerFile) shared-framework-distribution-template.xml $(PackagesIntermediateDir)$(TemplateFile) + + + + + + + + + + + conclusion.html + + + + + + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/cs.lproj/conclusion.html b/src/pkg/packaging/osx/sharedframework/resources/cs.lproj/conclusion.html new file mode 100644 index 00000000..e16c4b31 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/cs.lproj/conclusion.html @@ -0,0 +1,25 @@ + + + + + + +
+

The following was installed at /usr/local/share/dotnet +

    +
  • {SharedFxBrandName}
  • +
+
+
+ + + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/cs.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/cs.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/cs.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedframework/resources/cs.lproj/welcome.html b/src/pkg/packaging/osx/sharedframework/resources/cs.lproj/welcome.html new file mode 100644 index 00000000..d0b0e4f8 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/cs.lproj/welcome.html @@ -0,0 +1,22 @@ + + + + + + +
+
+

.NET Core Runtime

+

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites.It is open source, cross-platform, and supported by Microsoft. We hope you enjoy it!

+
+
+

Learn more about .NET Core

+ +
+ + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/de.lproj/conclusion.html b/src/pkg/packaging/osx/sharedframework/resources/de.lproj/conclusion.html new file mode 100644 index 00000000..e16c4b31 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/de.lproj/conclusion.html @@ -0,0 +1,25 @@ + + + + + + +
+

The following was installed at /usr/local/share/dotnet +

    +
  • {SharedFxBrandName}
  • +
+
+
+ + + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/de.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/de.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/de.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedframework/resources/de.lproj/welcome.html b/src/pkg/packaging/osx/sharedframework/resources/de.lproj/welcome.html new file mode 100644 index 00000000..d0b0e4f8 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/de.lproj/welcome.html @@ -0,0 +1,22 @@ + + + + + + +
+
+

.NET Core Runtime

+

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites.It is open source, cross-platform, and supported by Microsoft. We hope you enjoy it!

+
+
+

Learn more about .NET Core

+ +
+ + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/en.lproj/conclusion.html b/src/pkg/packaging/osx/sharedframework/resources/en.lproj/conclusion.html new file mode 100644 index 00000000..40f415ad --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/en.lproj/conclusion.html @@ -0,0 +1,24 @@ + + + + + + +
+

The following was installed at /usr/local/share/dotnet +

    +
  • {SharedFxBrandName}
  • +
+
+
+ + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/en.lproj/welcome.html b/src/pkg/packaging/osx/sharedframework/resources/en.lproj/welcome.html new file mode 100644 index 00000000..9e9a955f --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/en.lproj/welcome.html @@ -0,0 +1,21 @@ + + + + + + +
+
+

.NET Core Runtime

+

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites.It is open source, cross-platform, and supported by Microsoft. We hope you enjoy it!

+
+
+

Learn more about .NET Core

+ +
+ + diff --git a/src/pkg/packaging/osx/sharedframework/resources/es.lproj/conclusion.html b/src/pkg/packaging/osx/sharedframework/resources/es.lproj/conclusion.html new file mode 100644 index 00000000..e16c4b31 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/es.lproj/conclusion.html @@ -0,0 +1,25 @@ + + + + + + +
+

The following was installed at /usr/local/share/dotnet +

    +
  • {SharedFxBrandName}
  • +
+
+
+ + + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/es.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/es.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/es.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedframework/resources/es.lproj/welcome.html b/src/pkg/packaging/osx/sharedframework/resources/es.lproj/welcome.html new file mode 100644 index 00000000..d0b0e4f8 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/es.lproj/welcome.html @@ -0,0 +1,22 @@ + + + + + + +
+
+

.NET Core Runtime

+

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites.It is open source, cross-platform, and supported by Microsoft. We hope you enjoy it!

+
+
+

Learn more about .NET Core

+ +
+ + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/fr.lproj/conclusion.html b/src/pkg/packaging/osx/sharedframework/resources/fr.lproj/conclusion.html new file mode 100644 index 00000000..e16c4b31 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/fr.lproj/conclusion.html @@ -0,0 +1,25 @@ + + + + + + +
+

The following was installed at /usr/local/share/dotnet +

    +
  • {SharedFxBrandName}
  • +
+
+
+ + + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/fr.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/fr.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/fr.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedframework/resources/fr.lproj/welcome.html b/src/pkg/packaging/osx/sharedframework/resources/fr.lproj/welcome.html new file mode 100644 index 00000000..d0b0e4f8 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/fr.lproj/welcome.html @@ -0,0 +1,22 @@ + + + + + + +
+
+

.NET Core Runtime

+

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites.It is open source, cross-platform, and supported by Microsoft. We hope you enjoy it!

+
+
+

Learn more about .NET Core

+ +
+ + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/it.lproj/conclusion.html b/src/pkg/packaging/osx/sharedframework/resources/it.lproj/conclusion.html new file mode 100644 index 00000000..e16c4b31 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/it.lproj/conclusion.html @@ -0,0 +1,25 @@ + + + + + + +
+

The following was installed at /usr/local/share/dotnet +

    +
  • {SharedFxBrandName}
  • +
+
+
+ + + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/it.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/it.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/it.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedframework/resources/it.lproj/welcome.html b/src/pkg/packaging/osx/sharedframework/resources/it.lproj/welcome.html new file mode 100644 index 00000000..d0b0e4f8 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/it.lproj/welcome.html @@ -0,0 +1,22 @@ + + + + + + +
+
+

.NET Core Runtime

+

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites.It is open source, cross-platform, and supported by Microsoft. We hope you enjoy it!

+
+
+

Learn more about .NET Core

+ +
+ + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/ja.lproj/conclusion.html b/src/pkg/packaging/osx/sharedframework/resources/ja.lproj/conclusion.html new file mode 100644 index 00000000..e16c4b31 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/ja.lproj/conclusion.html @@ -0,0 +1,25 @@ + + + + + + +
+

The following was installed at /usr/local/share/dotnet +

    +
  • {SharedFxBrandName}
  • +
+
+
+ + + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/ja.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/ja.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/ja.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedframework/resources/ja.lproj/welcome.html b/src/pkg/packaging/osx/sharedframework/resources/ja.lproj/welcome.html new file mode 100644 index 00000000..d0b0e4f8 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/ja.lproj/welcome.html @@ -0,0 +1,22 @@ + + + + + + +
+
+

.NET Core Runtime

+

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites.It is open source, cross-platform, and supported by Microsoft. We hope you enjoy it!

+
+
+

Learn more about .NET Core

+ +
+ + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/ko.lproj/conclusion.html b/src/pkg/packaging/osx/sharedframework/resources/ko.lproj/conclusion.html new file mode 100644 index 00000000..e16c4b31 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/ko.lproj/conclusion.html @@ -0,0 +1,25 @@ + + + + + + +
+

The following was installed at /usr/local/share/dotnet +

    +
  • {SharedFxBrandName}
  • +
+
+
+ + + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/ko.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/ko.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/ko.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedframework/resources/ko.lproj/welcome.html b/src/pkg/packaging/osx/sharedframework/resources/ko.lproj/welcome.html new file mode 100644 index 00000000..d0b0e4f8 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/ko.lproj/welcome.html @@ -0,0 +1,22 @@ + + + + + + +
+
+

.NET Core Runtime

+

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites.It is open source, cross-platform, and supported by Microsoft. We hope you enjoy it!

+
+
+

Learn more about .NET Core

+ +
+ + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/pl.lproj/conclusion.html b/src/pkg/packaging/osx/sharedframework/resources/pl.lproj/conclusion.html new file mode 100644 index 00000000..e16c4b31 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/pl.lproj/conclusion.html @@ -0,0 +1,25 @@ + + + + + + +
+

The following was installed at /usr/local/share/dotnet +

    +
  • {SharedFxBrandName}
  • +
+
+
+ + + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/pl.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/pl.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/pl.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedframework/resources/pl.lproj/welcome.html b/src/pkg/packaging/osx/sharedframework/resources/pl.lproj/welcome.html new file mode 100644 index 00000000..d0b0e4f8 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/pl.lproj/welcome.html @@ -0,0 +1,22 @@ + + + + + + +
+
+

.NET Core Runtime

+

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites.It is open source, cross-platform, and supported by Microsoft. We hope you enjoy it!

+
+
+

Learn more about .NET Core

+ +
+ + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/conclusion.html b/src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/conclusion.html new file mode 100644 index 00000000..e16c4b31 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/conclusion.html @@ -0,0 +1,25 @@ + + + + + + +
+

The following was installed at /usr/local/share/dotnet +

    +
  • {SharedFxBrandName}
  • +
+
+
+ + + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/welcome.html b/src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/welcome.html new file mode 100644 index 00000000..d0b0e4f8 --- /dev/null +++ b/src/pkg/packaging/osx/sharedframework/resources/pt-br.lproj/welcome.html @@ -0,0 +1,22 @@ + + + + + + +
+
+

.NET Core Runtime

+

.NET Core is a development platform that you can use to build command-line applications, microservices and modern websites.It is open source, cross-platform, and supported by Microsoft. We hope you enjoy it!

+
+
+

Learn more about .NET Core

+ +
+ + + diff --git a/src/pkg/packaging/osx/sharedframework/resources/ru.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/ru.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/ru.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedframework/resources/tr.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/tr.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/tr.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedframework/resources/zh-hans.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/zh-hans.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/zh-hans.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedframework/resources/zh-hant.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/zh-hant.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/zh-hant.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedframework/shared-framework-distribution-template.xml b/src/pkg/packaging/osx/sharedframework/shared-framework-distribution-template.xml index a9550ce3..899ef94d 100644 --- a/src/pkg/packaging/osx/sharedframework/shared-framework-distribution-template.xml +++ b/src/pkg/packaging/osx/sharedframework/shared-framework-distribution-template.xml @@ -1,10 +1,10 @@ {SharedFxBrandName} (x64) - + From f76a4f863f2f70496033e35a8c45a50a8a882c1c Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Thu, 1 Jun 2017 13:03:09 -0700 Subject: [PATCH 505/625] Trim leading zeros from AppX package version (#2587) * Trim leading zeros from AppX package version * Use properties for Build and Revision version for AppX. --- .../Microsoft.NET.CoreRuntime.depproj | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj b/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj index cb4e4534..e5192ee4 100644 --- a/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj +++ b/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj @@ -14,6 +14,9 @@ Microsoft.NET.CoreRuntime.$(MajorVersion).$(MinorVersion) Microsoft.NET.CoreRuntime.$(MajorVersion).$(MinorVersion) + $([System.Int32]::Parse($(BuildNumberMajor))) + $([System.Int32]::Parse($(BuildNumberMinor))) + $(IntermediateOutputPath)$(AppxIdentityName) $(IntermediateOutputPath)$(AppxIdentityName) @@ -61,7 +64,7 @@ Inputs="$(AppxManifestTemplate)" Outputs="$(AppxManifest)"> From 58d9b4b506d714ecf864936f4c6a2fadf7ea272f Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Thu, 1 Jun 2017 18:01:23 -0700 Subject: [PATCH 506/625] Update CoreClr, WCF to preview1-25401-03, preview1-25401-02, respectively (#2598) --- dependencies.props | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dependencies.props b/dependencies.props index 03bb0510..ef60e4f4 100644 --- a/dependencies.props +++ b/dependencies.props @@ -10,19 +10,19 @@ --> a6407630f7f63db38f7be5a867f6f5c4f904ad31 - 661907e7c987821b9aa34c9e54ae526ba3d30cda + c15d3066d45733c9a2c77d4eb42a5c6bf94477c1 a6407630f7f63db38f7be5a867f6f5c4f904ad31 - a6407630f7f63db38f7be5a867f6f5c4f904ad31 + c15d3066d45733c9a2c77d4eb42a5c6bf94477c1 4.5.0-preview1-25401-06 2.1.0-preview1-25324-02 - 2.1.0-preview1-25401-02 + 2.1.0-preview1-25401-03 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.1.0-preview1-25401-01 1.4.1 - 4.5.0-preview1-25401-01 + 4.5.0-preview1-25401-02 From 9199fde9a57d905df8987dc61bf1d120958e605d Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Fri, 2 Jun 2017 14:07:24 -0700 Subject: [PATCH 507/625] Update CoreClr, CoreFx, Standard, WCF to preview1-25402-01, preview1-25402-02, preview1-25402-01, preview1-25402-01, respectively (#2604) --- dependencies.props | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dependencies.props b/dependencies.props index ef60e4f4..799aea75 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - a6407630f7f63db38f7be5a867f6f5c4f904ad31 - c15d3066d45733c9a2c77d4eb42a5c6bf94477c1 - a6407630f7f63db38f7be5a867f6f5c4f904ad31 - c15d3066d45733c9a2c77d4eb42a5c6bf94477c1 + bb9a28dabc749ba77f9feef0a29b84ba1172f598 + bb9a28dabc749ba77f9feef0a29b84ba1172f598 + bb9a28dabc749ba77f9feef0a29b84ba1172f598 + bb9a28dabc749ba77f9feef0a29b84ba1172f598 - 4.5.0-preview1-25401-06 + 4.5.0-preview1-25402-02 2.1.0-preview1-25324-02 - 2.1.0-preview1-25401-03 + 2.1.0-preview1-25402-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25401-01 + 2.1.0-preview1-25402-01 1.4.1 - 4.5.0-preview1-25401-02 + 4.5.0-preview1-25402-01 From e9e4ff10a4d38fbd48138abb686cbc23a32baab1 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Mon, 5 Jun 2017 08:19:34 -0700 Subject: [PATCH 508/625] Update CoreClr, CoreFx, Standard, WCF to preview1-25405-01, preview1-25405-01, preview1-25405-01, preview1-25405-01, respectively (#2607) --- dependencies.props | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dependencies.props b/dependencies.props index 799aea75..6abc9917 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - bb9a28dabc749ba77f9feef0a29b84ba1172f598 - bb9a28dabc749ba77f9feef0a29b84ba1172f598 - bb9a28dabc749ba77f9feef0a29b84ba1172f598 - bb9a28dabc749ba77f9feef0a29b84ba1172f598 + 4081b2616c091ea60c2cf069421b9438493a4a08 + 4081b2616c091ea60c2cf069421b9438493a4a08 + 4081b2616c091ea60c2cf069421b9438493a4a08 + 4081b2616c091ea60c2cf069421b9438493a4a08 - 4.5.0-preview1-25402-02 + 4.5.0-preview1-25405-01 2.1.0-preview1-25324-02 - 2.1.0-preview1-25402-01 + 2.1.0-preview1-25405-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25402-01 + 2.1.0-preview1-25405-01 1.4.1 - 4.5.0-preview1-25402-01 + 4.5.0-preview1-25405-01 From 3d548aa59ec8b6d5bff2281885ffc560897fcf20 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Mon, 5 Jun 2017 13:39:17 -0700 Subject: [PATCH 509/625] Update CoreFx to preview1-25405-04 (#2622) --- dependencies.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.props b/dependencies.props index 6abc9917..f8e344e2 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,14 +9,14 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 4081b2616c091ea60c2cf069421b9438493a4a08 + 534770cbd98c4083de4d93b809f2e0968f0f856a 4081b2616c091ea60c2cf069421b9438493a4a08 4081b2616c091ea60c2cf069421b9438493a4a08 4081b2616c091ea60c2cf069421b9438493a4a08 - 4.5.0-preview1-25405-01 + 4.5.0-preview1-25405-04 2.1.0-preview1-25324-02 2.1.0-preview1-25405-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) From 49475389d6d16d8222c02c7accf0c98b5719a157 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Mon, 5 Jun 2017 18:39:43 -0700 Subject: [PATCH 510/625] Update CoreClr, CoreFx to preview1-25405-02, preview1-25406-01, respectively (#2626) --- dependencies.props | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dependencies.props b/dependencies.props index f8e344e2..6752825b 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,16 +9,16 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 534770cbd98c4083de4d93b809f2e0968f0f856a - 4081b2616c091ea60c2cf069421b9438493a4a08 + 82fc1fc68bfa1d55e43913b188868879f31de8e7 + 82fc1fc68bfa1d55e43913b188868879f31de8e7 4081b2616c091ea60c2cf069421b9438493a4a08 4081b2616c091ea60c2cf069421b9438493a4a08 - 4.5.0-preview1-25405-04 + 4.5.0-preview1-25406-01 2.1.0-preview1-25324-02 - 2.1.0-preview1-25405-01 + 2.1.0-preview1-25405-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.1.0-preview1-25405-01 1.4.1 From 674c3e3f09284c32321bd9eabd60852e02c0aefb Mon Sep 17 00:00:00 2001 From: chcosta Date: Tue, 6 Jun 2017 09:52:21 -0700 Subject: [PATCH 511/625] Remove local tasks and use buildtools tasks (#2625) * Remove local tasks and use buildtools tasks * Pull in https://github.com/dotnet/core-setup/pull/2608/files * Force add missing pdb file * Respond to PR feedback --- BuildToolsVersion.txt | 2 +- build.proj | 19 +- dir.props | 7 +- publish/publish.proj | 15 +- src/pkg/_.pdb | 0 src/pkg/projects/dir.targets | 4 +- src/test/dir.proj | 8 +- .../AzureBlobLease.cs | 185 ------- .../AzureConnectionStringBuildTask.cs | 57 --- .../AzureHelper.cs | 466 ------------------ .../CopyAzureBlobToBlob.cs | 100 ---- .../DeleteAzureBlob.cs | 66 --- .../DownloadBlobFromAzure.cs | 153 ------ .../DownloadBlobsFromAzure.cs | 63 --- .../GenerateChecksums.cs | 68 --- .../GetAzureBlobList.cs | 122 ----- .../GetHostInformation.cs | 45 -- .../Microsoft.DotNet.Build.Tasks.Local.builds | 13 - .../Microsoft.DotNet.Build.Tasks.Local.csproj | 77 --- .../PublishStringToAzureBlob.cs | 73 --- .../README.md | 1 - .../UploadClient.cs | 210 -------- .../UploadToAzure.cs | 177 ------- tools-local/tasks/FinalizeBuild.cs | 7 +- tools-local/tasks/core-setup.tasks.builds | 2 +- tools-local/tasks/core-setup.tasks.csproj | 18 +- 26 files changed, 43 insertions(+), 1915 deletions(-) create mode 100644 src/pkg/_.pdb delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureBlobLease.cs delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureConnectionStringBuildTask.cs delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/CopyAzureBlobToBlob.cs delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/DeleteAzureBlob.cs delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobFromAzure.cs delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobsFromAzure.cs delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/GenerateChecksums.cs delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/GetHostInformation.cs delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.builds delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.csproj delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/PublishStringToAzureBlob.cs delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/README.md delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadClient.cs delete mode 100644 tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadToAzure.cs diff --git a/BuildToolsVersion.txt b/BuildToolsVersion.txt index e079aa20..bf13ce4d 100644 --- a/BuildToolsVersion.txt +++ b/BuildToolsVersion.txt @@ -1 +1 @@ -2.0.0-prerelease-01616-04 +2.0.0-prerelease-01705-02 diff --git a/build.proj b/build.proj index c08c0271..1b269030 100644 --- a/build.proj +++ b/build.proj @@ -36,7 +36,6 @@ DependsOnTargets="$(TraversalBuildDependencies)" /> - @@ -44,15 +43,15 @@ net451 - - - - - - + + + + + + diff --git a/dir.props b/dir.props index d884e078..0f5c0aa5 100644 --- a/dir.props +++ b/dir.props @@ -50,10 +50,13 @@ $(ProjectDir)packages/ $(ProjectDir)Tools/ $(ToolRuntimePath)local/ + $(ToolRuntimePath) $(ProjectDir)Tools/ - $(ToolRuntimePath) - $(ToolsDir)net46/ + $(ToolsDir) + $(ToolsDir)net46/ + $(BuildToolsTaskCoreDir) + $(BuildToolsTaskDesktopDir) $(LocalToolRuntimePath) $(LocalToolRuntimePath)net46/ $(BuildToolsTaskDir) diff --git a/publish/publish.proj b/publish/publish.proj index 09e4fc76..0e0895c4 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -1,10 +1,10 @@ - + - - + + @@ -142,12 +142,12 @@ - + FilterBlobNames="Runtime/$(SharedFrameworkNugetVersion)"> - + <_CoreHostPackages Include="%(_BlobList.Identity)" Condition="'%(_BlobList.Extension)' == '.nupkg'" /> @@ -157,10 +157,11 @@ - <_DownloadedPackages Include="@(_CoreHostPackages->'$(DownloadDirectory)%(Filename)%(Extension)')" /> diff --git a/src/pkg/_.pdb b/src/pkg/_.pdb new file mode 100644 index 00000000..e69de29b diff --git a/src/pkg/projects/dir.targets b/src/pkg/projects/dir.targets index 868e4b5e..37241a5f 100644 --- a/src/pkg/projects/dir.targets +++ b/src/pkg/projects/dir.targets @@ -35,7 +35,7 @@ - runtimes/$(PackageTargetRuntime)/native true @@ -108,4 +108,4 @@
- \ No newline at end of file + diff --git a/src/test/dir.proj b/src/test/dir.proj index c8f6c353..3f1898a5 100644 --- a/src/test/dir.proj +++ b/src/test/dir.proj @@ -1,7 +1,7 @@ - + @@ -15,9 +15,9 @@ - - - + + + $(_HostRid) $(TestTargetRid).$(ConfigurationGroup) diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureBlobLease.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureBlobLease.cs deleted file mode 100644 index 30f37434..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureBlobLease.cs +++ /dev/null @@ -1,185 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using Microsoft.Build.Framework; -using System; -using System.Collections.Generic; -using System.Diagnostics; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Net.Http; -using System.Threading; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Build.Tasks -{ - public partial class AzureBlobLease - { - private string _containerName; - private string _blobName; - private TimeSpan _maxWait; - private TimeSpan _delay; - private const int s_MaxWaitDefault = 60; // seconds - private const int s_DelayDefault = 500; // milliseconds - private CancellationTokenSource _cancellationTokenSource; - private Task _leaseRenewalTask; - private string _connectionString; - private string _accountName; - private string _accountKey; - private Microsoft.Build.Utilities.TaskLoggingHelper _log; - private string _leaseId; - private string _leaseUrl; - - public AzureBlobLease(string accountName, string accountKey, string connectionString, string containerName, string blobName, Microsoft.Build.Utilities.TaskLoggingHelper log, string maxWait = null, string delay=null) - { - _accountName = accountName; - _accountKey = accountKey; - _connectionString = connectionString; - _containerName = containerName; - _blobName = blobName; - _maxWait = !string.IsNullOrWhiteSpace(maxWait) ? TimeSpan.Parse(maxWait) : TimeSpan.FromSeconds(s_MaxWaitDefault); - _delay = !string.IsNullOrWhiteSpace(delay) ? TimeSpan.Parse(delay) : TimeSpan.FromMilliseconds(s_DelayDefault); - _log = log; - _leaseUrl = $"{Utility.AzureHelper.GetBlobRestUrl(_accountName, _containerName, _blobName)}?comp=lease"; - } - - public void Acquire() - { - Stopwatch stopWatch = new Stopwatch(); - stopWatch.Start(); - - while (stopWatch.ElapsedMilliseconds < _maxWait.TotalMilliseconds) - { - try - { - string leaseId = AcquireLeaseOnBlobAsync().GetAwaiter().GetResult(); - _cancellationTokenSource = new CancellationTokenSource(); - _leaseRenewalTask = Task.Run(() => - { AutoRenewLeaseOnBlob(this, _accountName, _accountKey, _containerName, _blobName, leaseId, _leaseUrl, _log); }, - _cancellationTokenSource.Token); - _leaseId = leaseId; - return; - } - catch (Exception e) - { - _log.LogMessage($"Retrying lease acquisition on {_blobName}, {e.Message}"); - Thread.Sleep(_delay); - } - } - ResetLeaseRenewalTaskState(); - throw new Exception($"Unable to acquire lease on {_blobName}"); - - } - - public void Release() - { - // Cancel the lease renewal task since we are about to release the lease. - ResetLeaseRenewalTaskState(); - - using (HttpClient client = new HttpClient()) - { - Tuple leaseAction = new Tuple("x-ms-lease-action", "release"); - Tuple headerLeaseId = new Tuple("x-ms-lease-id", _leaseId); - List> additionalHeaders = new List>() { leaseAction, headerLeaseId }; - var request = Utility.AzureHelper.RequestMessage("PUT", _leaseUrl, _accountName, _accountKey, additionalHeaders); - using (HttpResponseMessage response = Utility.AzureHelper.RequestWithRetry(_log, client, request).GetAwaiter().GetResult()) - { - if (!response.IsSuccessStatusCode) - { - _log.LogMessage($"Unable to release lease on container/blob {_containerName}/{_blobName}."); - } - } - } - } - - private async Task AcquireLeaseOnBlobAsync() - { - _log.LogMessage(MessageImportance.Low, $"Requesting lease for container/blob '{_containerName}/{_blobName}'."); - string leaseId = string.Empty; - using (HttpClient client = new HttpClient()) - { - try - { - Tuple leaseAction = new Tuple("x-ms-lease-action", "acquire"); - Tuple leaseDuration = new Tuple("x-ms-lease-duration", "60" /* seconds */); - List> additionalHeaders = new List>() { leaseAction, leaseDuration }; - var request = Utility.AzureHelper.RequestMessage("PUT", _leaseUrl, _accountName, _accountKey, additionalHeaders); - using (HttpResponseMessage response = await Utility.AzureHelper.RequestWithRetry(_log, client, request)) - { - leaseId = response.Headers.GetValues("x-ms-lease-id").FirstOrDefault(); - } - } - catch (Exception e) - { - _log.LogErrorFromException(e, true); - } - } - - return leaseId; - } - private static void AutoRenewLeaseOnBlob(AzureBlobLease instance, string accountName, string accountKey, string containerName, string blob, string leaseId, string leaseUrl, Microsoft.Build.Utilities.TaskLoggingHelper log) - { - TimeSpan maxWait = TimeSpan.FromSeconds(s_MaxWaitDefault); - TimeSpan delay = TimeSpan.FromMilliseconds(s_DelayDefault); - TimeSpan waitFor = maxWait; - CancellationToken token = instance._cancellationTokenSource.Token; - - while (true) - { - token.ThrowIfCancellationRequested(); - - try - { - log.LogMessage(MessageImportance.Low, $"Requesting lease for container/blob '{containerName}/{blob}'."); - using (HttpClient client = new HttpClient()) - { - Tuple leaseAction = new Tuple("x-ms-lease-action", "renew"); - Tuple headerLeaseId = new Tuple("x-ms-lease-id", leaseId); - List> additionalHeaders = new List>() { leaseAction, headerLeaseId }; - var request = Utility.AzureHelper.RequestMessage("PUT", leaseUrl, accountName, accountKey, additionalHeaders); - using (HttpResponseMessage response = Utility.AzureHelper.RequestWithRetry(log, client, request).GetAwaiter().GetResult()) - { - if (!response.IsSuccessStatusCode) - { - throw new Exception("Unable to acquire lease."); - } - } - } - waitFor = maxWait; - } - catch (Exception e) - { - Console.WriteLine($"Rerying lease renewal on {containerName}, {e.Message}"); - waitFor = delay; - } - token.ThrowIfCancellationRequested(); - - Thread.Sleep(waitFor); - } - } - - private void ResetLeaseRenewalTaskState() - { - // Cancel the lease renewal task if it was created - if (_leaseRenewalTask != null) - { - _cancellationTokenSource.Cancel(); - - // Block until the task ends. It can throw if we cancelled it before it completed. - try - { - _leaseRenewalTask.Wait(); - } - catch (Exception) - { - // Ignore the caught exception as it will be expected. - } - - _leaseRenewalTask = null; - } - } - - } -} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureConnectionStringBuildTask.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureConnectionStringBuildTask.cs deleted file mode 100644 index 419eeae8..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureConnectionStringBuildTask.cs +++ /dev/null @@ -1,57 +0,0 @@ -using Microsoft.Build.Utilities; -using System.Text.RegularExpressions; - -namespace Microsoft.DotNet.Build.Tasks.Utility -{ - public abstract class AzureConnectionStringBuildTask : Task - { - /// - /// Azure Storage account connection string. Supersedes Account Key / Name. - /// Will cause errors if both are set. - /// - public string ConnectionString { get; set; } - - /// - /// The Azure account key used when creating the connection string. - /// When we fully deprecate these, can just make them get; only. - /// - public string AccountKey { get; set; } - - /// - /// The Azure account name used when creating the connection string. - /// When we fully deprecate these, can just make them get; only. - /// - public string AccountName { get; set; } - - public void ParseConnectionString() - { - if (!string.IsNullOrEmpty(ConnectionString)) - { - if (!(string.IsNullOrEmpty(AccountKey) && string.IsNullOrEmpty(AccountName))) - { - Log.LogError("If the ConnectionString property is set, you must not provide AccountKey / AccountName. These values will be deprecated in the future."); - } - else - { - Regex storageConnectionStringRegex = new Regex("AccountName=(?.+?);AccountKey=(?.+?);"); - - MatchCollection matches = storageConnectionStringRegex.Matches(ConnectionString); - if (matches.Count > 0) - { - // When we deprecate this format, we'll want to demote these to private - AccountName = matches[0].Groups["name"].Value; - AccountKey = matches[0].Groups["key"].Value; - } - else - { - Log.LogError("Error parsing connection string. Please review its value."); - } - } - } - else if (string.IsNullOrEmpty(AccountKey) || string.IsNullOrEmpty(AccountName)) - { - Log.LogError("Error, must provide either ConnectionString or AccountName with AccountKey"); - } - } - } -} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs deleted file mode 100644 index f5e9d502..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/AzureHelper.cs +++ /dev/null @@ -1,466 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.Linq; -using System.Net; -using System.Net.Http; -using System.Net.Http.Headers; -using System.Security.Cryptography; -using System.Text; -using System.Text.RegularExpressions; -using System.Threading; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Build.Tasks.Utility -{ - // This is grabbed directly from buildtools and we should not duplicate this when we move ListAzureBlobs back to buildtools - public static class AzureHelper - { - /// - /// The storage api version. - /// - public static readonly string StorageApiVersion = "2015-04-05"; - public const string DateHeaderString = "x-ms-date"; - public const string VersionHeaderString = "x-ms-version"; - public const string AuthorizationHeaderString = "Authorization"; - public const string CacheControlString = "x-ms-blob-cache-control"; - public const string ContentTypeString = "x-ms-blob-content-type"; - - public enum SasAccessType - { - Read, - Write, - }; - - public static string AuthorizationHeader( - string storageAccount, - string storageKey, - string method, - DateTime now, - HttpRequestMessage request, - string ifMatch = "", - string contentMD5 = "", - string size = "", - string contentType = "") - { - string stringToSign = string.Empty; - stringToSign = string.Format( - "{0}\n\n\n{1}\n{5}\n{6}\n\n\n{2}\n\n\n\n{3}{4}", - method, - (size == string.Empty) ? string.Empty : size, - ifMatch, - GetCanonicalizedHeaders(request), - GetCanonicalizedResource(request.RequestUri, storageAccount), - contentMD5, - contentType); - byte[] signatureBytes = Encoding.UTF8.GetBytes(stringToSign); - string authorizationHeader; - using (HMACSHA256 hmacsha256 = new HMACSHA256(Convert.FromBase64String(storageKey))) - { - authorizationHeader = "SharedKey " + storageAccount + ":" - + Convert.ToBase64String(hmacsha256.ComputeHash(signatureBytes)); - } - - return authorizationHeader; - } - - public static string CreateContainerSasToken( - string accountName, - string containerName, - string key, - SasAccessType accessType, - int validityTimeInDays) - { - string signedPermissions = string.Empty; - switch (accessType) - { - case SasAccessType.Read: - signedPermissions = "r"; - break; - case SasAccessType.Write: - signedPermissions = "wdl"; - break; - default: - throw new ArgumentOutOfRangeException(nameof(accessType), accessType, "Unrecognized value"); - } - - string signedStart = DateTime.UtcNow.ToString("O"); - string signedExpiry = DateTime.UtcNow.AddDays(validityTimeInDays).ToString("O"); - string canonicalizedResource = "/blob/" + accountName + "/" + containerName; - string signedIdentifier = string.Empty; - string signedVersion = StorageApiVersion; - - string stringToSign = ConstructServiceStringToSign( - signedPermissions, - signedVersion, - signedExpiry, - canonicalizedResource, - signedIdentifier, - signedStart); - - byte[] signatureBytes = Encoding.UTF8.GetBytes(stringToSign); - string signature; - using (HMACSHA256 hmacSha256 = new HMACSHA256(Convert.FromBase64String(key))) - { - signature = Convert.ToBase64String(hmacSha256.ComputeHash(signatureBytes)); - } - - string sasToken = string.Format( - "?sv={0}&sr={1}&sig={2}&st={3}&se={4}&sp={5}", - WebUtility.UrlEncode(signedVersion), - WebUtility.UrlEncode("c"), - WebUtility.UrlEncode(signature), - WebUtility.UrlEncode(signedStart), - WebUtility.UrlEncode(signedExpiry), - WebUtility.UrlEncode(signedPermissions)); - - return sasToken; - } - - public static string GetCanonicalizedHeaders(HttpRequestMessage request) - { - StringBuilder sb = new StringBuilder(); - List headerNameList = (from headerName in request.Headers - where - headerName.Key.ToLowerInvariant() - .StartsWith("x-ms-", StringComparison.Ordinal) - select headerName.Key.ToLowerInvariant()).ToList(); - headerNameList.Sort(); - foreach (string headerName in headerNameList) - { - StringBuilder builder = new StringBuilder(headerName); - string separator = ":"; - foreach (string headerValue in GetHeaderValues(request.Headers, headerName)) - { - string trimmedValue = headerValue.Replace("\r\n", string.Empty); - builder.Append(separator); - builder.Append(trimmedValue); - separator = ","; - } - - sb.Append(builder); - sb.Append("\n"); - } - - return sb.ToString(); - } - - public static string GetCanonicalizedResource(Uri address, string accountName) - { - StringBuilder str = new StringBuilder(); - StringBuilder builder = new StringBuilder("/"); - builder.Append(accountName); - builder.Append(address.AbsolutePath); - str.Append(builder); - Dictionary> queryKeyValues = ExtractQueryKeyValues(address); - Dictionary> dictionary = GetCommaSeparatedList(queryKeyValues); - - foreach (KeyValuePair> pair in dictionary.OrderBy(p => p.Key)) - { - StringBuilder stringBuilder = new StringBuilder(string.Empty); - stringBuilder.Append(pair.Key + ":"); - string commaList = string.Join(",", pair.Value); - stringBuilder.Append(commaList); - str.Append("\n"); - str.Append(stringBuilder); - } - - return str.ToString(); - } - - public static List GetHeaderValues(HttpRequestHeaders headers, string headerName) - { - List list = new List(); - headers.TryGetValues(headerName, out IEnumerable values); - if (values != null) - { - list.Add((values.FirstOrDefault() ?? string.Empty).TrimStart(null)); - } - - return list; - } - - private static bool IsWithinRetryRange(HttpStatusCode statusCode) - { - // Retry on http client and server error codes (4xx - 5xx) as well as redirect - - var rawStatus = (int)statusCode; - if (rawStatus == 302) - return true; - else if (rawStatus >= 400 && rawStatus <= 599) - return true; - else - return false; - } - - public static async Task RequestWithRetry(TaskLoggingHelper loggingHelper, HttpClient client, - Func createRequest, Func validationCallback = null, int retryCount = 5, - int retryDelaySeconds = 5) - { - if (loggingHelper == null) - throw new ArgumentNullException(nameof(loggingHelper)); - if (client == null) - throw new ArgumentNullException(nameof(client)); - if (createRequest == null) - throw new ArgumentNullException(nameof(createRequest)); - if (retryCount < 1) - throw new ArgumentException(nameof(retryCount)); - if (retryDelaySeconds < 1) - throw new ArgumentException(nameof(retryDelaySeconds)); - - int retries = 0; - HttpResponseMessage response = null; - - // add a bit of randomness to the retry delay - var rng = new Random(); - - while (retries < retryCount) - { - if (retries > 0) - { - if (response != null) - { - response.Dispose(); - response = null; - } - - int delay = retryDelaySeconds * retries * rng.Next(1, 5); - loggingHelper.LogMessage(MessageImportance.Low, "Waiting {0} seconds before retry", delay); - await System.Threading.Tasks.Task.Delay(delay * 1000); - } - - try - { - using (var request = createRequest()) - response = await client.SendAsync(request); - } - catch (Exception e) - { - loggingHelper.LogWarningFromException(e, true); - - // if this is the final iteration let the exception bubble up - if (retries + 1 == retryCount) - throw; - } - - // response can be null if we fail to send the request - if (response != null) - { - if (validationCallback == null) - { - // check if the response code is within the range of failures - if (!IsWithinRetryRange(response.StatusCode)) - { - return response; - } - } - else - { - bool isSuccess = validationCallback(response); - if (!isSuccess) - { - loggingHelper.LogMessage("Validation callback returned retry for status code {0}", response.StatusCode); - } - else - { - loggingHelper.LogMessage("Validation callback returned success for status code {0}", response.StatusCode); - return response; - } - } - } - - ++retries; - } - - // retry count exceeded - loggingHelper.LogWarning("Retry count {0} exceeded", retryCount); - - // set some default values in case response is null - var statusCode = "None"; - var contentStr = "Null"; - if (response != null) - { - statusCode = response.StatusCode.ToString(); - contentStr = await response.Content.ReadAsStringAsync(); - response.Dispose(); - } - - throw new HttpRequestException(string.Format("Request failed with status {0} response {1}", statusCode, contentStr)); - } - - private static string ConstructServiceStringToSign( - string signedPermissions, - string signedVersion, - string signedExpiry, - string canonicalizedResource, - string signedIdentifier, - string signedStart, - string signedIP = "", - string signedProtocol = "", - string rscc = "", - string rscd = "", - string rsce = "", - string rscl = "", - string rsct = "") - { - // constructing string to sign based on spec in https://msdn.microsoft.com/en-us/library/azure/dn140255.aspx - var stringToSign = string.Join( - "\n", - signedPermissions, - signedStart, - signedExpiry, - canonicalizedResource, - signedIdentifier, - signedIP, - signedProtocol, - signedVersion, - rscc, - rscd, - rsce, - rscl, - rsct); - return stringToSign; - } - - private static Dictionary> ExtractQueryKeyValues(Uri address) - { - Dictionary> values = new Dictionary>(); - //Decode this to allow the regex to pull out the correct groups for signing - address = new Uri(WebUtility.UrlDecode(address.ToString())); - Regex newreg = new Regex(@"(?:\?|&)([^=]+)=([^&]+)"); - MatchCollection matches = newreg.Matches(address.Query); - foreach (Match match in matches) - { - string key, value; - if (!string.IsNullOrEmpty(match.Groups[1].Value)) - { - key = match.Groups[1].Value; - value = match.Groups[2].Value; - } - else - { - key = match.Groups[3].Value; - value = match.Groups[4].Value; - } - - if (values.TryGetValue(key, out HashSet setOfValues)) - { - setOfValues.Add(value); - } - else - { - HashSet newSet = new HashSet { value }; - values.Add(key, newSet); - } - } - - return values; - } - - private static Dictionary> GetCommaSeparatedList( - Dictionary> queryKeyValues) - { - Dictionary> dictionary = new Dictionary>(); - - foreach (string queryKeys in queryKeyValues.Keys) - { - queryKeyValues.TryGetValue(queryKeys, out HashSet setOfValues); - List list = new List(); - list.AddRange(setOfValues); - list.Sort(); - string commaSeparatedValues = string.Join(",", list); - string key = queryKeys.ToLowerInvariant(); - if (dictionary.TryGetValue(key, out HashSet setOfValues2)) - { - setOfValues2.Add(commaSeparatedValues); - } - else - { - HashSet newSet = new HashSet { commaSeparatedValues }; - dictionary.Add(key, newSet); - } - } - - return dictionary; - } - // This is duplicated code from https://github.com/dotnet/buildtools/blob/master/src/Microsoft.DotNet.Build.CloudTestTasks/AzureConnectionStringBuildTask.cs - // when we move "ListAzureBlobs.cs" into buildtools, we should eliminate this duplication. - public static Tuple ParseConnectionString(string connectionString) - { - Regex storageConnectionStringRegex = new Regex("AccountName=(?.+?);AccountKey=(?.+?);"); - - MatchCollection matches = storageConnectionStringRegex.Matches(connectionString); - if (matches.Count > 0) - { - return new Tuple(matches[0].Groups["name"].Value, matches[0].Groups["key"].Value); - } - else - { - return null; - } - } - - public static Func RequestMessage(string method, string url, string accountName, string accountKey, List> additionalHeaders = null, string body = null) - { - Func requestFunc = () => - { - HttpMethod httpMethod = HttpMethod.Get; - if(method == "PUT") - { - httpMethod = HttpMethod.Put; - } - else if (method == "DELETE") - { - httpMethod = HttpMethod.Delete; - } - DateTime dateTime = DateTime.UtcNow; - var request = new HttpRequestMessage(httpMethod, url); - request.Headers.Add(AzureHelper.DateHeaderString, dateTime.ToString("R", CultureInfo.InvariantCulture)); - request.Headers.Add(AzureHelper.VersionHeaderString, AzureHelper.StorageApiVersion); - if (additionalHeaders != null) - { - foreach (Tuple additionalHeader in additionalHeaders) - { - request.Headers.Add(additionalHeader.Item1, additionalHeader.Item2); - } - } - if (body != null) - { - request.Content = new StringContent(body); - request.Headers.Add(AzureHelper.AuthorizationHeaderString, AzureHelper.AuthorizationHeader( - accountName, - accountKey, - method, - dateTime, - request, - "", - "", - request.Content.Headers.ContentLength.ToString(), - request.Content.Headers.ContentType.ToString())); - } - else - { - request.Headers.Add(AzureHelper.AuthorizationHeaderString, AzureHelper.AuthorizationHeader( - accountName, - accountKey, - method, - dateTime, - request)); - } - return request; - }; - return requestFunc; - } - - public static string GetBlobRestUrl(string accountName, string containerName, string blob) - { - return $"https://{accountName}.blob.core.windows.net/{containerName}/{blob}"; - } - } -} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/CopyAzureBlobToBlob.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/CopyAzureBlobToBlob.cs deleted file mode 100644 index 1e49c777..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/CopyAzureBlobToBlob.cs +++ /dev/null @@ -1,100 +0,0 @@ -using Microsoft.Build.Framework; -using System; -using System.Collections.Generic; -using System.Net.Http; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Build.Tasks -{ - public partial class CopyAzureBlobToBlob : Utility.AzureConnectionStringBuildTask - { - [Required] - public string ContainerName { get; set; } - [Required] - public string SourceBlobName { get; set; } - [Required] - public string DestinationBlobName { get; set; } - - public override bool Execute() - { - return ExecuteAsync().GetAwaiter().GetResult(); - } - - public async Task ExecuteAsync() - { - ParseConnectionString(); - if (Log.HasLoggedErrors) - { - return false; - } - - string sourceUrl = Utility.AzureHelper.GetBlobRestUrl(AccountName, ContainerName, SourceBlobName); - string destinationUrl = Utility.AzureHelper.GetBlobRestUrl(AccountName, ContainerName, DestinationBlobName); - using (HttpClient client = new HttpClient()) - { - try - { - Tuple leaseAction = new Tuple("x-ms-lease-action", "acquire"); - Tuple leaseDuration = new Tuple("x-ms-lease-duration", "60" /* seconds */); - Tuple headerSource = new Tuple("x-ms-copy-source", sourceUrl); - List> additionalHeaders = new List>() { leaseAction, leaseDuration, headerSource }; - var request = Utility.AzureHelper.RequestMessage("PUT", destinationUrl, AccountName, AccountKey, additionalHeaders); - using (HttpResponseMessage response = await Utility.AzureHelper.RequestWithRetry(Log, client, request)) - { - if (response.IsSuccessStatusCode) - { - return true; - } - } - } - catch (Exception e) - { - Log.LogErrorFromException(e, true); - } - } - return false; - } - public static bool Execute(string accountName, - string accountKey, - string connectionString, - string containerName, - string sourceBlobName, - string destinationBlobName, - IBuildEngine buildengine, - ITaskHost taskHost) - { - CopyAzureBlobToBlob copyAzureBlobToBlob = new CopyAzureBlobToBlob() - { - AccountName = accountName, - AccountKey = accountKey, - ContainerName = containerName, - SourceBlobName = sourceBlobName, - DestinationBlobName = destinationBlobName, - BuildEngine = buildengine, - HostObject = taskHost - }; - return copyAzureBlobToBlob.Execute(); - } - public static Task ExecuteAsync(string accountName, - string accountKey, - string connectionString, - string containerName, - string sourceBlobName, - string destinationBlobName, - IBuildEngine buildengine, - ITaskHost taskHost) - { - CopyAzureBlobToBlob copyAzureBlobToBlob = new CopyAzureBlobToBlob() - { - AccountName = accountName, - AccountKey = accountKey, - ContainerName = containerName, - SourceBlobName = sourceBlobName, - DestinationBlobName = destinationBlobName, - BuildEngine = buildengine, - HostObject = taskHost - }; - return copyAzureBlobToBlob.ExecuteAsync(); - } - } -} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/DeleteAzureBlob.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/DeleteAzureBlob.cs deleted file mode 100644 index 4db6b885..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/DeleteAzureBlob.cs +++ /dev/null @@ -1,66 +0,0 @@ -using Microsoft.Build.Framework; -using System; -using System.Collections.Generic; -using System.Net.Http; - -namespace Microsoft.DotNet.Build.Tasks -{ - public partial class DeleteAzureBlob: Utility.AzureConnectionStringBuildTask - { - [Required] - public string ContainerName { get; set; } - [Required] - public string BlobName { get; set; } - - public override bool Execute() - { - ParseConnectionString(); - if (Log.HasLoggedErrors) - { - return false; - } - - string deleteUrl = $"https://{AccountName}.blob.core.windows.net/{ContainerName}/{BlobName}"; - - using (HttpClient client = new HttpClient()) - { - try - { - Tuple snapshots = new Tuple("x-ms-lease-delete-snapshots", "include"); - List> additionalHeaders = new List>() { snapshots }; - var request = Utility.AzureHelper.RequestMessage("DELETE", deleteUrl, AccountName, AccountKey, additionalHeaders); - using (HttpResponseMessage response = Utility.AzureHelper.RequestWithRetry(Log, client, request).GetAwaiter().GetResult()) - { - return response.IsSuccessStatusCode; - } - } - catch (Exception e) - { - Log.LogErrorFromException(e, true); - } - } - - return !Log.HasLoggedErrors; - } - - public static bool Execute(string accountName, - string accountKey, - string connectionString, - string containerName, - string blobName, - IBuildEngine buildengine, - ITaskHost taskHost) - { - DeleteAzureBlob deleteAzureoBlob = new DeleteAzureBlob() - { - AccountName = accountName, - AccountKey = accountKey, - ContainerName = containerName, - BlobName = blobName, - BuildEngine = buildengine, - HostObject = taskHost - }; - return deleteAzureoBlob.Execute(); - } - } -} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobFromAzure.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobFromAzure.cs deleted file mode 100644 index 81af14c4..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobFromAzure.cs +++ /dev/null @@ -1,153 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using Microsoft.Build.Framework; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Net.Http; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Build.Tasks -{ - public partial class DownloadBlobFromAzure : Utility.AzureConnectionStringBuildTask - { - /// - /// The name of the container to access. The specified name must be in the correct format, see the - /// following page for more info. https://msdn.microsoft.com/en-us/library/azure/dd135715.aspx - /// - [Required] - public string ContainerName { get; set; } - - [Required] - public string BlobName { get; set; } - - /// - /// Directory to download blob files to. - /// - [Required] - public string DownloadDirectory { get; set; } - - public override bool Execute() - { - return ExecuteAsync().GetAwaiter().GetResult(); - } - - public async Task ExecuteAsync() - { - ParseConnectionString(); - if (Log.HasLoggedErrors) - { - return false; - } - - Log.LogMessage(MessageImportance.Normal, "Downloading blob {0} from container {1} at storage account '{2}' to directory {3}.", - BlobName, ContainerName, AccountName, DownloadDirectory); - - List blobsNames = new List(); - string urlListBlobs = $"https://{AccountName}.blob.core.windows.net/{ContainerName}/{BlobName}"; - - Log.LogMessage(MessageImportance.Low, "Sending request to list blobsNames for container '{0}'.", ContainerName); - - using (HttpClient client = new HttpClient()) - { - try - { - Func createRequest = () => - { - DateTime dateTime = DateTime.UtcNow; - var request = new HttpRequestMessage(HttpMethod.Get, urlListBlobs); - request.Headers.Add(Utility.AzureHelper.DateHeaderString, dateTime.ToString("R", CultureInfo.InvariantCulture)); - request.Headers.Add(Utility.AzureHelper.VersionHeaderString, Utility.AzureHelper.StorageApiVersion); - request.Headers.Add(Utility.AzureHelper.AuthorizationHeaderString, Utility.AzureHelper.AuthorizationHeader( - AccountName, - AccountKey, - "GET", - dateTime, - request)); - return request; - }; - - // track the number of blobs that fail to download - string blob = Path.GetFileName(BlobName); - string filename = Path.Combine(DownloadDirectory, blob); - using (HttpResponseMessage response = await Utility.AzureHelper.RequestWithRetry(Log, client, createRequest)) - { - if (response.IsSuccessStatusCode) - { - // Blobs can be files but have the name of a directory. We'll skip those and log something weird happened. - if (!string.IsNullOrEmpty(Path.GetFileName(filename))) - { - Stream responseStream = await response.Content.ReadAsStreamAsync(); - - using (FileStream sourceStream = File.Open(filename, FileMode.Create)) - { - responseStream.CopyTo(sourceStream); - } - } - else - { - Log.LogWarning($"Unable to download blob '{blob}' as it has a directory-like name. This may cause problems if it was needed."); - } - } - else - { - Log.LogError("Failed to retrieve blob {0}, the status code was {1}", blob, response.StatusCode); - } - } - } - catch (Exception e) - { - Log.LogErrorFromException(e, true); - } - return !Log.HasLoggedErrors; - } - } - - public static bool Execute(string accountName, - string accountKey, - string connectionString, - string containerName, - string blobName, - string downloadDirectory, - IBuildEngine buildengine, - ITaskHost taskHost) - { - DownloadBlobFromAzure downloadBlobFromAzure = new DownloadBlobFromAzure() - { - AccountName = accountName, - AccountKey = accountKey, - ContainerName = containerName, - BlobName = blobName, - DownloadDirectory = downloadDirectory, - BuildEngine = buildengine, - HostObject = taskHost - }; - return downloadBlobFromAzure.Execute(); - } - - public static Task ExecuteAsync(string accountName, - string accountKey, - string connectionString, - string containerName, - string blobName, - string downloadDirectory, - IBuildEngine buildengine, - ITaskHost taskHost) - { - DownloadBlobFromAzure downloadBlobFromAzure = new DownloadBlobFromAzure() - { - AccountName = accountName, - AccountKey = accountKey, - ContainerName = containerName, - BlobName = blobName, - DownloadDirectory = downloadDirectory, - BuildEngine = buildengine, - HostObject = taskHost - }; - return downloadBlobFromAzure.ExecuteAsync(); - } - } -} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobsFromAzure.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobsFromAzure.cs deleted file mode 100644 index 9c3e1e8a..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/DownloadBlobsFromAzure.cs +++ /dev/null @@ -1,63 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using Microsoft.Build.Framework; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Net.Http; -using System.Threading.Tasks; - -namespace Microsoft.DotNet.Build.Tasks -{ - public partial class DownloadBlobsFromAzure : Utility.AzureConnectionStringBuildTask - { - /// - /// The name of the container to access. The specified name must be in the correct format, see the - /// following page for more info. https://msdn.microsoft.com/en-us/library/azure/dd135715.aspx - /// - [Required] - public string ContainerName { get; set; } - - [Required] - public ITaskItem[] BlobNames { get; set; } - - /// - /// Directory to download blob files to. - /// - [Required] - public string DownloadDirectory { get; set; } - - public override bool Execute() - { - var tasks = ExecuteAsync(); - if(tasks == null) - { - return false; - } - Task.WaitAll(tasks.ToArray()); - return !tasks.Any(t => t.Result == false); - } - - public List> ExecuteAsync() - { - ParseConnectionString(); - if (Log.HasLoggedErrors) - { - return null; - } - List> downloadTasks = new List>(); - foreach (var blobFile in BlobNames) - { - string localBlobFile = Path.Combine(DownloadDirectory, Path.GetFileName(blobFile.ItemSpec)); - Log.LogMessage($"Downloading {blobFile} to {localBlobFile}"); - - downloadTasks.Add(DownloadBlobFromAzure.ExecuteAsync(AccountName, AccountKey, ConnectionString, ContainerName, blobFile.ItemSpec, DownloadDirectory, BuildEngine, HostObject)); - } - return downloadTasks; - } - } -} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GenerateChecksums.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GenerateChecksums.cs deleted file mode 100644 index 4a134ed8..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GenerateChecksums.cs +++ /dev/null @@ -1,68 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using System; -using System.IO; -using System.Security.Cryptography; - -namespace Microsoft.DotNet.Build.Tasks -{ - public class GenerateChecksums : Task - { - /// - /// An item collection of files for which to generate checksums. Each item must have metadata - /// 'DestinationPath' that specifies the path of the checksum file to create. - /// - [Required] - public ITaskItem[] Items { get; set; } - - public override bool Execute() - { - foreach (ITaskItem item in Items) - { - try - { - string destinationPath = item.GetMetadata("DestinationPath"); - if (string.IsNullOrEmpty(destinationPath)) - { - throw new Exception($"Metadata 'DestinationPath' is missing for item '{item.ItemSpec}'."); - } - - if (!File.Exists(item.ItemSpec)) - { - throw new Exception($"The file '{item.ItemSpec}' does not exist."); - } - - Log.LogMessage( - MessageImportance.High, - "Generating checksum for '{0}' into '{1}'...", - item.ItemSpec, - destinationPath); - - using (FileStream stream = File.OpenRead(item.ItemSpec)) - { - using(HashAlgorithm hashAlgorithm = SHA512.Create()) - { - byte[] hash = hashAlgorithm.ComputeHash(stream); - string checksum = BitConverter.ToString(hash).Replace("-", string.Empty); - File.WriteAllText(destinationPath, checksum); - } - } - } - catch (Exception e) - { - // We have 2 log calls because we want a nice error message but we also want to capture the - // callstack in the log. - Log.LogError("An exception occurred while trying to generate a checksum for '{0}'.", item.ItemSpec); - Log.LogMessage(MessageImportance.Low, e.ToString()); - return false; - } - } - - return true; - } - } -} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs deleted file mode 100644 index 5a95893a..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetAzureBlobList.cs +++ /dev/null @@ -1,122 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using System; -using Microsoft.Build.Framework; -using System.Collections.Generic; -using System.Net.Http; -using System.Xml; -using System.Threading.Tasks; -using System.Linq; - -namespace Microsoft.DotNet.Build.Tasks -{ - public partial class GetAzureBlobList : Utility.AzureConnectionStringBuildTask - { - - /// - /// The name of the container to access. The specified name must be in the correct format, see the - /// following page for more info. https://msdn.microsoft.com/en-us/library/azure/dd135715.aspx - /// - [Required] - public string ContainerName { get; set; } - - [Output] - public string[] BlobNames { get; set; } - - public string FilterBlobNames { get; set; } - - public override bool Execute() - { - return ExecuteAsync().GetAwaiter().GetResult(); - } - - public static string [] Execute(string accountName, - string accountKey, - string connectionString, - string containerName, - string filterBlobNames, - IBuildEngine buildengine, - ITaskHost taskHost) - { - GetAzureBlobList getAzureBlobList = new GetAzureBlobList() - { - AccountName = accountName, - AccountKey = accountKey, - ContainerName = containerName, - FilterBlobNames = filterBlobNames, - BuildEngine = buildengine, - HostObject = taskHost - }; - getAzureBlobList.Execute(); - return getAzureBlobList.BlobNames; - } - - // This code is duplicated in BuildTools task DownloadFromAzure, and that code should be refactored to permit blob listing. - public async Task ExecuteAsync() - { - ParseConnectionString(); - - if (Log.HasLoggedErrors) - { - return false; - } - - List blobsNames = new List(); - string urlListBlobs = string.Format("https://{0}.blob.core.windows.net/{1}?restype=container&comp=list", AccountName, ContainerName); - if (!string.IsNullOrWhiteSpace(FilterBlobNames)) - { - urlListBlobs += $"&prefix={FilterBlobNames}"; - } - Log.LogMessage(MessageImportance.Low, "Sending request to list blobsNames for container '{0}'.", ContainerName); - - using (HttpClient client = new HttpClient()) - { - try - { - var createRequest = Utility.AzureHelper.RequestMessage("GET", urlListBlobs, AccountName, AccountKey); - - XmlDocument responseFile; - string nextMarker = string.Empty; - using (HttpResponseMessage response = await Utility.AzureHelper.RequestWithRetry(Log, client, createRequest)) - { - responseFile = new XmlDocument(); - responseFile.LoadXml(await response.Content.ReadAsStringAsync()); - XmlNodeList elemList = responseFile.GetElementsByTagName("Name"); - - blobsNames.AddRange(elemList.Cast() - .Select(x => x.InnerText) - .ToList()); - - nextMarker = responseFile.GetElementsByTagName("NextMarker").Cast().FirstOrDefault()?.InnerText; - } - while (!string.IsNullOrEmpty(nextMarker)) - { - urlListBlobs = string.Format($"https://{AccountName}.blob.core.windows.net/{ContainerName}?restype=container&comp=list&marker={nextMarker}"); - var nextRequest = Utility.AzureHelper.RequestMessage("GET", urlListBlobs, AccountName, AccountKey); - using (HttpResponseMessage nextResponse = Utility.AzureHelper.RequestWithRetry(Log, client, nextRequest).GetAwaiter().GetResult()) - { - responseFile = new XmlDocument(); - responseFile.LoadXml(await nextResponse.Content.ReadAsStringAsync()); - XmlNodeList elemList = responseFile.GetElementsByTagName("Name"); - - blobsNames.AddRange(elemList.Cast() - .Select(x => x.InnerText) - .ToList()); - - nextMarker = responseFile.GetElementsByTagName("NextMarker").Cast().FirstOrDefault()?.InnerText; - } - } - BlobNames = blobsNames.ToArray(); - } - catch (Exception e) - { - Log.LogErrorFromException(e, true); - } - return !Log.HasLoggedErrors; - } - } - } - -} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetHostInformation.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetHostInformation.cs deleted file mode 100644 index 20f73c40..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/GetHostInformation.cs +++ /dev/null @@ -1,45 +0,0 @@ -using System; -using System.IO; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Microsoft.DotNet.PlatformAbstractions; - -namespace Microsoft.DotNet.Build.Tasks -{ - /* - * Used vendored code from Microsoft.DotNet.PlatformAbstractions. - * Long term we should use that library once it is clear how to - * get MSBuild on core to be able to load the dependent assembly. - */ - public class GetHostInformation : Task - { - [Output] - public string Rid { get; set; } - - [Output] - public string OSName { get; set; } - - public override bool Execute() - { - Rid = RuntimeEnvironment.GetRuntimeIdentifier(); - - switch (RuntimeEnvironment.OperatingSystemPlatform) - { - case Platform.Windows: - OSName = "Windows_NT"; - break; - case Platform.Linux: - OSName = "Linux"; - break; - case Platform.Darwin: - OSName = "OSX"; - break; - default: - Log.LogError("Could not determine display name for platform."); - return false; - } - - return true; - } - } -} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.builds b/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.builds deleted file mode 100644 index d09375c7..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.builds +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - TargetGroup=netstandard1.5 - - - TargetGroup=net45 - - - - \ No newline at end of file diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.csproj b/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.csproj deleted file mode 100644 index 7981e648..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/Microsoft.DotNet.Build.Tasks.Local.csproj +++ /dev/null @@ -1,77 +0,0 @@ - - - - - Library - .NETStandard,Version=v1.5 - netstandard1.5 - .NETFramework,Version=v4.5.1 - net451 - false - {B507BED2-0A28-456A-99C6-AD7AA148E35F} - $(LocalToolRuntimePath) - $(LocalToolRuntimePath)\net46 - $(BaseIntermediateOutputPath)tools-local/$(MSBuildProjectName)/$(TargetGroup) - dnxcore50;portable-net45+win8+wpa81 - true - .NETStandard - $(IntermediateOutputPath) - true - true - - - - - - - - - 1.2.0-beta-001090 - - - 1.3.0 - - - 9.0.1 - - - - - 1.0.1 - - - - - - - - - - - - - - 0.1.0-preview-00022 - - - 0.1.0-preview-00022 - - - 0.1.0-preview-00022 - - - 0.1.0-preview-00022 - - - 4.5.24 - None - - - 1.6.0 - - - 4.0.0 - - - - diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/PublishStringToAzureBlob.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/PublishStringToAzureBlob.cs deleted file mode 100644 index a3e8b2c2..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/PublishStringToAzureBlob.cs +++ /dev/null @@ -1,73 +0,0 @@ -using Microsoft.Build.Framework; -using Microsoft.DotNet.Build.Tasks.Utility; -using System; -using System.Collections.Generic; -using System.Net.Http; - -namespace Microsoft.DotNet.Build.Tasks -{ - public partial class PublishStringToAzureBlob : Utility.AzureConnectionStringBuildTask - { - [Required] - public string BlobName { get; set; } - [Required] - public string ContainerName { get; set; } - [Required] - public string Content { get; set; } - public string ContentType { get; set; } - - public override bool Execute() - { - ParseConnectionString(); - - string blobUrl = $"https://{AccountName}.blob.core.windows.net/{ContainerName}/{BlobName}"; - using (HttpClient client = new HttpClient()) - { - try - { - Tuple headerBlobType = new Tuple("x-ms-blob-type", "BlockBlob"); - List> additionalHeaders = new List>() { headerBlobType }; - - if (!string.IsNullOrEmpty(ContentType)) - { - additionalHeaders.Add(new Tuple(AzureHelper.ContentTypeString, ContentType)); - } - - var request = Utility.AzureHelper.RequestMessage("PUT", blobUrl, AccountName, AccountKey, additionalHeaders, Content); - - Utility.AzureHelper.RequestWithRetry(Log, client, request).GetAwaiter().GetResult(); - } - catch (Exception e) - { - Log.LogErrorFromException(e, true); - } - } - - return !Log.HasLoggedErrors; - } - - public static bool Execute(string accountName, - string accountKey, - string connectionString, - string containerName, - string blobName, - string content, - string contentType, - IBuildEngine buildengine, - ITaskHost taskHost) - { - PublishStringToAzureBlob publishStringToBlob = new PublishStringToAzureBlob() - { - AccountName = accountName, - AccountKey = accountKey, - ContainerName = containerName, - BlobName = blobName, - Content = content, - ContentType = contentType, - BuildEngine = buildengine, - HostObject = taskHost - }; - return publishStringToBlob.Execute(); - } - } -} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/README.md b/tools-local/Microsoft.DotNet.Build.Tasks.Local/README.md deleted file mode 100644 index f2f16a5f..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/README.md +++ /dev/null @@ -1 +0,0 @@ -These tasks are candidates to be moved to BuildTools or are branched directly from BuildTools and refactored. \ No newline at end of file diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadClient.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadClient.cs deleted file mode 100644 index f5b609fd..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadClient.cs +++ /dev/null @@ -1,210 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Net; -using System.Net.Http; -using System.Text; -using System.Threading; -using Task = System.Threading.Tasks.Task; - -namespace Microsoft.DotNet.Build.Tasks.Utility -{ - public class UploadClient - { - private TaskLoggingHelper log; - - public UploadClient(TaskLoggingHelper loggingHelper) - { - log = loggingHelper; - } - - public string EncodeBlockIds(int numberOfBlocks, int lengthOfId) - { - string numberOfBlocksString = numberOfBlocks.ToString("D" + lengthOfId); - if (Encoding.UTF8.GetByteCount(numberOfBlocksString) <= 64) - { - byte[] bytes = Encoding.UTF8.GetBytes(numberOfBlocksString); - return Convert.ToBase64String(bytes); - } - else - { - throw new Exception("Task failed - Could not encode block id."); - } - } - - public async Task UploadBlockBlobAsync( - CancellationToken ct, - string AccountName, - string AccountKey, - string ContainerName, - string filePath, - string destinationBlob) - { - string resourceUrl = string.Format("https://{0}.blob.core.windows.net/{1}", AccountName, ContainerName); - - string fileName = destinationBlob; - fileName = fileName.Replace("\\", "/"); - string blobUploadUrl = resourceUrl + "/" + fileName; - int size = (int)new FileInfo(filePath).Length; - int blockSize = 4 * 1024 * 1024; //4MB max size of a block blob - int bytesLeft = size; - List blockIds = new List(); - int numberOfBlocks = (size / blockSize) + 1; - int countForId = 0; - using (FileStream fileStreamTofilePath = new FileStream(filePath, FileMode.Open)) - { - int offset = 0; - - while (bytesLeft > 0) - { - int nextBytesToRead = (bytesLeft < blockSize) ? bytesLeft : blockSize; - byte[] fileBytes = new byte[blockSize]; - int read = fileStreamTofilePath.Read(fileBytes, 0, nextBytesToRead); - - if (nextBytesToRead != read) - { - throw new Exception(string.Format( - "Number of bytes read ({0}) from file {1} isn't equal to the number of bytes expected ({2}) .", - read, fileName, nextBytesToRead)); - } - - string blockId = EncodeBlockIds(countForId, numberOfBlocks.ToString().Length); - - blockIds.Add(blockId); - string blockUploadUrl = blobUploadUrl + "?comp=block&blockid=" + WebUtility.UrlEncode(blockId); - - using (HttpClient client = new HttpClient()) - { - client.DefaultRequestHeaders.Clear(); - Func createRequest = () => - { - DateTime dt = DateTime.UtcNow; - var req = new HttpRequestMessage(HttpMethod.Put, blockUploadUrl); - req.Headers.Add(AzureHelper.DateHeaderString, dt.ToString("R", CultureInfo.InvariantCulture)); - req.Headers.Add(AzureHelper.VersionHeaderString, AzureHelper.StorageApiVersion); - req.Headers.Add( - AzureHelper.AuthorizationHeaderString, - AzureHelper.AuthorizationHeader( - AccountName, - AccountKey, - "PUT", - dt, - req, - string.Empty, - string.Empty, - nextBytesToRead.ToString(), - string.Empty)); - - Stream postStream = new MemoryStream(); - postStream.Write(fileBytes, 0, nextBytesToRead); - postStream.Seek(0, SeekOrigin.Begin); - req.Content = new StreamContent(postStream); - return req; - }; - - log.LogMessage(MessageImportance.Low, "Sending request to upload part {0} of file {1}", countForId, fileName); - - using (HttpResponseMessage response = await AzureHelper.RequestWithRetry(log, client, createRequest)) - { - log.LogMessage( - MessageImportance.Low, - "Received response to upload part {0} of file {1}: Status Code:{2} Status Desc: {3}", - countForId, - fileName, - response.StatusCode, - await response.Content.ReadAsStringAsync()); - } - } - - offset += read; - bytesLeft -= nextBytesToRead; - countForId += 1; - } - } - - string blockListUploadUrl = blobUploadUrl + "?comp=blocklist"; - - using (HttpClient client = new HttpClient()) - { - Func createRequest = () => - { - DateTime dt1 = DateTime.UtcNow; - var req = new HttpRequestMessage(HttpMethod.Put, blockListUploadUrl); - req.Headers.Add(AzureHelper.DateHeaderString, dt1.ToString("R", CultureInfo.InvariantCulture)); - req.Headers.Add(AzureHelper.VersionHeaderString, AzureHelper.StorageApiVersion); - string contentType = DetermineContentTypeBasedOnFileExtension(filePath); - if (!string.IsNullOrEmpty(contentType)) - { - req.Headers.Add(AzureHelper.ContentTypeString, contentType); - } - string cacheControl = DetermineCacheControlBasedOnFileExtension(filePath); - if (!string.IsNullOrEmpty(cacheControl)) - { - req.Headers.Add(AzureHelper.CacheControlString, cacheControl); - } - - var body = new StringBuilder(""); - foreach (object item in blockIds) - body.AppendFormat("{0}", item); - - body.Append(""); - byte[] bodyData = Encoding.UTF8.GetBytes(body.ToString()); - req.Headers.Add( - AzureHelper.AuthorizationHeaderString, - AzureHelper.AuthorizationHeader( - AccountName, - AccountKey, - "PUT", - dt1, - req, - string.Empty, - string.Empty, - bodyData.Length.ToString(), - string.Empty)); - Stream postStream = new MemoryStream(); - postStream.Write(bodyData, 0, bodyData.Length); - postStream.Seek(0, SeekOrigin.Begin); - req.Content = new StreamContent(postStream); - return req; - }; - - using (HttpResponseMessage response = await AzureHelper.RequestWithRetry(log, client, createRequest)) - { - log.LogMessage( - MessageImportance.Low, - "Received response to combine block list for file {0}: Status Code:{1} Status Desc: {2}", - fileName, - response.StatusCode, - await response.Content.ReadAsStringAsync()); - } - } - } - private string DetermineContentTypeBasedOnFileExtension(string filename) - { - if(Path.GetExtension(filename) == ".svg") - { - return "image/svg+xml"; - } - else if(Path.GetExtension(filename) == ".version") - { - return "text/plain"; - } - return string.Empty; - } - private string DetermineCacheControlBasedOnFileExtension(string filename) - { - if(Path.GetExtension(filename) == ".svg") - { - return "No-Cache"; - } - return string.Empty; - } - } -} diff --git a/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadToAzure.cs b/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadToAzure.cs deleted file mode 100644 index 6e95d96f..00000000 --- a/tools-local/Microsoft.DotNet.Build.Tasks.Local/UploadToAzure.cs +++ /dev/null @@ -1,177 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Threading; -using System.Threading.Tasks; -using System.Xml; -using System.Linq; -using System.Net.Http; - -using Microsoft.Build.Framework; -using ThreadingTask = System.Threading.Tasks.Task; - -namespace Microsoft.DotNet.Build.Tasks -{ - - public partial class UploadToAzure : Utility.AzureConnectionStringBuildTask - { - private static readonly CancellationTokenSource TokenSource = new CancellationTokenSource(); - private static readonly CancellationToken CancellationToken = TokenSource.Token; - - /// - /// The name of the container to access. The specified name must be in the correct format, see the - /// following page for more info. https://msdn.microsoft.com/en-us/library/azure/dd135715.aspx - /// - [Required] - public string ContainerName { get; set; } - - /// - /// An item group of files to upload. Each item must have metadata RelativeBlobPath - /// that specifies the path relative to ContainerName where the item will be uploaded. - /// - [Required] - public ITaskItem[] Items { get; set; } - - /// - /// Indicates if the destination blob should be overwritten if it already exists. The default if false. - /// - public bool Overwrite { get; set; } = false; - - /// - /// Specifies the maximum number of clients to concurrently upload blobs to azure - /// - public int MaxClients { get; set; } = 8; - - public void Cancel() - { - TokenSource.Cancel(); - } - - public override bool Execute() - { - return ExecuteAsync(CancellationToken).GetAwaiter().GetResult(); - } - - public async Task ExecuteAsync(CancellationToken ct) - { - ParseConnectionString(); - if (Log.HasLoggedErrors) - { - return false; - } - - Log.LogMessage( - MessageImportance.Normal, - "Begin uploading blobs to Azure account {0} in container {1}.", - AccountName, - ContainerName); - - if (Items.Length == 0) - { - Log.LogError("No items were provided for upload."); - return false; - } - - // first check what blobs are present - string checkListUrl = string.Format( - "https://{0}.blob.core.windows.net/{1}?restype=container&comp=list", - AccountName, - ContainerName); - - HashSet blobsPresent = new HashSet(StringComparer.OrdinalIgnoreCase); - - try - { - using (HttpClient client = new HttpClient()) - { - Func createRequest = () => - { - DateTime dt = DateTime.UtcNow; - var req = new HttpRequestMessage(HttpMethod.Get, checkListUrl); - req.Headers.Add(Utility.AzureHelper.DateHeaderString, dt.ToString("R", CultureInfo.InvariantCulture)); - req.Headers.Add(Utility.AzureHelper.VersionHeaderString, Utility.AzureHelper.StorageApiVersion); - req.Headers.Add(Utility.AzureHelper.AuthorizationHeaderString, Utility.AzureHelper.AuthorizationHeader( - AccountName, - AccountKey, - "GET", - dt, - req)); - return req; - }; - - Log.LogMessage(MessageImportance.Low, "Sending request to check whether Container blobs exist"); - using (HttpResponseMessage response = await Utility.AzureHelper.RequestWithRetry(Log, client, createRequest)) - { - var doc = new XmlDocument(); - doc.LoadXml(await response.Content.ReadAsStringAsync()); - - XmlNodeList nodes = doc.DocumentElement.GetElementsByTagName("Blob"); - - foreach (XmlNode node in nodes) - { - blobsPresent.Add(node["Name"].InnerText); - } - - Log.LogMessage(MessageImportance.Low, "Received response to check whether Container blobs exist"); - } - } - - using (var clientThrottle = new SemaphoreSlim(this.MaxClients, this.MaxClients)) - { - await ThreadingTask.WhenAll(Items.Select(item => UploadAsync(ct, item, blobsPresent, clientThrottle))); - } - - Log.LogMessage(MessageImportance.Normal, "Upload to Azure is complete, a total of {0} items were uploaded.", Items.Length); - } - catch (Exception e) - { - Log.LogErrorFromException(e, true); - } - return !Log.HasLoggedErrors; - } - - private async ThreadingTask UploadAsync(CancellationToken ct, ITaskItem item, HashSet blobsPresent, SemaphoreSlim clientThrottle) - { - if (ct.IsCancellationRequested) - { - Log.LogError("Task UploadToAzure cancelled"); - ct.ThrowIfCancellationRequested(); - } - - string relativeBlobPath = item.GetMetadata("RelativeBlobPath"); - if (string.IsNullOrEmpty(relativeBlobPath)) - throw new Exception(string.Format("Metadata 'RelativeBlobPath' is missing for item '{0}'.", item.ItemSpec)); - - if (!File.Exists(item.ItemSpec)) - throw new Exception(string.Format("The file '{0}' does not exist.", item.ItemSpec)); - - if (!Overwrite && blobsPresent.Contains(relativeBlobPath)) - throw new Exception(string.Format("The blob '{0}' already exists.", relativeBlobPath)); - - await clientThrottle.WaitAsync(); - - try - { - Log.LogMessage("Uploading {0} to {1}.", item.ItemSpec, ContainerName); - Utility.UploadClient uploadClient = new Utility.UploadClient(Log); - await - uploadClient.UploadBlockBlobAsync( - ct, - AccountName, - AccountKey, - ContainerName, - item.ItemSpec, - relativeBlobPath); - } - finally - { - clientThrottle.Release(); - } - } - } -} diff --git a/tools-local/tasks/FinalizeBuild.cs b/tools-local/tasks/FinalizeBuild.cs index fac14b25..9e4cd053 100644 --- a/tools-local/tasks/FinalizeBuild.cs +++ b/tools-local/tasks/FinalizeBuild.cs @@ -2,8 +2,9 @@ // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. -using System; using Microsoft.Build.Framework; +using Microsoft.DotNet.Build.CloudTestTasks; +using System; using System.IO; using System.Collections.Generic; using System.Text.RegularExpressions; @@ -18,7 +19,7 @@ using System.Threading; namespace Microsoft.DotNet.Build.Tasks { - public partial class FinalizeBuild : Utility.AzureConnectionStringBuildTask + public class FinalizeBuild : AzureConnectionStringBuildTask { [Required] public string SemaphoreBlob { get; set; } @@ -181,7 +182,7 @@ namespace Microsoft.DotNet.Build.Tasks public string[] GetBlobList(string path) { - return GetAzureBlobList.Execute(AccountName, + return ListAzureBlobs.Execute(AccountName, AccountKey, ConnectionString, ContainerName, diff --git a/tools-local/tasks/core-setup.tasks.builds b/tools-local/tasks/core-setup.tasks.builds index d09375c7..d37dd953 100644 --- a/tools-local/tasks/core-setup.tasks.builds +++ b/tools-local/tasks/core-setup.tasks.builds @@ -3,7 +3,7 @@ - TargetGroup=netstandard1.5 + TargetGroup=netstandard1.3 TargetGroup=net45 diff --git a/tools-local/tasks/core-setup.tasks.csproj b/tools-local/tasks/core-setup.tasks.csproj index b296cb4c..264fb406 100644 --- a/tools-local/tasks/core-setup.tasks.csproj +++ b/tools-local/tasks/core-setup.tasks.csproj @@ -3,8 +3,8 @@ Library - .NETStandard,Version=v1.5 - netstandard1.5 + .NETStandard,Version=v1.3 + netstandard1.3 .NETFramework,Version=v4.5.1 net451 false @@ -19,7 +19,7 @@ true true - + @@ -34,6 +34,9 @@ + + + 0.1.0-preview-00022 @@ -60,6 +63,9 @@ + + + 1.0.1 @@ -73,11 +79,5 @@ - - - {b507bed2-0a28-456a-99c6-ad7aa148e35f} - Microsoft.DotNet.Build.Tasks.Local - - From c9d23e80bea49018d3d32c9e10cffc140413a079 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Tue, 6 Jun 2017 13:08:33 -0700 Subject: [PATCH 512/625] Update CoreFx, Standard, WCF to preview1-25406-02, preview1-25406-01, preview1-25406-01, respectively (#2630) --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index 6752825b..24aabfc3 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 82fc1fc68bfa1d55e43913b188868879f31de8e7 + effbb2746141bd2f182f62411cad010f05bbf440 82fc1fc68bfa1d55e43913b188868879f31de8e7 - 4081b2616c091ea60c2cf069421b9438493a4a08 - 4081b2616c091ea60c2cf069421b9438493a4a08 + effbb2746141bd2f182f62411cad010f05bbf440 + effbb2746141bd2f182f62411cad010f05bbf440 - 4.5.0-preview1-25406-01 + 4.5.0-preview1-25406-02 2.1.0-preview1-25324-02 2.1.0-preview1-25405-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25405-01 + 2.1.0-preview1-25406-01 1.4.1 - 4.5.0-preview1-25405-01 + 4.5.0-preview1-25406-01 From 3fbb574954f1f3e3fac31077cc8ec1cea7b729d5 Mon Sep 17 00:00:00 2001 From: Jose Perez Rodriguez Date: Tue, 6 Jun 2017 13:56:26 -0700 Subject: [PATCH 513/625] Removing CoreCLR from uap10.1 package for both aot and non-aot runtimes --- .../src/Microsoft.NETCore.UniversalWindowsPlatform.depproj | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj index aff8aa3b..1ecddf17 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj @@ -26,9 +26,6 @@ $(CoreFxVersion) - - $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - $(PlatformPackageVersion) @@ -65,9 +62,6 @@ - - <_runtimeCLR Include="@(ReferenceCopyLocalPaths)" Condition="'%(ReferenceCopyLocalPaths.FileName)' == 'coreclr' OR '%(ReferenceCopyLocalPaths.FileName)' == 'libcoreclr'" /> - <_FilesToPackage Include="@(ReferenceCopyLocalPaths)"> From 936a6f7dd9c539aaa4ea6e2dd246c3fb1ecc3975 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Tue, 6 Jun 2017 20:25:40 -0700 Subject: [PATCH 514/625] Ensure buildversion.props is evaluated before dotnet restore --- build.proj | 10 ++++++---- restore.proj | 10 ++++++++++ 2 files changed, 16 insertions(+), 4 deletions(-) create mode 100644 restore.proj diff --git a/build.proj b/build.proj index c08c0271..cec1b1c7 100644 --- a/build.proj +++ b/build.proj @@ -14,10 +14,10 @@ - BatchRestorePackages; - ValidateExactRestore; CreateOrUpdateCurrentVersionFile; CreateVersionInfoFile; + BatchRestorePackages; + ValidateExactRestore; BuildCustomTasks; @@ -56,8 +56,10 @@ - - + + + diff --git a/restore.proj b/restore.proj new file mode 100644 index 00000000..093c3088 --- /dev/null +++ b/restore.proj @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file From 51d28b43c50e4010d2b9e762b41966ac73f118cf Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Tue, 6 Jun 2017 20:32:52 -0700 Subject: [PATCH 515/625] Remove redundant condition --- build.proj | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/build.proj b/build.proj index cec1b1c7..dda66d09 100644 --- a/build.proj +++ b/build.proj @@ -56,10 +56,7 @@ - - - + From c1692ebc50d2963656652a92899d8903fe18b08d Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Tue, 6 Jun 2017 21:50:04 -0700 Subject: [PATCH 516/625] Add comment --- build.proj | 3 +++ 1 file changed, 3 insertions(+) diff --git a/build.proj b/build.proj index dda66d09..47378ea9 100644 --- a/build.proj +++ b/build.proj @@ -56,6 +56,9 @@ + From ad495acf4c74e4577c7de8158aa42d518bdc1c18 Mon Sep 17 00:00:00 2001 From: Steve Harter Date: Wed, 7 Jun 2017 09:22:43 -0500 Subject: [PATCH 517/625] Disable global location lookup for non Windows (#2633) Remove support for global location lookup based on PATH for Linux\Mac --- src/corehost/common/pal.unix.cpp | 51 +------------------ ...nThatICareAboutMultilevelSharedFxLookup.cs | 29 ++++++++++- src/test/TestUtils/Command.cs | 30 ++--------- src/test/TestUtils/DotNetCli.cs | 3 +- 4 files changed, 33 insertions(+), 80 deletions(-) diff --git a/src/corehost/common/pal.unix.cpp b/src/corehost/common/pal.unix.cpp index 9f0fb4fe..4c07ed5e 100644 --- a/src/corehost/common/pal.unix.cpp +++ b/src/corehost/common/pal.unix.cpp @@ -182,41 +182,6 @@ bool is_executable(const pal::string_t& file_path) return ((st.st_mode & S_IEXEC) != 0); } -static -bool locate_dotnet_on_path(std::vector* dotnet_exes) -{ - pal::string_t path; - if (!pal::getenv(_X("PATH"), &path)) - { - return false; - } - - pal::string_t tok; - pal::stringstream_t ss(path); - while (std::getline(ss, tok, PATH_SEPARATOR)) - { - size_t start_pos = tok.find_first_not_of(_X(" \t")); - if (start_pos == pal::string_t::npos) - { - continue; - } - - append_path(&tok, _X("dotnet")); - if (pal::realpath(&tok) && is_executable(tok)) - { - dotnet_exes->push_back(tok); - } - tok.clear(); - } - - if (dotnet_exes->empty()) - { - return false; - } - - return true; -} - bool pal::get_local_dotnet_dir(pal::string_t* recv) { recv->clear(); @@ -241,20 +206,8 @@ bool pal::get_local_dotnet_dir(pal::string_t* recv) bool pal::get_global_dotnet_dirs(std::vector* recv) { - - std::vector dotnet_exes; - if (!locate_dotnet_on_path(&dotnet_exes)) - { - return false; - } - - for (pal::string_t path : dotnet_exes) - { - pal::string_t dir = get_directory(path); - recv->push_back(dir); - } - - return true; + // No support for global directories in Unix. + return false; } pal::string_t trim_quotes(pal::string_t stringToCleanup) diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs index 5b311991..b9161980 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSharedFxLookup.cs @@ -169,6 +169,11 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku { return; } + else + { + // Currently no support for global locations on Linux; remaining test code below is preserved for now. + return; + } var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture .Copy(); @@ -415,6 +420,11 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku { return; } + else + { + // Currently no support for global locations on Linux; remaining test code below is preserved for now. + return; + } var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture .Copy(); @@ -481,6 +491,11 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku { return; } + else + { + // Currently no support for global locations on Linux; remaining test code below is preserved for now. + return; + } var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture .Copy(); @@ -529,7 +544,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku { return; } - + else + { + // Currently no support for global locations on Linux; remaining test code below is preserved for now. + return; + } + var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture .Copy(); @@ -595,7 +615,12 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSharedFxLooku { return; } - + else + { + // Currently no support for global locations on Linux; remaining test code below is preserved for now. + return; + } + var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture .Copy(); diff --git a/src/test/TestUtils/Command.cs b/src/test/TestUtils/Command.cs index 4f536358..0e1114e6 100644 --- a/src/test/TestUtils/Command.cs +++ b/src/test/TestUtils/Command.cs @@ -238,41 +238,17 @@ namespace Microsoft.DotNet.Cli.Build.Framework _process.StartInfo.Environment[userDir] = userprofile; return this; } - public Command SanitizeGlobalLocation() - { - if (RuntimeEnvironment.OperatingSystemPlatform != Platform.Windows) - { - var current_path = _process.StartInfo.Environment["PATH"]; - var new_path = new System.Text.StringBuilder(); - //Remove any global dotnet that has been set - foreach (var sub_path in current_path.Split(Path.PathSeparator)) - { - var candidate = Path.Combine(sub_path, "dotnet"); - if (!File.Exists(candidate)) - { - new_path.Append(sub_path); - new_path.Append(Path.PathSeparator); - } - } - _process.StartInfo.Environment["PATH"] = new_path.ToString(); - } - return this; - } + public Command WithGlobalLocation(string global) { - if (RuntimeEnvironment.OperatingSystemPlatform == Platform.Windows) { - throw new NotImplementedException("Global location override needs work "); + throw new NotImplementedException("Global location override needs test improvements for Windows"); } else { - var current_path = _process.StartInfo.Environment["PATH"]; - _process.StartInfo.Environment["PATH"] = current_path + Path.PathSeparator + global; + throw new NotSupportedException("Global location override not supported for Linux"); } - - - return this; } public Command EnvironmentVariable(string name, string value) diff --git a/src/test/TestUtils/DotNetCli.cs b/src/test/TestUtils/DotNetCli.cs index 48b46373..c7d1d817 100644 --- a/src/test/TestUtils/DotNetCli.cs +++ b/src/test/TestUtils/DotNetCli.cs @@ -31,8 +31,7 @@ namespace Microsoft.DotNet.Cli.Build } return Command.Create(Path.Combine(BinPath, $"dotnet{Constants.ExeSuffix}"), newArgs) - .EnvironmentVariable("DOTNET_SKIP_FIRST_TIME_EXPERIENCE", "1") - .SanitizeGlobalLocation(); + .EnvironmentVariable("DOTNET_SKIP_FIRST_TIME_EXPERIENCE", "1"); } public Command Restore(params string[] args) => Exec("restore", args); From dc1fc5eebfc6133b82429d0d3bd1eca2d4f87041 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Wed, 7 Jun 2017 08:47:47 -0700 Subject: [PATCH 518/625] Update CoreClr, CoreFx, Standard, WCF to preview1-25407-02, preview1-25407-02, preview1-25407-01, preview1-25407-01, respectively (#2634) --- dependencies.props | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dependencies.props b/dependencies.props index 24aabfc3..2990140b 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - effbb2746141bd2f182f62411cad010f05bbf440 - 82fc1fc68bfa1d55e43913b188868879f31de8e7 - effbb2746141bd2f182f62411cad010f05bbf440 - effbb2746141bd2f182f62411cad010f05bbf440 + a7a6e948cf49d34a79b6164d46fee9c7ded0f368 + a7a6e948cf49d34a79b6164d46fee9c7ded0f368 + a7a6e948cf49d34a79b6164d46fee9c7ded0f368 + a7a6e948cf49d34a79b6164d46fee9c7ded0f368 - 4.5.0-preview1-25406-02 + 4.5.0-preview1-25407-02 2.1.0-preview1-25324-02 - 2.1.0-preview1-25405-02 + 2.1.0-preview1-25407-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25406-01 + 2.1.0-preview1-25407-01 1.4.1 - 4.5.0-preview1-25406-01 + 4.5.0-preview1-25407-01 From ae291f941971bddde06ede56e278b99906678240 Mon Sep 17 00:00:00 2001 From: chcosta Date: Wed, 7 Jun 2017 14:31:37 -0700 Subject: [PATCH 519/625] GenerateChecksums moved into BuildTools (#2648) --- publish/dir.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/publish/dir.targets b/publish/dir.targets index 7fd4cbfa..d076434a 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -1,7 +1,7 @@ - + From b1821f550e5228b937d637f77e9f0b9621ba94fe Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Wed, 7 Jun 2017 15:55:41 -0700 Subject: [PATCH 520/625] GetAzureBlobList task name changed to ListAzureBlobs --- publish/dir.targets | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/publish/dir.targets b/publish/dir.targets index d076434a..32ce60b3 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -94,12 +94,12 @@ - - + <_FoundBlobNames Include="%(_BlobNames.FileName)%(_BlobNames.Extension)" Condition="'%(_BlobNames.Extension)' == '.svg'" /> <_MissingBlobNames Include="@(PublishRid->'sharedfx_%(Identity)_$(ConfigurationGroup)_version_badge.svg')" From 570d696a57bfb045c0b5cb701a5409ab3016e947 Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Wed, 7 Jun 2017 22:31:50 -0700 Subject: [PATCH 521/625] Use MIT license on *NIX and MSFT License on Windows We can't use the MIT license for our Windows zip's or msi's because we include closed source stuff (windows api set shims, native diasymreader and the ucrt). However, on *nix, everything we redist is open source and licensed as MIT (or covered by the ThirdPartyNotices.txt file). --- resources/LICENSE-MIT.txt | 22 ++++ resources/{LICENSE.txt => LICENSE-MSFT.txt} | 0 src/pkg/packaging/LICENSE.txt | 64 ------------ src/pkg/packaging/dir.proj | 9 +- .../osx/hostfxr/resources/de.lproj/eula.rtf | 97 ------------------ .../osx/hostfxr/resources/en.lproj/eula.rtf | 97 ------------------ .../osx/hostfxr/resources/es.lproj/eula.rtf | 97 ------------------ .../osx/hostfxr/resources/fr.lproj/eula.rtf | 97 ------------------ .../osx/hostfxr/resources/it.lproj/eula.rtf | 97 ------------------ .../osx/hostfxr/resources/ja.lproj/eula.rtf | 97 ------------------ .../osx/hostfxr/resources/ko.lproj/eula.rtf | 97 ------------------ .../osx/hostfxr/resources/pl.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/pt-br.lproj/eula.rtf | 97 ------------------ .../osx/hostfxr/resources/ru.lproj/eula.rtf | 97 ------------------ .../osx/hostfxr/resources/tr.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/zh-hans.lproj/eula.rtf | 97 ------------------ .../hostfxr/resources/zh-hant.lproj/eula.rtf | 97 ------------------ src/pkg/packaging/osx/package.targets | 3 +- .../packaging/osx/resources/cs.lproj/eula.rtf | Bin 0 -> 1291 bytes .../packaging/osx/resources/de.lproj/eula.rtf | Bin 0 -> 1291 bytes .../packaging/osx/resources/en.lproj/eula.rtf | Bin 0 -> 1291 bytes .../packaging/osx/resources/es.lproj/eula.rtf | Bin 0 -> 1291 bytes .../packaging/osx/resources/fr.lproj/eula.rtf | Bin 0 -> 1291 bytes .../packaging/osx/resources/it.lproj/eula.rtf | Bin 0 -> 1291 bytes .../packaging/osx/resources/ja.lproj/eula.rtf | Bin 0 -> 1291 bytes .../packaging/osx/resources/ko.lproj/eula.rtf | Bin 0 -> 1291 bytes .../packaging/osx/resources/pl.lproj/eula.rtf | Bin 0 -> 1291 bytes .../osx/resources/pt-br.lproj/eula.rtf | Bin 0 -> 1291 bytes .../packaging/osx/resources/ru.lproj/eula.rtf | Bin 0 -> 1291 bytes .../packaging/osx/resources/tr.lproj/eula.rtf | Bin 0 -> 1291 bytes .../osx/resources/zh-hans.lproj/eula.rtf | Bin 0 -> 1291 bytes .../osx/resources/zh-hant.lproj/eula.rtf | Bin 0 -> 1291 bytes .../resources/en.lproj/eula.rtf | 97 ------------------ .../sharedhost/resources/cs.lproj/eula.rtf | 97 ------------------ .../sharedhost/resources/de.lproj/eula.rtf | 97 ------------------ .../sharedhost/resources/en.lproj/eula.rtf | 97 ------------------ .../sharedhost/resources/es.lproj/eula.rtf | 97 ------------------ .../sharedhost/resources/fr.lproj/eula.rtf | 97 ------------------ .../sharedhost/resources/it.lproj/eula.rtf | 97 ------------------ .../sharedhost/resources/ja.lproj/eula.rtf | 97 ------------------ .../sharedhost/resources/ko.lproj/eula.rtf | 97 ------------------ .../sharedhost/resources/pl.lproj/eula.rtf | 97 ------------------ .../sharedhost/resources/pt-br.lproj/eula.rtf | 97 ------------------ .../sharedhost/resources/ru.lproj/eula.rtf | 97 ------------------ .../sharedhost/resources/tr.lproj/eula.rtf | 97 ------------------ .../resources/zh-hans.lproj/eula.rtf | 97 ------------------ .../resources/zh-hant.lproj/eula.rtf | 97 ------------------ .../resources/cs.lproj => windows}/eula.rtf | 0 .../packaging/windows/host/generatemsi.ps1 | 2 +- .../packaging/windows/hostfxr/generatemsi.ps1 | 2 +- .../sharedframework/generatebundle.ps1 | 2 +- .../windows/sharedframework/generatemsi.ps1 | 2 +- 52 files changed, 35 insertions(+), 2787 deletions(-) create mode 100644 resources/LICENSE-MIT.txt rename resources/{LICENSE.txt => LICENSE-MSFT.txt} (100%) delete mode 100644 src/pkg/packaging/LICENSE.txt delete mode 100644 src/pkg/packaging/osx/hostfxr/resources/de.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/hostfxr/resources/en.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/hostfxr/resources/es.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/hostfxr/resources/fr.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/hostfxr/resources/it.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/hostfxr/resources/ja.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/hostfxr/resources/ko.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/hostfxr/resources/pl.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/hostfxr/resources/ru.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/hostfxr/resources/tr.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/cs.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/de.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/en.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/es.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/fr.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/it.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/ja.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/ko.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/pl.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/pt-br.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/ru.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/tr.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/zh-hans.lproj/eula.rtf create mode 100644 src/pkg/packaging/osx/resources/zh-hant.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedframework/resources/en.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/cs.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/de.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/en.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/es.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/fr.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/it.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/ja.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/ko.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/pl.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/ru.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/tr.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf delete mode 100644 src/pkg/packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf rename src/pkg/packaging/{osx/hostfxr/resources/cs.lproj => windows}/eula.rtf (100%) diff --git a/resources/LICENSE-MIT.txt b/resources/LICENSE-MIT.txt new file mode 100644 index 00000000..cd10d697 --- /dev/null +++ b/resources/LICENSE-MIT.txt @@ -0,0 +1,22 @@ +The MIT License (MIT) + +Copyright (c) 2015 .NET Foundation + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + diff --git a/resources/LICENSE.txt b/resources/LICENSE-MSFT.txt similarity index 100% rename from resources/LICENSE.txt rename to resources/LICENSE-MSFT.txt diff --git a/src/pkg/packaging/LICENSE.txt b/src/pkg/packaging/LICENSE.txt deleted file mode 100644 index 592b527d..00000000 --- a/src/pkg/packaging/LICENSE.txt +++ /dev/null @@ -1,64 +0,0 @@ -MICROSOFT SOFTWARE LICENSE TERMS -MICROSOFT .NET LIBRARY -These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft - * updates, - * supplements, - * Internet-based services, and - * support services -for this software, unless other terms accompany those items. If so, those terms apply. -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE. -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW. -1. INSTALLATION AND USE RIGHTS. - a. Installation and Use. You may install and use any number of copies of the software to design, develop and test your programs. - b. Third Party Programs. The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only. -2. DATA. The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services. You can learn more about data collection and use in the help documentation and the privacy statement at http://go.microsoft.com/fwlink/?LinkId=528096.Your use of the software operates as your consent to these practices. -3. ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS. - a. DISTRIBUTABLE CODE. The software is comprised of Distributable Code. Distributable Code is code that you are permitted to distribute in programs you develop if you comply with the terms below. - i. Right to Use and Distribute. - * You may copy and distribute the object code form of the software. - * Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs. - ii. Distribution Requirements. For any Distributable Code you distribute, you must - * add significant primary functionality to it in your programs; - * require distributors and external end users to agree to terms that protect it at least as much as this agreement; - * display your valid copyright notice on your programs; and - * indemnify, defend, and hold harmless Microsoft from any claims, including attorneys fees, related to the distribution or use of your programs. - iii. Distribution Restrictions. You may not - * alter any copyright, trademark or patent notice in the Distributable Code; - * use Microsofts trademarks in your programs names or in a way that suggests your programs come from or are endorsed by Microsoft; - * include Distributable Code in malicious, deceptive or unlawful programs; or - * modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that - * the code be disclosed or distributed in source code form; or - * others have the right to modify it. -4. SCOPE OF LICENSE. The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not - * work around any technical limitations in the software; - * reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation; - * publish the software for others to copy; - * rent, lease or lend the software; - * transfer the software or this agreement to any third party; or - * use the software for commercial software hosting services. -5. BACKUP COPY. You may make one backup copy of the software. You may use it only to reinstall the software. -6. DOCUMENTATION. Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes. -7. EXPORT RESTRICTIONS. The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see www.microsoft.com/exporting. -8. SUPPORT SERVICES. Because this software is as is, we may not provide support services for it. -9. ENTIRE AGREEMENT. This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services. -10. APPLICABLE LAW. - a. United States. If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort. - b. Outside the United States. If you acquired the software in any other country, the laws of that country apply. -11. LEGAL EFFECT. This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so. -12. DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED AS-IS. YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. -FOR AUSTRALIA YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS. -13. LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES. -This limitation applies to - * anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and - * claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law. -It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages. -Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French. -Remarque : Ce logiciel tant distribu au Qubec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en franais. -EXONRATION DE GARANTIE. Le logiciel vis par une licence est offert tel quel . Toute utilisation de ce logiciel est votre seule risque et pril. Microsoft naccorde aucune autre garantie expresse. Vous pouvez bnficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit marchande, dadquation un usage particulier et dabsence de contrefaon sont exclues. -LIMITATION DES DOMMAGES-INTRTS ET EXCLUSION DE RESPONSABILIT POUR LES DOMMAGES. Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement hauteur de 5,00 $ US. Vous ne pouvez prtendre aucune indemnisation pour les autres dommages, y compris les dommages spciaux, indirects ou accessoires et pertes de bnfices. -Cette limitation concerne : - * tout ce qui est reli au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et - * les rclamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit stricte, de ngligence ou dune autre faute dans la limite autorise par la loi en vigueur. -Elle sapplique galement, mme si Microsoft connaissait ou devrait connatre lventualit dun tel dommage. Si votre pays nautorise pas lexclusion ou la limitation de responsabilit pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou lexclusion ci-dessus ne sappliquera pas votre gard. -EFFET JURIDIQUE. Le prsent contrat dcrit certains droits juridiques. Vous pourriez avoir dautres droits prvus par les lois de votre pays. Le prsent contrat ne modifie pas les droits que vous confrent les lois de votre pays si celles-ci ne le permettent pas. - diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 45ac56ff..bb3ff66b 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -32,8 +32,13 @@ - + + + diff --git a/src/pkg/packaging/osx/hostfxr/resources/de.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/de.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/hostfxr/resources/de.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/en.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/en.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/hostfxr/resources/en.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/es.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/es.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/hostfxr/resources/es.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/it.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/it.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/hostfxr/resources/it.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf b/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/package.targets b/src/pkg/packaging/osx/package.targets index 4894f46f..ece2ced3 100644 --- a/src/pkg/packaging/osx/package.targets +++ b/src/pkg/packaging/osx/package.targets @@ -60,6 +60,7 @@ Directories="$(ResourcePath)" /> + - \ No newline at end of file + diff --git a/src/pkg/packaging/osx/resources/cs.lproj/eula.rtf b/src/pkg/packaging/osx/resources/cs.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/resources/de.lproj/eula.rtf b/src/pkg/packaging/osx/resources/de.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/resources/en.lproj/eula.rtf b/src/pkg/packaging/osx/resources/en.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/resources/es.lproj/eula.rtf b/src/pkg/packaging/osx/resources/es.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/resources/fr.lproj/eula.rtf b/src/pkg/packaging/osx/resources/fr.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/resources/it.lproj/eula.rtf b/src/pkg/packaging/osx/resources/it.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/resources/ja.lproj/eula.rtf b/src/pkg/packaging/osx/resources/ja.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/resources/ko.lproj/eula.rtf b/src/pkg/packaging/osx/resources/ko.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/resources/pl.lproj/eula.rtf b/src/pkg/packaging/osx/resources/pl.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/resources/pt-br.lproj/eula.rtf b/src/pkg/packaging/osx/resources/pt-br.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/resources/ru.lproj/eula.rtf b/src/pkg/packaging/osx/resources/ru.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/resources/tr.lproj/eula.rtf b/src/pkg/packaging/osx/resources/tr.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/resources/zh-hans.lproj/eula.rtf b/src/pkg/packaging/osx/resources/zh-hans.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/resources/zh-hant.lproj/eula.rtf b/src/pkg/packaging/osx/resources/zh-hant.lproj/eula.rtf new file mode 100644 index 0000000000000000000000000000000000000000..47d886627aea432bf12ee1f8ea70dd82253ab788 GIT binary patch literal 1291 zcmZ8h&2Hm15bilZ-eHhaQV6c>G+VSiDK;GwD@z7NZyG=sN}?>bGHHm^8bOeE?~qnf zYym?yhcn;b2!1OE*Un3!tqPC&beJz57G)#bHZHXpRc($Z;e4SN`Y@00@88PSXy>XP zf5c_0RbRGsCk88B3`^0gYEXZ^zh7Uyl|PpUspTM?8Gxy}lg%QAc|40}^N0A${d@Uc z$@4!-H@}u+J%{V7@+5|)v|$MmVg^s2kyw(U-oR9FEFbJcF{($w5}Ha2SMkvWcJ_ zqy*D~H+GN_I0Hhz!buJm2TbLJ(n=pdK#hF9({%`AP3z8Lkl5USu-4Q{ARaWP9*ErYGoSoO+w5j4s}SEIvD>x&`R$ou#OmuF?)djy5LgV+Dm zg&xm>*&zQEQQ$py=J=x%jHn$4jg%M)&NK!i3ygou+WCrC-kQEQXK$@Gx>4S*{o}GV zj@P0x-(~P~*|Rnd<%Y<^5`vJ+W~VFL3DjT7DKzB9h<)k95;`0!>u~uB^FNs(aQ@%w zY|^kHP~>a=oG=2kfE~-f(G^+2O;X_bCW2?mH~F3ecCaMlFOaVx$zI?q%~lbRzjlli z1>_9qc9&9uHJUBc{fcH!@Q8C+j;}VwcN#%?4jc(5C`xc{4O_yN8$?bXX-fG^1Z&DO zkGV$B1a=AIbh%Fx2D?4mC3{rQg1%+G zdtvlx!(o%BD}u#Gg36M|lw7FL)G|%zHiA{MO`g0u20035p>0z4ydj~4d#y>}&X+a`L7%hAtYnCItj}s?+W|^PM$OXkm9aMjA1Y3Mydo=y2Wkr${ Rv2Z=v56#m?@z3g~e*xH;p{xJ^ literal 0 HcmV?d00001 diff --git a/src/pkg/packaging/osx/sharedframework/resources/en.lproj/eula.rtf b/src/pkg/packaging/osx/sharedframework/resources/en.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedframework/resources/en.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/cs.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/cs.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/cs.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/de.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/de.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/de.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/en.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/en.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/en.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/es.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/es.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/es.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/fr.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/fr.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/fr.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/it.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/it.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/it.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/ja.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/ja.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/ja.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/ko.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/ko.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/ko.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/pl.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/pl.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/pl.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/pt-br.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/ru.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/ru.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/ru.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/tr.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/tr.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/tr.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/zh-hans.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf b/src/pkg/packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf deleted file mode 100644 index 7f40e11a..00000000 --- a/src/pkg/packaging/osx/sharedhost/resources/zh-hant.lproj/eula.rtf +++ /dev/null @@ -1,97 +0,0 @@ -{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}{\f3\fswiss\fprq2\fcharset0 Calibri;}} -{\colortbl ;\red0\green0\blue0;\red0\green0\blue255;} -{\*\generator Riched20 10.0.10586}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1 -\pard\widctlpar\sb120\sa120\cf1\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\fs28\par -\fs24 MICROSOFT .NET LIBRARY\fs28\par -\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 updates,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 supplements,\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 Internet-based services, and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 support services\par - -\pard\widctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par -BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par -IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 1.\b0\f2\fs14\~\~\~\~\b\f0\fs19 INSTALLATION AND USE RIGHTS.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Installation and Use.\b0\fs20\~You may install and use any number of copies of the software to design, develop and test your programs.\b\fs19\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Third Party Programs.\b0\fs20\~The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 2.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DATA.\~\kerning0\b0\fs20 The software may collect information about you and your use of the software, and send that to Microsoft. Microsoft may use this information to improve our products and services.\~You can learn more about data collection and use in the help documentation and the privacy statement at\~{\cf0\f3\fs24{\field{\*\fldinst{HYPERLINK "http://go.microsoft.com/fwlink/?LinkId=528096&clcid=0x409"}}{\fldrslt{\ul\cf2\cf2\ul\f0\fs20 http://go.microsoft.com/fwlink/?LinkId=528096}}}}\f0\fs20 . Your use of the software operates as your consent to these practices.\kerning36\b\fs19\par -\fs20 3.\b0\f2\fs14\~\~\~\~\b\f0\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\fs19\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs20 DISTRIBUTABLE CODE.\~\~\b0 The software is comprised of Distributable Code. \ldblquote Distributable Code\rdblquote is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\fs20 i.\b0\f2\fs14\~\~\~\~\~\~\b\f0\fs20 Right to Use and Distribute.\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 You may copy and distribute the object code form of the software.\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 ii.\b0\f2\fs14\~\~\~\~\b\f0\fs20 Distribution Requirements.\b0\~\b For any Distributable Code you distribute, you must\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 add significant primary functionality to it in your programs;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 require distributors and external end users to agree to terms that protect it at least as much as this agreement;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 display your valid copyright notice on your programs; and\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\fs19\par - -\pard\widctlpar\fi-357\li1077\sb120\sa120\b\fs20 iii.\b0\f2\fs14\~\~\~\b\f0\fs20 Distribution Restrictions.\b0\~\b You may not\b0\fs19\par - -\pard\widctlpar\fi-357\li1434\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 alter any copyright, trademark or patent notice in the Distributable Code;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 include Distributable Code in malicious, deceptive or unlawful programs; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\fs19\par - -\pard\widctlpar\fi-358\li1792\sb120\sa120\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 the code be disclosed or distributed in source code form; or\fs19\par -\f1\fs20\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs20 others have the right to modify it.\fs19\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 4.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SCOPE OF LICENSE.\~\b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\b\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\b0\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 work around any technical limitations in the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 publish the software for others to copy;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 rent, lease or lend the software;\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 transfer the software or this agreement to any third party; or\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 use the software for commercial software hosting services.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 5.\b0\f2\fs14\~\~\~\~\b\f0\fs19 BACKUP COPY.\~\b0 You may make one backup copy of the software. You may use it only to reinstall the software.\b\par -\fs20 6.\b0\f2\fs14\~\~\~\~\b\f0\fs19 DOCUMENTATION.\~\b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\b\par -\fs20 7.\b0\f2\fs14\~\~\~\~\b\f0\fs19 EXPORT RESTRICTIONS.\~\b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see\~{\cf0\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting\ul0\cf0}}}}\f0\fs19 .\b\par -\fs20 8.\b0\f2\fs14\~\~\~\~\b\f0\fs19 SUPPORT SERVICES.\~\b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\b\par -\fs20 9.\b0\f2\fs14\~\~\~\~\b\f0\fs19 ENTIRE AGREEMENT.\~\b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\b\par -\fs20 10.\b0\f2\fs14\~\~\~\b\f0\fs19 APPLICABLE LAW.\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\kerning0\fs20 a.\b0\f2\fs14\~\~\~\~\b\f0\fs19 United States.\~\b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\b\par -\fs20 b.\b0\f2\fs14\~\~\~\~\b\f0\fs19 Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\fs20 11.\b0\f2\fs14\~\~\b\f0\fs19 LEGAL EFFECT.\~\b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\b\par -\fs20 12.\b0\f2\fs14\~\~\b\f0\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\b0\par - -\pard\widctlpar\fi-357\li357\sb120\sa120\kerning36\b\fs20 13.\b0\f2\fs14\~\~\b\f0\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par - -\pard\widctlpar\li357\sb120\sa120\kerning0\b0 This limitation applies to\par - -\pard\widctlpar\fi-363\li720\sb120\sa120\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par -\f1\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par - -\pard\widctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par -\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\lang1033\par -\lang9 Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\lang1033\par -\kerning36\b EXON\'c9RATION DE GARANTIE.\~\b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\b\par -LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES.\~\b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\b\par -\kerning0\b0\lang9 Cette limitation concerne :\lang1033\par - -\pard\widctlpar\li720\sb120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\lang1033\par - -\pard\widctlpar\li720\sa120\f1\lang9\'b7\f2\fs14\~\~\~\~\~\~\~\~\~\f0\fs19 les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\lang1033\par - -\pard\widctlpar\sb120\sa120\lang9 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\lang1033\par -\kerning36\b EFFET JURIDIQUE.\~\b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\b\par -\kerning0\fs20\lang1036\~\fs19\lang1033\par - -\pard\widctlpar\cf0\b0\f3\fs24\par -} - \ No newline at end of file diff --git a/src/pkg/packaging/osx/hostfxr/resources/cs.lproj/eula.rtf b/src/pkg/packaging/windows/eula.rtf similarity index 100% rename from src/pkg/packaging/osx/hostfxr/resources/cs.lproj/eula.rtf rename to src/pkg/packaging/windows/eula.rtf diff --git a/src/pkg/packaging/windows/host/generatemsi.ps1 b/src/pkg/packaging/windows/host/generatemsi.ps1 index 29287318..12166428 100644 --- a/src/pkg/packaging/windows/host/generatemsi.ps1 +++ b/src/pkg/packaging/windows/host/generatemsi.ps1 @@ -35,7 +35,7 @@ function RunCandle -out "$WixObjRoot\" ` -ext WixDependencyExtension.dll ` -dHostSrc="$SharedHostPublishRoot" ` - -dMicrosoftEula="$PackagingRoot\osx\sharedhost\resources\en.lproj\eula.rtf" ` + -dMicrosoftEula="$PackagingRoot\windows\eula.rtf" ` -dProductMoniker="$ProductMoniker" ` -dBuildVersion="$SharedHostMSIVersion" ` -dNugetVersion="$SharedHostNugetVersion" ` diff --git a/src/pkg/packaging/windows/hostfxr/generatemsi.ps1 b/src/pkg/packaging/windows/hostfxr/generatemsi.ps1 index ea16b968..3e67c72e 100644 --- a/src/pkg/packaging/windows/hostfxr/generatemsi.ps1 +++ b/src/pkg/packaging/windows/hostfxr/generatemsi.ps1 @@ -68,7 +68,7 @@ function RunCandle .\candle.exe -nologo ` -out "$WixObjRoot\" ` -dHostFxrSrc="$HostFxrPublishRoot" ` - -dMicrosoftEula="$PackagingRoot\osx\hostfxr\resources\en.lproj\eula.rtf" ` + -dMicrosoftEula="$PackagingRoot\windows\eula.rtf" ` -dProductMoniker="$ProductMoniker" ` -dBuildVersion="$HostFxrMSIVersion" ` -dNugetVersion="$HostFxrNugetVersion" ` diff --git a/src/pkg/packaging/windows/sharedframework/generatebundle.ps1 b/src/pkg/packaging/windows/sharedframework/generatebundle.ps1 index 58971380..5172d084 100644 --- a/src/pkg/packaging/windows/sharedframework/generatebundle.ps1 +++ b/src/pkg/packaging/windows/sharedframework/generatebundle.ps1 @@ -37,7 +37,7 @@ function RunCandleForBundle $SharedFrameworkComponentVersion = $SharedFrameworkNugetVersion.Replace('-', '_'); .\candle.exe -nologo ` - -dMicrosoftEula="$PackagingRoot\osx\sharedframework\resources\en.lproj\eula.rtf" ` + -dMicrosoftEula="$PackagingRoot\windows\eula.rtf" ` -dProductMoniker="$ProductMoniker" ` -dBuildVersion="$DotnetMSIVersion" ` -dDisplayVersion="$DotnetCLIVersion" ` diff --git a/src/pkg/packaging/windows/sharedframework/generatemsi.ps1 b/src/pkg/packaging/windows/sharedframework/generatemsi.ps1 index a958343f..e4cd3855 100644 --- a/src/pkg/packaging/windows/sharedframework/generatemsi.ps1 +++ b/src/pkg/packaging/windows/sharedframework/generatemsi.ps1 @@ -68,7 +68,7 @@ function RunCandle .\candle.exe -nologo ` -out "$WixObjRoot\" ` -dSharedFrameworkSource="$SharedFrameworkPublishRoot" ` - -dMicrosoftEula="$PackagingRoot\osx\sharedframework\resources\en.lproj\eula.rtf" ` + -dMicrosoftEula="$PackagingRoot\windows\eula.rtf" ` -dProductMoniker="$ProductMoniker" ` -dFrameworkName="$SharedFrameworkNugetName" ` -dFrameworkDisplayVersion="$SharedFrameworkNugetVersion" ` From d709367a1cfe4508d0be9ece63de1774bc82b369 Mon Sep 17 00:00:00 2001 From: Jan Vorlicek Date: Thu, 8 Jun 2017 21:45:24 +0200 Subject: [PATCH 522/625] Workaround for recent CMake bug w.r.t. CF guard Recent versions of CMake generates the node under the node when it finds /guard:cf linker option in the linker options. But that is not correct. It should generate it under the node so that the Microsoft.CppCommon.targets would then generate node under the . To workaround the problem, change the casing of /guard:cf to uppercase. CMake then doesn't detect the option as something known to it and passes the option to the linker as additional option, which fixes the problem. --- src/settings.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/settings.cmake b/src/settings.cmake index eda236b4..50c52fdd 100644 --- a/src/settings.cmake +++ b/src/settings.cmake @@ -155,8 +155,8 @@ if(WIN32) set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /DEBUG /PDBCOMPRESS") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /STACK:1572864") - set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /guard:cf") - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /guard:cf") + set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /GUARD:CF") + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /GUARD:CF") # Debug build specific flags set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "/NOVCFEATURE") From c2f0fa2f84156cb6f782ba681f803ee384352814 Mon Sep 17 00:00:00 2001 From: Karthik Rajasekaran Date: Thu, 8 Jun 2017 17:07:36 -0700 Subject: [PATCH 523/625] Update buildtools to 1708-03 (#2659) --- BuildToolsVersion.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/BuildToolsVersion.txt b/BuildToolsVersion.txt index bf13ce4d..399aa788 100644 --- a/BuildToolsVersion.txt +++ b/BuildToolsVersion.txt @@ -1 +1 @@ -2.0.0-prerelease-01705-02 +2.0.0-prerelease-01708-03 From b384149f4d02a7779171ab605158bbba8ec1f222 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Fri, 9 Jun 2017 03:44:40 -0700 Subject: [PATCH 524/625] Update CoreClr, CoreFx, Standard, WCF to preview1-25408-04, preview1-25409-02, preview1-25408-01, preview1-25408-01, respectively (#2651) --- dependencies.props | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dependencies.props b/dependencies.props index 2990140b..4abfb680 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - a7a6e948cf49d34a79b6164d46fee9c7ded0f368 - a7a6e948cf49d34a79b6164d46fee9c7ded0f368 - a7a6e948cf49d34a79b6164d46fee9c7ded0f368 - a7a6e948cf49d34a79b6164d46fee9c7ded0f368 + 9c3a0ad11fe77c9e087104a5808bf7b636e67db4 + 9c3a0ad11fe77c9e087104a5808bf7b636e67db4 + 9c3a0ad11fe77c9e087104a5808bf7b636e67db4 + 9c3a0ad11fe77c9e087104a5808bf7b636e67db4 - 4.5.0-preview1-25407-02 + 4.5.0-preview1-25409-02 2.1.0-preview1-25324-02 - 2.1.0-preview1-25407-02 + 2.1.0-preview1-25408-04 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25407-01 + 2.1.0-preview1-25408-01 1.4.1 - 4.5.0-preview1-25407-01 + 4.5.0-preview1-25408-01 From 881591d9df80e6964ce09417500ca66e9e0f056b Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Fri, 9 Jun 2017 08:09:16 -0700 Subject: [PATCH 525/625] Update CoreClr, CoreFx, Standard, WCF to preview1-25409-01, preview1-25409-03, preview1-25409-01, preview1-25409-01, respectively (#2662) --- dependencies.props | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dependencies.props b/dependencies.props index 4abfb680..b0765033 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 9c3a0ad11fe77c9e087104a5808bf7b636e67db4 - 9c3a0ad11fe77c9e087104a5808bf7b636e67db4 - 9c3a0ad11fe77c9e087104a5808bf7b636e67db4 - 9c3a0ad11fe77c9e087104a5808bf7b636e67db4 + f5fb8b6cb0eba67faffd6282297d8c5bf915eece + f5fb8b6cb0eba67faffd6282297d8c5bf915eece + f5fb8b6cb0eba67faffd6282297d8c5bf915eece + f5fb8b6cb0eba67faffd6282297d8c5bf915eece - 4.5.0-preview1-25409-02 + 4.5.0-preview1-25409-03 2.1.0-preview1-25324-02 - 2.1.0-preview1-25408-04 + 2.1.0-preview1-25409-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25408-01 + 2.1.0-preview1-25409-01 1.4.1 - 4.5.0-preview1-25408-01 + 4.5.0-preview1-25409-01 From 45a63e629d1ef08b94bd9a74bb06f47befbbe8cc Mon Sep 17 00:00:00 2001 From: chcosta Date: Fri, 9 Jun 2017 10:46:17 -0700 Subject: [PATCH 526/625] Sign PlatformAbstractions and DependencyModel binaries (#2652) (#2656) * Sign PlatformAbstractions and DependencyModel * Use pre-existing property * minor fix, end property value with a slash --- src/dir.props | 2 +- src/managed/dir.proj | 1 + src/pkg/packaging/dir.proj | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/dir.props b/src/dir.props index 39af4dea..cd3eb817 100644 --- a/src/dir.props +++ b/src/dir.props @@ -4,7 +4,7 @@ $(CoreHostOutputDir)locked\ - $(IntermediateOutputRootPath)forPackaging + $(IntermediateOutputRootPath)sign/forPackaging/ diff --git a/src/managed/dir.proj b/src/managed/dir.proj index 69ec1759..c3804a56 100644 --- a/src/managed/dir.proj +++ b/src/managed/dir.proj @@ -16,6 +16,7 @@ /p:Configuration=$(ConfigurationGroup) $(BuildArgs) /p:LatestCommit=$(LatestCommit) $(BuildArgs) /p:BuiltByString="$(BuiltByString)" + $(BuildArgs) /p:BaseOutputPath=$(IntermediateOutputForPackaging) diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index bb3ff66b..534e9502 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -176,7 +176,7 @@ --version-suffix $(VersionSuffix) -
From 02f5aba409781c798b5e091060a22e76a3ab8bbb Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Sun, 11 Jun 2017 19:07:26 -0700 Subject: [PATCH 527/625] Update CoreClr, CoreFx, WCF to preview1-25412-01, preview1-25412-01, preview1-25411-01, respectively (#2664) --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index b0765033..7bc1808a 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - f5fb8b6cb0eba67faffd6282297d8c5bf915eece - f5fb8b6cb0eba67faffd6282297d8c5bf915eece + e4f73746ac0907800ed06dca8762e293e760d8dc + e4f73746ac0907800ed06dca8762e293e760d8dc f5fb8b6cb0eba67faffd6282297d8c5bf915eece - f5fb8b6cb0eba67faffd6282297d8c5bf915eece + e4f73746ac0907800ed06dca8762e293e760d8dc - 4.5.0-preview1-25409-03 + 4.5.0-preview1-25412-01 2.1.0-preview1-25324-02 - 2.1.0-preview1-25409-01 + 2.1.0-preview1-25412-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.1.0-preview1-25409-01 1.4.1 - 4.5.0-preview1-25409-01 + 4.5.0-preview1-25411-01 From 168352d2740e0f77e360072fe9ea2b70748aacf5 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Mon, 12 Jun 2017 08:09:27 -0700 Subject: [PATCH 528/625] Update CoreFx, Standard, WCF to preview1-25412-02, preview1-25412-01, preview1-25412-01, respectively (#2672) --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index 7bc1808a..4087ac76 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - e4f73746ac0907800ed06dca8762e293e760d8dc + 8af1ae0b56ef0552c57bbcdcb8eadd6faa4222d7 e4f73746ac0907800ed06dca8762e293e760d8dc - f5fb8b6cb0eba67faffd6282297d8c5bf915eece - e4f73746ac0907800ed06dca8762e293e760d8dc + 8af1ae0b56ef0552c57bbcdcb8eadd6faa4222d7 + 8af1ae0b56ef0552c57bbcdcb8eadd6faa4222d7 - 4.5.0-preview1-25412-01 + 4.5.0-preview1-25412-02 2.1.0-preview1-25324-02 2.1.0-preview1-25412-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25409-01 + 2.1.0-preview1-25412-01 1.4.1 - 4.5.0-preview1-25411-01 + 4.5.0-preview1-25412-01 From 7d1d685c6ce7f0b7222a784b76d789a6e63ddde8 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Mon, 12 Jun 2017 15:57:07 -0700 Subject: [PATCH 529/625] Update CoreFx to preview1-25412-03 (#2675) --- dependencies.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.props b/dependencies.props index 4087ac76..a7988a2b 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,14 +9,14 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 8af1ae0b56ef0552c57bbcdcb8eadd6faa4222d7 + 2df96e614362845cf08d29b99886c381023133a2 e4f73746ac0907800ed06dca8762e293e760d8dc 8af1ae0b56ef0552c57bbcdcb8eadd6faa4222d7 8af1ae0b56ef0552c57bbcdcb8eadd6faa4222d7 - 4.5.0-preview1-25412-02 + 4.5.0-preview1-25412-03 2.1.0-preview1-25324-02 2.1.0-preview1-25412-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) From 84dc19f12c2dcc9fb3bc185849d717f48c42abc3 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Mon, 12 Jun 2017 20:49:52 -0700 Subject: [PATCH 530/625] Update CoreClr, CoreFx to preview1-25412-03, preview1-25413-01, respectively (#2676) --- dependencies.props | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dependencies.props b/dependencies.props index a7988a2b..af2099bb 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,16 +9,16 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 2df96e614362845cf08d29b99886c381023133a2 - e4f73746ac0907800ed06dca8762e293e760d8dc + 156d7c16cff74e50054ed195286aa53b887501e2 + 156d7c16cff74e50054ed195286aa53b887501e2 8af1ae0b56ef0552c57bbcdcb8eadd6faa4222d7 8af1ae0b56ef0552c57bbcdcb8eadd6faa4222d7 - 4.5.0-preview1-25412-03 + 4.5.0-preview1-25413-01 2.1.0-preview1-25324-02 - 2.1.0-preview1-25412-01 + 2.1.0-preview1-25412-03 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.1.0-preview1-25412-01 1.4.1 From c4e987dc39d103ec72be180b74468ffab3ea9191 Mon Sep 17 00:00:00 2001 From: dotnet bot Date: Tue, 13 Jun 2017 08:29:04 -0700 Subject: [PATCH 531/625] Update CoreClr, CoreFx, Standard, WCF to preview1-25413-01, preview1-25413-02, preview1-25413-01, preview1-25413-01, respectively (#2679) --- dependencies.props | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dependencies.props b/dependencies.props index af2099bb..1477a23f 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 156d7c16cff74e50054ed195286aa53b887501e2 - 156d7c16cff74e50054ed195286aa53b887501e2 - 8af1ae0b56ef0552c57bbcdcb8eadd6faa4222d7 - 8af1ae0b56ef0552c57bbcdcb8eadd6faa4222d7 + a96e149ce150f6a15546032ca3966bf238c373fb + a96e149ce150f6a15546032ca3966bf238c373fb + a96e149ce150f6a15546032ca3966bf238c373fb + a96e149ce150f6a15546032ca3966bf238c373fb - 4.5.0-preview1-25413-01 + 4.5.0-preview1-25413-02 2.1.0-preview1-25324-02 - 2.1.0-preview1-25412-03 + 2.1.0-preview1-25413-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25412-01 + 2.1.0-preview1-25413-01 1.4.1 - 4.5.0-preview1-25412-01 + 4.5.0-preview1-25413-01 From 5fc66872ca226a4e7aad5e4ecaf2ec46c80cd54a Mon Sep 17 00:00:00 2001 From: chcosta Date: Tue, 13 Jun 2017 10:46:51 -0700 Subject: [PATCH 532/625] Automated signing validation infrastructure (#2561) * Signing validation infrastructure * Signing validation * PR feedback * Remove debugger attach * Add extension to filename * Fix message * Remove old directory if present (don't re-validate) * Remove extra file * Update latest vsts signing definition --- build.proj | 19 -- .../Core-Setup-Signing-Validation.json | 303 ++++++++++++++++++ buildpipeline/Core-Setup-Windows-Arm-BT.json | 2 +- buildpipeline/Core-Setup-Windows-BT.json | 8 +- buildpipeline/pipeline.json | 28 +- config.json | 6 + dir.props | 5 + dir.targets | 19 ++ publish/dir.props | 5 +- signing/baseline.props | 9 + signing/dir.props | 16 + sign.proj => signing/sign.proj | 6 +- signing/signingvalidation.proj | 18 ++ signing/validation.targets | 97 ++++++ tools-local/signingvalidation/baseline.props | 9 + tools-local/signingvalidation/dir.proj | 115 +++++++ tools-local/signingvalidation/dir.props | 18 ++ .../tasks/ValidateBinInspectResults.cs | 81 +++++ tools-local/tasks/core-setup.tasks.csproj | 2 + tools-local/tasks/core-setup.tasks.sln | 2 - 20 files changed, 734 insertions(+), 34 deletions(-) create mode 100644 buildpipeline/Core-Setup-Signing-Validation.json create mode 100644 signing/baseline.props create mode 100644 signing/dir.props rename sign.proj => signing/sign.proj (95%) create mode 100644 signing/signingvalidation.proj create mode 100644 signing/validation.targets create mode 100644 tools-local/signingvalidation/baseline.props create mode 100644 tools-local/signingvalidation/dir.proj create mode 100644 tools-local/signingvalidation/dir.props create mode 100644 tools-local/tasks/ValidateBinInspectResults.cs diff --git a/build.proj b/build.proj index 93e19258..1990d93d 100644 --- a/build.proj +++ b/build.proj @@ -35,25 +35,6 @@ - - - - - netstandard1.3 - net451 - - - - - - - - - - diff --git a/dir.targets b/dir.targets index a59808a0..8f1afd55 100644 --- a/dir.targets +++ b/dir.targets @@ -13,6 +13,25 @@ + + + + + netstandard1.3 + net451 + + + + + + + + + + diff --git a/publish/dir.props b/publish/dir.props index 4f25f9de..592035d5 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -3,12 +3,9 @@ - dotnet - dotnet https://dotnetcli.blob.core.windows.net/ 3600 - Runtime/$(SharedFrameworkNugetVersion) - Runtime/$(SharedFrameworkNugetVersion) + Runtime/$(ProductVersion) .sha512 diff --git a/signing/baseline.props b/signing/baseline.props new file mode 100644 index 00000000..a415cead --- /dev/null +++ b/signing/baseline.props @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/signing/dir.props b/signing/dir.props new file mode 100644 index 00000000..4db7bddd --- /dev/null +++ b/signing/dir.props @@ -0,0 +1,16 @@ + + + + + + + $(BinDir)SigningValidation\ + $(SigningValidationRoot)artifacts + $(SigningValidationRoot)logs\ + + $(PackagesDir)microsoft.dotnet.bininspector\1.0.0-alpha-00001\lib\BinInspect.exe + $(LogDirectory)SignResults.xml + + $(BinariesRelativePath) + + \ No newline at end of file diff --git a/sign.proj b/signing/sign.proj similarity index 95% rename from sign.proj rename to signing/sign.proj index 0d481f44..34652324 100644 --- a/sign.proj +++ b/signing/sign.proj @@ -1,14 +1,14 @@ - + - - + + diff --git a/signing/signingvalidation.proj b/signing/signingvalidation.proj new file mode 100644 index 00000000..51b22b91 --- /dev/null +++ b/signing/signingvalidation.proj @@ -0,0 +1,18 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/signing/validation.targets b/signing/validation.targets new file mode 100644 index 00000000..92d1fcb4 --- /dev/null +++ b/signing/validation.targets @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + %(_BlobList.Identity) + %(_BlobList.Extension) + %(_BlobList.Filename)%(_BlobList.Extension) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(BinInspectCommand) /c /o $(LogDirectory) /msu /a /v /x $(DownloadDirectory) + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/tools-local/signingvalidation/baseline.props b/tools-local/signingvalidation/baseline.props new file mode 100644 index 00000000..a415cead --- /dev/null +++ b/tools-local/signingvalidation/baseline.props @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/tools-local/signingvalidation/dir.proj b/tools-local/signingvalidation/dir.proj new file mode 100644 index 00000000..22980804 --- /dev/null +++ b/tools-local/signingvalidation/dir.proj @@ -0,0 +1,115 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + %(_BlobList.Identity) + %(_BlobList.Extension) + %(_BlobList.Filename) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(BinInspectCommand) /c /o $(LogDirectory) /msu /a /v /x $(DownloadDirectory) + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/tools-local/signingvalidation/dir.props b/tools-local/signingvalidation/dir.props new file mode 100644 index 00000000..84d9ffbe --- /dev/null +++ b/tools-local/signingvalidation/dir.props @@ -0,0 +1,18 @@ + + + + + + + $(BinDir)SigningValidation\ + $(SigningValidationRoot)artifacts + $(SigningValidationRoot)tool\ + $(SigningValidationRoot)logs\ + + $(ToolDirectory)BinInspect.exe + $(LogDirectory)SignResults.xml + bininspector + + $(BinariesRelativePath) + + \ No newline at end of file diff --git a/tools-local/tasks/ValidateBinInspectResults.cs b/tools-local/tasks/ValidateBinInspectResults.cs new file mode 100644 index 00000000..4303fd72 --- /dev/null +++ b/tools-local/tasks/ValidateBinInspectResults.cs @@ -0,0 +1,81 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using Microsoft.Build.Construction; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text.RegularExpressions; +using System.Xml.Linq; + +namespace Microsoft.DotNet.Build.Tasks +{ + // The BinInspect tool we use for signing validation does not support + // baselining, this task is used to inspect the results and determine + // if there is an actual failure we care about. + public class ValidateBinInspectResults : BuildTask + { + private static readonly string s_RootElement = "DATA"; + private static readonly string s_RowElement = "ROW"; + private static readonly string s_ErrorElement = "Err"; + private static readonly string s_NameElement = "Full"; + private static readonly string s_ResultElement = "Pass"; + + [Required] + public string ResultsXml { get; set; } + + // list of Regex's to ignore + public ITaskItem [] BaselineFiles { get; set; } + + [Output] + public ITaskItem[] ErrorResults { get; set; } + + public override bool Execute() + { + XDocument xdoc = XDocument.Load(ResultsXml); + + var rows = xdoc.Descendants(s_RootElement).Descendants(s_RowElement); + + List reportedFailures = new List(); + + // Gather all of the rows with error results + IEnumerable errorRows = from descendant in rows + where descendant.Descendants().FirstOrDefault(f => f.Name == s_ResultElement).Value == "False" + select descendant; + + // Filter out baselined files which are stored as regex patterns + HashSet baselineExcludeElements = new HashSet(); + if(BaselineFiles != null) + { + foreach(var baselineFile in BaselineFiles) + { + Regex ignoreRegEx = new Regex(baselineFile.ItemSpec); + IEnumerable baselineExcluded = errorRows.Where(f => ignoreRegEx.IsMatch(f.Descendants(s_NameElement).First().Value)); + foreach(var baselineExclude in baselineExcluded) + { + baselineExcludeElements.Add(baselineExclude); + } + } + } + // Gather the results with baselined files filtered out + IEnumerable baselinedRows = errorRows.Except(baselineExcludeElements); + + foreach (var filteredRow in baselinedRows) + { + ITaskItem item = new TaskItem(filteredRow.Descendants(s_NameElement).First().Value); + item.SetMetadata("Error", filteredRow.Descendants(s_ErrorElement).First().Value); + reportedFailures.Add(item); + } + + ErrorResults = reportedFailures.ToArray(); + foreach(var result in ErrorResults) + { + Log.LogError($"{result.ItemSpec} failed with error {result.GetMetadata("Error")}"); + } + return !Log.HasLoggedErrors; + } + } +} diff --git a/tools-local/tasks/core-setup.tasks.csproj b/tools-local/tasks/core-setup.tasks.csproj index 264fb406..1b3af43b 100644 --- a/tools-local/tasks/core-setup.tasks.csproj +++ b/tools-local/tasks/core-setup.tasks.csproj @@ -72,9 +72,11 @@ + + diff --git a/tools-local/tasks/core-setup.tasks.sln b/tools-local/tasks/core-setup.tasks.sln index b3c81fd0..e53ceba3 100644 --- a/tools-local/tasks/core-setup.tasks.sln +++ b/tools-local/tasks/core-setup.tasks.sln @@ -5,8 +5,6 @@ VisualStudioVersion = 14.0.25420.1 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "core-setup.tasks", "core-setup.tasks.csproj", "{360F25FA-3CD9-4338-B961-A4F3122B88B2}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.DotNet.Build.Tasks.Local", "..\Microsoft.DotNet.Build.Tasks.Local\Microsoft.DotNet.Build.Tasks.Local.csproj", "{B507BED2-0A28-456A-99C6-AD7AA148E35F}" -EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution net45_Debug|Any CPU = net45_Debug|Any CPU From 1f58b23bc6e8168c6ae54a102c93e2ed18adfcd5 Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Tue, 13 Jun 2017 15:46:17 -0700 Subject: [PATCH 533/625] Fix Issue 2682 - Homepage referenced in deb metadata is incorrect (#2684) --- src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json | 2 +- src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json | 2 +- src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json b/src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json index 5a4b1add..98c5a734 100644 --- a/src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json +++ b/src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json @@ -7,7 +7,7 @@ "short_description": "%HOSTFXR_BRAND_NAME% %HOSTFXR_NUGET_VERSION%", "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", - "homepage": "https://dotnet.github.io/core", + "homepage": "https://dotnet.github.io", "release":{ "package_version":"1.0.0.0", diff --git a/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json b/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json index 7423661a..90687629 100644 --- a/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json +++ b/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json @@ -7,7 +7,7 @@ "short_description": "%SHARED_FRAMEWORK_BRAND_NAME% %SHARED_FRAMEWORK_NUGET_NAME% %SHARED_FRAMEWORK_NUGET_VERSION%", "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", - "homepage": "https://dotnet.github.io/core", + "homepage": "https://dotnet.github.io", "release":{ "package_version":"1.0.0.0", diff --git a/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json b/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json index 9b14a615..d3fe6e56 100644 --- a/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json +++ b/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json @@ -7,7 +7,7 @@ "short_description": "%SHARED_HOST_BRAND_NAME%", "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", - "homepage": "https://dotnet.github.io/core", + "homepage": "https://dotnet.github.io", "release":{ "package_version":"1.0.0.0", From ffc90b012a01ebc16c626c3c404c2e3b1c609f01 Mon Sep 17 00:00:00 2001 From: Gaurav Khanna Date: Wed, 14 Jun 2017 09:17:20 -0700 Subject: [PATCH 534/625] Fix the TPA initialization for UWP (#2689) --- src/uwp/Host/UWPHost/HostEnvironment.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/uwp/Host/UWPHost/HostEnvironment.h b/src/uwp/Host/UWPHost/HostEnvironment.h index f4f46e9e..0663ddd9 100644 --- a/src/uwp/Host/UWPHost/HostEnvironment.h +++ b/src/uwp/Host/UWPHost/HostEnvironment.h @@ -181,7 +181,7 @@ public: { if (!m_tpaList.CStr()) { - wchar_t *tpaEntries[] = {L"System.Private.CoreLib.ni.dll", L"mscorlib.ni.dll"}; + wchar_t *tpaEntries[] = {L"System.Private.CoreLib.dll"}; InitializeTPAList(tpaEntries, _countof(tpaEntries)); } From 784c4ad54ec52eaff5c7df1ae37338c7b44e58a8 Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Wed, 14 Jun 2017 13:56:28 -0700 Subject: [PATCH 535/625] Update UWP metapackage version from 5.4.0 to 6.0.0 --- dir.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dir.props b/dir.props index 28013ef3..e4787151 100644 --- a/dir.props +++ b/dir.props @@ -84,7 +84,7 @@ $(ProductVersion) - 5.4.0 + 6.0.0 $(UWPCoreRuntimeSdkVersion)$(ProductVersionSuffix) $(SharedFrameworkNugetVersion) From 355d026bdcdf9eaabf9b83c7bb06ff50730cb4c1 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 6 Jun 2017 22:08:22 -0500 Subject: [PATCH 536/625] Fix VersionSuffix for the managed projects VersionSuffix is getting set before $(BuildNumberMajor) and $(BuildNumberMinor) are being set. When creating the DependencyModel nupkg, it is getting a bad version on its p2p reference to PlatformAbstractions. The fix is to ensure VersionSuffix is defined correctly in the projects themselves - after the obj\BuildVersion.props file is created. Workaround https://github.com/NuGet/Home/issues/4337 --- BranchInfo.props | 15 ++++++++++++++ build.proj | 19 ++--------------- dir.props | 20 ++---------------- restore.proj | 10 --------- src/managed/CommonManaged.props | 36 +++++++++++++++++++++++++++++++-- src/pkg/packaging/dir.proj | 3 +-- 6 files changed, 54 insertions(+), 49 deletions(-) create mode 100644 BranchInfo.props delete mode 100644 restore.proj diff --git a/BranchInfo.props b/BranchInfo.props new file mode 100644 index 00000000..1e032d39 --- /dev/null +++ b/BranchInfo.props @@ -0,0 +1,15 @@ + + + 2 + 1 + 0 + false + preview1 + $(PreReleaseLabel) + Preview 1 + master + master + dotnet + $(ContainerName) + + diff --git a/build.proj b/build.proj index 1990d93d..a29fa1f6 100644 --- a/build.proj +++ b/build.proj @@ -17,7 +17,6 @@ CreateOrUpdateCurrentVersionFile; CreateVersionInfoFile; BatchRestorePackages; - ValidateExactRestore; BuildCustomTasks; @@ -36,22 +35,8 @@ DependsOnTargets="$(TraversalBuildDependencies)" /> - - - - - - - - - - - - - + + diff --git a/dir.props b/dir.props index e4787151..54ec2187 100644 --- a/dir.props +++ b/dir.props @@ -9,20 +9,7 @@ true - - - 2 - 1 - 0 - false - preview1 - $(PreReleaseLabel) - Preview 1 - master - master - dotnet - $(ContainerName) - + Microsoft.NETCore.App @@ -146,10 +133,7 @@ - - - /p:VersionSuffix=$(VersionSuffix) - + DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 diff --git a/restore.proj b/restore.proj deleted file mode 100644 index 093c3088..00000000 --- a/restore.proj +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/src/managed/CommonManaged.props b/src/managed/CommonManaged.props index de4a7332..341b2afb 100644 --- a/src/managed/CommonManaged.props +++ b/src/managed/CommonManaged.props @@ -5,7 +5,24 @@ $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)../..'))/ - 2.1.0 + + + + + + + $(RepoRoot)Bin/ + $(BinDir)obj/ + + + $([System.DateTime]::Now.ToString(yyyyMMdd)) + $(ObjDir)BuildVersion-$(TodayTimeStamp).props + + + + + + $(MajorVersion).$(MinorVersion).$(PatchVersion) $(VersionPrefix) true true @@ -17,6 +34,21 @@ $(RepoRoot)THIRD-PARTY-NOTICES.TXT + + + 9 + + + $(PreReleaseLabel)- + $(VersionSuffix)$(BuildNumberMajor)-$(BuildNumberMinor) + + $(RepoRoot)tools-local/setuptools/Key.snk true @@ -45,5 +77,5 @@
- + \ No newline at end of file diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj index 534e9502..b79d1930 100644 --- a/src/pkg/packaging/dir.proj +++ b/src/pkg/packaging/dir.proj @@ -173,10 +173,9 @@ --output $(PackagesOutDir) --configuration $(ConfigurationGroup) - --version-suffix $(VersionSuffix) -
From 0def9c794f300e3324a161dd9f82bfb1a9f55159 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 8 Jun 2017 17:00:31 -0500 Subject: [PATCH 537/625] Move common repo directories to isolated props file. Also remove the dev machine BuildNumberMinor workaround per PR feedback, as this is no longer necessary. --- RepoDirectories.props | 30 +++++++++++++++++++++++++++ dir.props | 36 ++------------------------------- src/managed/CommonManaged.props | 17 ++-------------- 3 files changed, 34 insertions(+), 49 deletions(-) create mode 100644 RepoDirectories.props diff --git a/RepoDirectories.props b/RepoDirectories.props new file mode 100644 index 00000000..caf00182 --- /dev/null +++ b/RepoDirectories.props @@ -0,0 +1,30 @@ + + + $(MSBuildThisFileDirectory) + + $(RepoRoot) + $(RepoRoot)src/ + + + $(RepoRoot)Bin/ + $(BinDir) + $(BinDir)obj/ + $(ObjDir) + + + $(RepoRoot)packages/ + $(RepoRoot)Tools/ + $(ToolRuntimePath)local/ + + $(ToolRuntimePath) + $(RepoRoot)Tools/ + $(ToolsDir) + $(ToolsDir)net46/ + $(BuildToolsTaskCoreDir) + $(BuildToolsTaskDesktopDir) + $(LocalToolRuntimePath) + $(LocalToolRuntimePath)net46/ + $(BuildToolsTaskDir) + $(ToolsDir)dotnetcli/ + + diff --git a/dir.props b/dir.props index 54ec2187..c2dd6cdb 100644 --- a/dir.props +++ b/dir.props @@ -24,45 +24,13 @@ $(OS) - - - $(MSBuildThisFileDirectory) - $(ProjectDir)src/ - - - $(ProjectDir)Bin/ - $(BinDir) - $(BinDir)obj/ - $(ObjDir) - - - $(ProjectDir)packages/ - $(ProjectDir)Tools/ - $(ToolRuntimePath)local/ - - $(ToolRuntimePath) - $(ProjectDir)Tools/ - $(ToolsDir) - $(ToolsDir)net46/ - $(BuildToolsTaskCoreDir) - $(BuildToolsTaskDesktopDir) - $(LocalToolRuntimePath) - $(LocalToolRuntimePath)net46/ - $(BuildToolsTaskDir) - $(ToolsDir)dotnetcli/ - - + + - - 9 - $(PreReleaseLabel)- $(VersionSuffix)$(BuildNumberMajor)-$(BuildNumberMinor) -$(VersionSuffix) diff --git a/src/managed/CommonManaged.props b/src/managed/CommonManaged.props index 341b2afb..6015227d 100644 --- a/src/managed/CommonManaged.props +++ b/src/managed/CommonManaged.props @@ -3,17 +3,10 @@ - - $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)../..'))/ - - + - - $(RepoRoot)Bin/ - $(BinDir)obj/ - $([System.DateTime]::Now.ToString(yyyyMMdd)) $(ObjDir)BuildVersion-$(TodayTimeStamp).props @@ -35,12 +28,6 @@ - - 9 - - $([System.DateTime]::Now.ToString(yyyyMMdd)) - $(ObjDir)BuildVersion-$(TodayTimeStamp).props - - - - $(MajorVersion).$(MinorVersion).$(PatchVersion) $(VersionPrefix) @@ -27,9 +19,20 @@ $(RepoRoot)THIRD-PARTY-NOTICES.TXT + + + $([System.DateTime]::Now.ToString(yyyyMMdd)) + $(ObjDir)BuildVersion-$(TodayTimeStamp).props + + + + $(PreReleaseLabel)- From 107475d1ce8d6da3ab3cc9bea79dc0333b577840 Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Wed, 21 Jun 2017 21:32:08 -0500 Subject: [PATCH 539/625] Add security build definitions. --- .../DotNet-Core-Setup-Security-Windows.json | 568 ++++++++++++++++++ buildpipeline/security/dir.props | 4 + buildpipeline/security/pipeline.json | 22 + buildpipeline/security/syncAzure.proj | 20 + buildpipeline/security/syncAzure.targets | 29 + 5 files changed, 643 insertions(+) create mode 100644 buildpipeline/security/DotNet-Core-Setup-Security-Windows.json create mode 100644 buildpipeline/security/dir.props create mode 100644 buildpipeline/security/pipeline.json create mode 100644 buildpipeline/security/syncAzure.proj create mode 100644 buildpipeline/security/syncAzure.targets diff --git a/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json b/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json new file mode 100644 index 00000000..1f8b65eb --- /dev/null +++ b/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json @@ -0,0 +1,568 @@ +{ + "build": [ + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Run clean.cmd", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "clean.cmd", + "arguments": "-all", + "workingFolder": "$(Build.SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Download Packages", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(Build.SourcesDirectory)\\buildpipeline\\security\\syncAzure.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "15.0", + "msbuildArchitecture": "x64", + "msbuildLocation": "", + "platform": "x64", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/p:AzureAccount=\"$(PB_CloudDropAccountName)\" /p:AzureToken=\"$(PB_CloudDropAccessToken)\" /p:BlobName=\"$(PB_BlobName)\" /verbosity:diag", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Extract downloaded nupkgs", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "$(Build.SourcesDirectory)", + "workingFolder": "$(Build.SourcesDirectory)", + "inlineScript": "param($SrcDir)\n$secDir = Join-Path \"$SrcDir\" \"security\"\n$pkgDir = \"$SrcDir\\packages\\AzureTransfer\"\ngci \"$pkgDir\\*.nupkg\" | rename-item -newname { [io.path]::ChangeExtension($_.name, \"zip\") }\ngci \"$pkgDir\\*.zip\" | % {\n$dstDir = Join-Path \"$secDir\" $($_.BaseName)\nExpand-Archive -Path $($_.FullName) -DestinationPath \"$dstDir\" -Force\n}\n", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "List all files", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "$(Build.SourcesDirectory)", + "workingFolder": "$(Build.SourcesDirectory)", + "inlineScript": "param($SrcDir)\n$fileCount = 0\ngci $SrcDir -recurse | % {\nWrite-Host $($_.FullName)\n$fileCount += 1\n}\nWrite-Host \"File Count: $fileCount\"\n", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Remove files other than DLLs, PDBs and TXT", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "$(Build.SourcesDirectory)", + "workingFolder": "$(Build.SourcesDirectory)", + "inlineScript": "param($SrcDir)\n$secDir = Join-Path \"$SrcDir\" \"security\"\n$extList = \".dll\", \".pdb\", \".txt\"\ngci $secDir -Recurse | where { !$_.PSIsContainer } | % {\nif ($extList -inotcontains $_.Extension)\n{\n rm $_.FullName -Force -ErrorAction SilentlyContinue\n Write-Host \"Removed $($_.FullName)\"\n}\n}\n\n", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Workaround for long path - DELETE files with path length greater than or equal to 240 characters", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "$(Build.SourcesDirectory)", + "workingFolder": "$(Build.SourcesDirectory)", + "inlineScript": "param($SrcDir)\n$longPath = New-Object System.Collections.ArrayList\ngci \"$SrcDir\\*\" -recurse | where {!$_.PSIsContainer} | % {\nif ($($_.FullName.Length) -ge 240)\n{\n$longPath.Add($($_.Directory.FullName)) | Out-Null\n}\n}\n$longPath | % {\nStart-Process \"cmd\" -ArgumentList \"/c rd /S /Q $_\" -Wait\nWrite-Host \"DELETED $_\"\n}\n", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "List all files - post delete", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "$(Build.SourcesDirectory)", + "workingFolder": "$(Build.SourcesDirectory)", + "inlineScript": "param($SrcDir)\n$fileCount = 0\ngci $SrcDir -recurse | % {\nWrite-Host $($_.FullName)\n$fileCount += 1\n}\nWrite-Host \"File Count: $fileCount\"\n", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Run BinSkim ", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "3056813a-40e9-4b2f-8f6b-612d1bc4e045", + "versionSpec": "3.*", + "definitionType": "task" + }, + "inputs": { + "InputType": "CommandLine", + "arguments": "analyze security\\*.dll --recurse --sympath security\\*.pdb --verbose --statistics", + "Function": "analyze", + "AnalyzeTarget": "$(Build.ArtifactStagingDirectory)", + "AnalyzeSymPath": "", + "AnalyzeConfigPath": "default", + "AnalyzePluginPath": "", + "AnalyzeRecurse": "true", + "AnalyzeVerbose": "true", + "AnalyzeHashes": "true", + "AnalyzeStatistics": "false", + "AnalyzeEnvironment": "false", + "ExportRulesOutputType": "SARIF", + "DumpTarget": "$(Build.ArtifactStagingDirectory)", + "DumpRecurse": "true", + "DumpVerbose": "true", + "toolVersion": "Latest" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Run APIScan", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "9adea2b1-3752-438c-80c6-a6f0a812abdd", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "targetMode": "binarysym", + "softwareFolder": "$(Build.SourcesDirectory)\\security", + "mpdFolder": "", + "softwareName": "Core-Setup", + "softwareVersionNum": "$(PB_BuildNumber)", + "softwareBuildNum": "$(PB_BuildNumber)", + "modeType": "prerelease", + "noCopySymbols": "false", + "noCopyBinaries": "false", + "noDecompress": "true", + "exclusionList": "", + "email": "", + "symbolsFolder": "$(Build.SourcesDirectory)\\security", + "preBbtBinariesFolder": "", + "preBbtSymbolsFolder": "", + "isLargeApp": "false", + "analyzerTimeout": "00:00:00", + "preserveTempFiles": "false", + "toolVersion": "Latest" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "git checkout", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "$(Build.SourcesDirectory) \"$(PB_Git)\"", + "workingFolder": "$(Build.SourcesDirectory)", + "inlineScript": "param($SrcDir, $git)\n$pkgExtPath= Join-Path \"$SrcDir\" \"security\"\ngci \"$pkgExtPath\\version.txt\" -Recurse | % { \n$sha = gc $_\nWrite-Host \"$sha\"\nif (-not [string]::IsNullOrWhiteSpace($sha))\n{\nStart-Process \"$git\" -ArgumentList \"checkout -- .\" -Wait -Verbose -ErrorAction Stop\nStart-Process \"$git\" -ArgumentList \"checkout $sha\" -Wait -Verbose -ErrorAction Stop\nWrite-Host \"Checked out at $sha\"\nbreak\n}\n}", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Run CredScan", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "ea576cd4-c61f-48f8-97e7-a3cb07b90a6f", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "outputFormat": "pre", + "toolVersion": "Latest", + "scanFolder": "$(Build.SourcesDirectory)", + "searchersFileType": "Default", + "searchersFile": "", + "suppressionsFile": "", + "suppressAsError": "false", + "batchSize": "" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Run PoliCheck", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d785890c-0d0d-46bd-8167-8fa9d49990c7", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "inputType": "Basic", + "cmdLineArgs": "/F:$(Build.SourcesDirectory) /T:9 /O:PoliCheck.xml", + "targetType": "F", + "targetArgument": "$(Build.SourcesDirectory)", + "importEx": "0", + "termTypeT": "0029a9", + "termTypeTCustom": "9", + "termTypeK": "", + "termTypeL": "", + "EXGT": "false", + "result": "PoliCheck.xml", + "optionsFC": "1", + "optionsXS": "1", + "optionsCTGLEN": "", + "optionsSEV": "", + "optionsPE": "", + "optionsHMENABLE": "", + "optionsHPATH": "", + "optionsHVER": "", + "optionsRulesDBPath": "", + "optionsRule": "", + "optionsXCLASS": "", + "optionsTASKNAME": "", + "optionsWORKINGDIRECTORY": "", + "optionsFTPATH": "", + "optionsD": "", + "optionsB1": "", + "optionsB2": "", + "optionsB3": "", + "optionsOCDB": "", + "toolVersion": "Latest" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Post Analysis", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "f5679091-e6da-4974-a8dc-0eec03a8ea63", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "APIScan": "true", + "BinScope": "false", + "BinSkim": "true", + "BinSkimBreakOn": "Error", + "CredScan": "true", + "FortifySCA": "false", + "FxCop": "false", + "FxCopBreakOn": "ErrorAbove", + "ModernCop": "false", + "ModernCopBreakOn": "Error", + "PoliCheck": "true", + "PoliCheckBreakOn": "Severity1", + "SDLNativeRules": "false" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Publish Security Analysis Logs", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "4096c760-3a8a-435d-9689-88c0311bbc0e", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "ArtifactName": "CodeAnalysisLogs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)", + "RvName": "", + "ProductComponentName": "", + "ProductVersionNumber": "", + "PlatformName": "", + "SDLToolName": "", + "SDLToolResultFile": "" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "TSA upload to Codebase: DotNet-Core-Setup-Trusted_$(CodeBase) Stamp: Azure", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "3da26988-bb64-4a23-8f06-45531d297dae", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "codebase": "NewOrUpdate", + "tsaStamp": "Azure", + "tsaWebApiUrl": "$(TSAStamp)", + "codeBaseName": "DotNet-Core-Setup-Trusted_$(CodeBase)", + "notificationAlias": "$(NotificationAlias)", + "codeBaseAdmins": "NORTHAMERICA\\raeda", + "instanceUrlAzure": "MSAZURE", + "instanceUrlDevDiv": "DEVDIV", + "projectNameMSAZURE": "One", + "projectNameIDENTITYDIVISION": "", + "projectNameDEVDIV": "DevDiv", + "areaPath": "One\\DevDiv\\DotNetCore", + "iterationPath": "One", + "uploadAPIScan": "true", + "uploadBinScope": "false", + "uploadBinSkim": "true", + "uploadCredScan": "true", + "uploadFortifySCA": "false", + "uploadFxCop": "false", + "uploadModernCop": "false", + "uploadPoliCheck": "true", + "uploadPREfast": "false", + "validateToolOutput": "Warning", + "validateCompatibility": "Error", + "uploadAsync": "true" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Run clean.cmd", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "clean.cmd", + "arguments": "-all", + "workingFolder": "$(Build.SourcesDirectory)", + "failOnStandardError": "false" + } + } + ], + "options": [ + { + "enabled": false, + "definition": { + "id": "5bc3cfb7-6b54-4a4b-b5d2-a3905949f8a6" + }, + "inputs": {} + }, + { + "enabled": false, + "definition": { + "id": "7c555368-ca64-4199-add6-9ebaf0b0137d" + }, + "inputs": { + "multipliers": "[]", + "parallel": "false", + "continueOnError": "true", + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "a9db38f9-9fdc-478c-b0f9-464221e58316" + }, + "inputs": { + "workItemType": "234347", + "assignToRequestor": "true", + "additionalFields": "{}" + } + }, + { + "enabled": false, + "definition": { + "id": "57578776-4c22-4526-aeb0-86b6da17ee9c" + }, + "inputs": {} + }, + { + "enabled": false, + "definition": { + "id": "5d58cc01-7c75-450c-be18-a388ddb129ec" + }, + "inputs": { + "branchFilters": "[\"+refs/heads/*\"]", + "additionalFields": "{}" + } + } + ], + "variables": { + "system.debug": { + "value": "false" + } + }, + "demands": [ + "Agent.OS -equals windows_nt", + "msbuild" + ], + "retentionRules": [ + { + "branches": [ + "+refs/heads/*" + ], + "artifacts": [ + "build.SourceLabel" + ], + "artifactTypesToDelete": [], + "daysToKeep": 10, + "minimumToKeep": 1, + "deleteBuildRecord": true, + "deleteTestResults": true + } + ], + "_links": { + "self": { + "href": "https://devdiv.visualstudio.com/0bdbc590-a062-4c3f-b0f6-9383f67865ee/_apis/build/Definitions/6661" + }, + "web": { + "href": "https://devdiv.visualstudio.com/_permalink/_build/index?collectionId=011b8bdf-6d56-4f87-be0d-0092136884d9&projectId=0bdbc590-a062-4c3f-b0f6-9383f67865ee&definitionId=6661" + }, + "editor": { + "href": "https://devdiv.visualstudio.com/_permalink/_build/definitionEditor?collectionId=011b8bdf-6d56-4f87-be0d-0092136884d9&projectId=0bdbc590-a062-4c3f-b0f6-9383f67865ee&definitionId=6661" + }, + "badge": { + "href": "https://devdiv.visualstudio.com/_apis/public/build/definitions/0bdbc590-a062-4c3f-b0f6-9383f67865ee/6661/badge" + } + }, + "buildNumberFormat": "$(date:yyyyMMdd)$(rev:-rr)", + "jobAuthorizationScope": 1, + "jobTimeoutInMinutes": 600, + "jobCancelTimeoutInMinutes": 5, + "badgeEnabled": true, + "repository": { + "properties": { + "cleanOptions": "3", + "labelSources": "0", + "labelSourcesFormat": "$(build.buildNumber)", + "reportBuildStatus": "true", + "gitLfsSupport": "false", + "skipSyncSource": "false", + "checkoutNestedSubmodules": "false", + "fetchDepth": "0" + }, + "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", + "type": "TfsGit", + "name": "DotNet-Core-Setup-Trusted", + "url": "https://devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted", + "defaultBranch": "refs/heads/sync", + "clean": "true", + "checkoutSubmodules": false + }, + "processParameters": {}, + "quality": "definition", + "authoredBy": { + "id": "9d5fdf9f-36b6-4d0c-a12e-2737a673af94", + "displayName": "Ravi Eda", + "uniqueName": "raeda@microsoft.com", + "url": "https://app.vssps.visualstudio.com/Aa44b2c06-f247-425c-8464-4a0676af910a/_apis/Identities/9d5fdf9f-36b6-4d0c-a12e-2737a673af94", + "imageUrl": "https://devdiv.visualstudio.com/_api/_common/identityImage?id=9d5fdf9f-36b6-4d0c-a12e-2737a673af94" + }, + "queue": { + "id": 36, + "name": "DotNet-Build", + "pool": { + "id": 39, + "name": "DotNet-Build" + } + }, + "id": 6661, + "name": "DotNet-Core-Setup-Security-Windows", + "url": "https://devdiv.visualstudio.com/0bdbc590-a062-4c3f-b0f6-9383f67865ee/_apis/build/Definitions/6661", + "uri": "vstfs:///Build/Definition/6661", + "path": "\\", + "type": 2, + "revision": 2, + "createdDate": "2017-06-21T21:58:12.397Z", + "project": { + "id": "0bdbc590-a062-4c3f-b0f6-9383f67865ee", + "name": "DevDiv", + "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", + "url": "https://devdiv.visualstudio.com/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", + "state": "wellFormed", + "revision": 418097676, + "visibility": 0 + } +} diff --git a/buildpipeline/security/dir.props b/buildpipeline/security/dir.props new file mode 100644 index 00000000..9024fa73 --- /dev/null +++ b/buildpipeline/security/dir.props @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/buildpipeline/security/pipeline.json b/buildpipeline/security/pipeline.json new file mode 100644 index 00000000..07a18faa --- /dev/null +++ b/buildpipeline/security/pipeline.json @@ -0,0 +1,22 @@ +{ + "Repository": "corefx", + "Definitions": { + "Path": ".", + "Type": "VSTS", + "BaseUrl": "https://devdiv.visualstudio.com/DefaultCollection", + "SkipBranchAndVersionOverrides": "false" + }, + "Pipelines": [ + { + "Name": "Security Build for Windows", + "Parameters": { + "TreatWarningsAsErrors": "false" + }, + "Definitions": [ + { + "Name": "DotNet-Core-Setup-Security-Windows" + } + ] + } + ] +} diff --git a/buildpipeline/security/syncAzure.proj b/buildpipeline/security/syncAzure.proj new file mode 100644 index 00000000..7eaa6ed4 --- /dev/null +++ b/buildpipeline/security/syncAzure.proj @@ -0,0 +1,20 @@ + + + + + + dotnet + $(PackagesDir)AzureTransfer + + + + + + + + + + + + + diff --git a/buildpipeline/security/syncAzure.targets b/buildpipeline/security/syncAzure.targets new file mode 100644 index 00000000..0bdd148e --- /dev/null +++ b/buildpipeline/security/syncAzure.targets @@ -0,0 +1,29 @@ + + + + + + + $(PackagesDir)/AzureTransfer + + + + + + + + + <_CoreHostPackages Include="%(_BlobList.Identity)" Condition="'%(_BlobList.Extension)' == '.nupkg'" /> + + + + + \ No newline at end of file From 7b8f625ecb831607d4730402d76325f6575b7e63 Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Wed, 21 Jun 2017 21:44:13 -0500 Subject: [PATCH 540/625] Run sync.cmd. --- .../DotNet-Core-Setup-Security-Windows.json | 863 +++++++++--------- 1 file changed, 441 insertions(+), 422 deletions(-) diff --git a/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json b/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json index 1f8b65eb..28998cba 100644 --- a/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json +++ b/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json @@ -1,425 +1,444 @@ { - "build": [ - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Run clean.cmd", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "clean.cmd", - "arguments": "-all", - "workingFolder": "$(Build.SourcesDirectory)", - "failOnStandardError": "false" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Download Packages", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(Build.SourcesDirectory)\\buildpipeline\\security\\syncAzure.proj", - "msbuildLocationMethod": "version", - "msbuildVersion": "15.0", - "msbuildArchitecture": "x64", - "msbuildLocation": "", - "platform": "x64", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/p:AzureAccount=\"$(PB_CloudDropAccountName)\" /p:AzureToken=\"$(PB_CloudDropAccessToken)\" /p:BlobName=\"$(PB_BlobName)\" /verbosity:diag", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Extract downloaded nupkgs", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "scriptType": "inlineScript", - "scriptName": "", - "arguments": "$(Build.SourcesDirectory)", - "workingFolder": "$(Build.SourcesDirectory)", - "inlineScript": "param($SrcDir)\n$secDir = Join-Path \"$SrcDir\" \"security\"\n$pkgDir = \"$SrcDir\\packages\\AzureTransfer\"\ngci \"$pkgDir\\*.nupkg\" | rename-item -newname { [io.path]::ChangeExtension($_.name, \"zip\") }\ngci \"$pkgDir\\*.zip\" | % {\n$dstDir = Join-Path \"$secDir\" $($_.BaseName)\nExpand-Archive -Path $($_.FullName) -DestinationPath \"$dstDir\" -Force\n}\n", - "failOnStandardError": "true" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "List all files", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "scriptType": "inlineScript", - "scriptName": "", - "arguments": "$(Build.SourcesDirectory)", - "workingFolder": "$(Build.SourcesDirectory)", - "inlineScript": "param($SrcDir)\n$fileCount = 0\ngci $SrcDir -recurse | % {\nWrite-Host $($_.FullName)\n$fileCount += 1\n}\nWrite-Host \"File Count: $fileCount\"\n", - "failOnStandardError": "true" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Remove files other than DLLs, PDBs and TXT", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "scriptType": "inlineScript", - "scriptName": "", - "arguments": "$(Build.SourcesDirectory)", - "workingFolder": "$(Build.SourcesDirectory)", - "inlineScript": "param($SrcDir)\n$secDir = Join-Path \"$SrcDir\" \"security\"\n$extList = \".dll\", \".pdb\", \".txt\"\ngci $secDir -Recurse | where { !$_.PSIsContainer } | % {\nif ($extList -inotcontains $_.Extension)\n{\n rm $_.FullName -Force -ErrorAction SilentlyContinue\n Write-Host \"Removed $($_.FullName)\"\n}\n}\n\n", - "failOnStandardError": "true" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Workaround for long path - DELETE files with path length greater than or equal to 240 characters", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "scriptType": "inlineScript", - "scriptName": "", - "arguments": "$(Build.SourcesDirectory)", - "workingFolder": "$(Build.SourcesDirectory)", - "inlineScript": "param($SrcDir)\n$longPath = New-Object System.Collections.ArrayList\ngci \"$SrcDir\\*\" -recurse | where {!$_.PSIsContainer} | % {\nif ($($_.FullName.Length) -ge 240)\n{\n$longPath.Add($($_.Directory.FullName)) | Out-Null\n}\n}\n$longPath | % {\nStart-Process \"cmd\" -ArgumentList \"/c rd /S /Q $_\" -Wait\nWrite-Host \"DELETED $_\"\n}\n", - "failOnStandardError": "true" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "List all files - post delete", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "scriptType": "inlineScript", - "scriptName": "", - "arguments": "$(Build.SourcesDirectory)", - "workingFolder": "$(Build.SourcesDirectory)", - "inlineScript": "param($SrcDir)\n$fileCount = 0\ngci $SrcDir -recurse | % {\nWrite-Host $($_.FullName)\n$fileCount += 1\n}\nWrite-Host \"File Count: $fileCount\"\n", - "failOnStandardError": "true" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Run BinSkim ", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "3056813a-40e9-4b2f-8f6b-612d1bc4e045", - "versionSpec": "3.*", - "definitionType": "task" - }, - "inputs": { - "InputType": "CommandLine", - "arguments": "analyze security\\*.dll --recurse --sympath security\\*.pdb --verbose --statistics", - "Function": "analyze", - "AnalyzeTarget": "$(Build.ArtifactStagingDirectory)", - "AnalyzeSymPath": "", - "AnalyzeConfigPath": "default", - "AnalyzePluginPath": "", - "AnalyzeRecurse": "true", - "AnalyzeVerbose": "true", - "AnalyzeHashes": "true", - "AnalyzeStatistics": "false", - "AnalyzeEnvironment": "false", - "ExportRulesOutputType": "SARIF", - "DumpTarget": "$(Build.ArtifactStagingDirectory)", - "DumpRecurse": "true", - "DumpVerbose": "true", - "toolVersion": "Latest" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Run APIScan", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "9adea2b1-3752-438c-80c6-a6f0a812abdd", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "targetMode": "binarysym", - "softwareFolder": "$(Build.SourcesDirectory)\\security", - "mpdFolder": "", - "softwareName": "Core-Setup", - "softwareVersionNum": "$(PB_BuildNumber)", - "softwareBuildNum": "$(PB_BuildNumber)", - "modeType": "prerelease", - "noCopySymbols": "false", - "noCopyBinaries": "false", - "noDecompress": "true", - "exclusionList": "", - "email": "", - "symbolsFolder": "$(Build.SourcesDirectory)\\security", - "preBbtBinariesFolder": "", - "preBbtSymbolsFolder": "", - "isLargeApp": "false", - "analyzerTimeout": "00:00:00", - "preserveTempFiles": "false", - "toolVersion": "Latest" - } - }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "git checkout", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "scriptType": "inlineScript", - "scriptName": "", - "arguments": "$(Build.SourcesDirectory) \"$(PB_Git)\"", - "workingFolder": "$(Build.SourcesDirectory)", - "inlineScript": "param($SrcDir, $git)\n$pkgExtPath= Join-Path \"$SrcDir\" \"security\"\ngci \"$pkgExtPath\\version.txt\" -Recurse | % { \n$sha = gc $_\nWrite-Host \"$sha\"\nif (-not [string]::IsNullOrWhiteSpace($sha))\n{\nStart-Process \"$git\" -ArgumentList \"checkout -- .\" -Wait -Verbose -ErrorAction Stop\nStart-Process \"$git\" -ArgumentList \"checkout $sha\" -Wait -Verbose -ErrorAction Stop\nWrite-Host \"Checked out at $sha\"\nbreak\n}\n}", - "failOnStandardError": "true" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Run CredScan", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "ea576cd4-c61f-48f8-97e7-a3cb07b90a6f", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "outputFormat": "pre", - "toolVersion": "Latest", - "scanFolder": "$(Build.SourcesDirectory)", - "searchersFileType": "Default", - "searchersFile": "", - "suppressionsFile": "", - "suppressAsError": "false", - "batchSize": "" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Run PoliCheck", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "d785890c-0d0d-46bd-8167-8fa9d49990c7", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "inputType": "Basic", - "cmdLineArgs": "/F:$(Build.SourcesDirectory) /T:9 /O:PoliCheck.xml", - "targetType": "F", - "targetArgument": "$(Build.SourcesDirectory)", - "importEx": "0", - "termTypeT": "0029a9", - "termTypeTCustom": "9", - "termTypeK": "", - "termTypeL": "", - "EXGT": "false", - "result": "PoliCheck.xml", - "optionsFC": "1", - "optionsXS": "1", - "optionsCTGLEN": "", - "optionsSEV": "", - "optionsPE": "", - "optionsHMENABLE": "", - "optionsHPATH": "", - "optionsHVER": "", - "optionsRulesDBPath": "", - "optionsRule": "", - "optionsXCLASS": "", - "optionsTASKNAME": "", - "optionsWORKINGDIRECTORY": "", - "optionsFTPATH": "", - "optionsD": "", - "optionsB1": "", - "optionsB2": "", - "optionsB3": "", - "optionsOCDB": "", - "toolVersion": "Latest" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Post Analysis", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "f5679091-e6da-4974-a8dc-0eec03a8ea63", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "APIScan": "true", - "BinScope": "false", - "BinSkim": "true", - "BinSkimBreakOn": "Error", - "CredScan": "true", - "FortifySCA": "false", - "FxCop": "false", - "FxCopBreakOn": "ErrorAbove", - "ModernCop": "false", - "ModernCopBreakOn": "Error", - "PoliCheck": "true", - "PoliCheckBreakOn": "Severity1", - "SDLNativeRules": "false" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Publish Security Analysis Logs", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "4096c760-3a8a-435d-9689-88c0311bbc0e", - "versionSpec": "2.*", - "definitionType": "task" - }, - "inputs": { - "ArtifactName": "CodeAnalysisLogs", - "ArtifactType": "Container", - "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)", - "RvName": "", - "ProductComponentName": "", - "ProductVersionNumber": "", - "PlatformName": "", - "SDLToolName": "", - "SDLToolResultFile": "" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "TSA upload to Codebase: DotNet-Core-Setup-Trusted_$(CodeBase) Stamp: Azure", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "3da26988-bb64-4a23-8f06-45531d297dae", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "codebase": "NewOrUpdate", - "tsaStamp": "Azure", - "tsaWebApiUrl": "$(TSAStamp)", - "codeBaseName": "DotNet-Core-Setup-Trusted_$(CodeBase)", - "notificationAlias": "$(NotificationAlias)", - "codeBaseAdmins": "NORTHAMERICA\\raeda", - "instanceUrlAzure": "MSAZURE", - "instanceUrlDevDiv": "DEVDIV", - "projectNameMSAZURE": "One", - "projectNameIDENTITYDIVISION": "", - "projectNameDEVDIV": "DevDiv", - "areaPath": "One\\DevDiv\\DotNetCore", - "iterationPath": "One", - "uploadAPIScan": "true", - "uploadBinScope": "false", - "uploadBinSkim": "true", - "uploadCredScan": "true", - "uploadFortifySCA": "false", - "uploadFxCop": "false", - "uploadModernCop": "false", - "uploadPoliCheck": "true", - "uploadPREfast": "false", - "validateToolOutput": "Warning", - "validateCompatibility": "Error", - "uploadAsync": "true" - } - }, - { - "enabled": true, - "continueOnError": true, - "alwaysRun": false, - "displayName": "Run clean.cmd", - "timeoutInMinutes": 0, - "condition": "succeeded()", - "task": { - "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "filename": "clean.cmd", - "arguments": "-all", - "workingFolder": "$(Build.SourcesDirectory)", - "failOnStandardError": "false" - } - } - ], + "build": [ + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Run clean.cmd", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "clean.cmd", + "arguments": "-all", + "workingFolder": "$(Build.SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Run sync.cmd", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "sync.cmd", + "arguments": "", + "workingFolder": "$(Build.SourcesDirectory)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Download Packages", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(Build.SourcesDirectory)\\buildpipeline\\security\\syncAzure.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "15.0", + "msbuildArchitecture": "x64", + "msbuildLocation": "", + "platform": "x64", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/p:AzureAccount=\"$(PB_CloudDropAccountName)\" /p:AzureToken=\"$(PB_CloudDropAccessToken)\" /p:BlobName=\"$(PB_BlobName)\" /verbosity:diag", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Extract downloaded nupkgs", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "$(Build.SourcesDirectory)", + "workingFolder": "$(Build.SourcesDirectory)", + "inlineScript": "param($SrcDir)\n$secDir = Join-Path \"$SrcDir\" \"security\"\n$pkgDir = \"$SrcDir\\packages\\AzureTransfer\"\ngci \"$pkgDir\\*.nupkg\" | rename-item -newname { [io.path]::ChangeExtension($_.name, \"zip\") }\ngci \"$pkgDir\\*.zip\" | % {\n$dstDir = Join-Path \"$secDir\" $($_.BaseName)\nExpand-Archive -Path $($_.FullName) -DestinationPath \"$dstDir\" -Force\n}\n", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "List all files", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "$(Build.SourcesDirectory)", + "workingFolder": "$(Build.SourcesDirectory)", + "inlineScript": "param($SrcDir)\n$fileCount = 0\ngci $SrcDir -recurse | % {\nWrite-Host $($_.FullName)\n$fileCount += 1\n}\nWrite-Host \"File Count: $fileCount\"\n", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Remove files other than DLLs, PDBs and TXT", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "$(Build.SourcesDirectory)", + "workingFolder": "$(Build.SourcesDirectory)", + "inlineScript": "param($SrcDir)\n$secDir = Join-Path \"$SrcDir\" \"security\"\n$extList = \".dll\", \".pdb\", \".txt\"\ngci $secDir -Recurse | where { !$_.PSIsContainer } | % {\nif ($extList -inotcontains $_.Extension)\n{\n rm $_.FullName -Force -ErrorAction SilentlyContinue\n Write-Host \"Removed $($_.FullName)\"\n}\n}\n\n", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Workaround for long path - DELETE files with path length greater than or equal to 240 characters", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "$(Build.SourcesDirectory)", + "workingFolder": "$(Build.SourcesDirectory)", + "inlineScript": "param($SrcDir)\n$longPath = New-Object System.Collections.ArrayList\ngci \"$SrcDir\\*\" -recurse | where {!$_.PSIsContainer} | % {\nif ($($_.FullName.Length) -ge 240)\n{\n$longPath.Add($($_.Directory.FullName)) | Out-Null\n}\n}\n$longPath | % {\nStart-Process \"cmd\" -ArgumentList \"/c rd /S /Q $_\" -Wait\nWrite-Host \"DELETED $_\"\n}\n", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "List all files - post delete", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "$(Build.SourcesDirectory)", + "workingFolder": "$(Build.SourcesDirectory)", + "inlineScript": "param($SrcDir)\n$fileCount = 0\ngci $SrcDir -recurse | % {\nWrite-Host $($_.FullName)\n$fileCount += 1\n}\nWrite-Host \"File Count: $fileCount\"\n", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Run BinSkim ", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "3056813a-40e9-4b2f-8f6b-612d1bc4e045", + "versionSpec": "3.*", + "definitionType": "task" + }, + "inputs": { + "InputType": "CommandLine", + "arguments": "analyze security\\*.dll --recurse --sympath security\\*.pdb --verbose --statistics", + "Function": "analyze", + "AnalyzeTarget": "$(Build.ArtifactStagingDirectory)", + "AnalyzeSymPath": "", + "AnalyzeConfigPath": "default", + "AnalyzePluginPath": "", + "AnalyzeRecurse": "true", + "AnalyzeVerbose": "true", + "AnalyzeHashes": "true", + "AnalyzeStatistics": "false", + "AnalyzeEnvironment": "false", + "ExportRulesOutputType": "SARIF", + "DumpTarget": "$(Build.ArtifactStagingDirectory)", + "DumpRecurse": "true", + "DumpVerbose": "true", + "toolVersion": "Latest" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Run APIScan", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "9adea2b1-3752-438c-80c6-a6f0a812abdd", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "targetMode": "binarysym", + "softwareFolder": "$(Build.SourcesDirectory)\\security", + "mpdFolder": "", + "softwareName": "Core-Setup", + "softwareVersionNum": "$(PB_BuildNumber)", + "softwareBuildNum": "$(PB_BuildNumber)", + "modeType": "prerelease", + "noCopySymbols": "false", + "noCopyBinaries": "false", + "noDecompress": "true", + "exclusionList": "", + "email": "", + "symbolsFolder": "$(Build.SourcesDirectory)\\security", + "preBbtBinariesFolder": "", + "preBbtSymbolsFolder": "", + "isLargeApp": "false", + "analyzerTimeout": "00:00:00", + "preserveTempFiles": "false", + "toolVersion": "Latest" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "git checkout", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "$(Build.SourcesDirectory) \"$(PB_Git)\"", + "workingFolder": "$(Build.SourcesDirectory)", + "inlineScript": "param($SrcDir, $git)\n$pkgExtPath= Join-Path \"$SrcDir\" \"security\"\ngci \"$pkgExtPath\\version.txt\" -Recurse | % { \n$sha = gc $_\nWrite-Host \"$sha\"\nif (-not [string]::IsNullOrWhiteSpace($sha))\n{\nStart-Process \"$git\" -ArgumentList \"checkout -- .\" -Wait -Verbose -ErrorAction Stop\nStart-Process \"$git\" -ArgumentList \"checkout $sha\" -Wait -Verbose -ErrorAction Stop\nWrite-Host \"Checked out at $sha\"\nbreak\n}\n}", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Run CredScan", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "ea576cd4-c61f-48f8-97e7-a3cb07b90a6f", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "outputFormat": "pre", + "toolVersion": "Latest", + "scanFolder": "$(Build.SourcesDirectory)", + "searchersFileType": "Default", + "searchersFile": "", + "suppressionsFile": "", + "suppressAsError": "false", + "batchSize": "" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Run PoliCheck", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d785890c-0d0d-46bd-8167-8fa9d49990c7", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "inputType": "Basic", + "cmdLineArgs": "/F:$(Build.SourcesDirectory) /T:9 /O:PoliCheck.xml", + "targetType": "F", + "targetArgument": "$(Build.SourcesDirectory)", + "importEx": "0", + "termTypeT": "0029a9", + "termTypeTCustom": "9", + "termTypeK": "", + "termTypeL": "", + "EXGT": "false", + "result": "PoliCheck.xml", + "optionsFC": "1", + "optionsXS": "1", + "optionsCTGLEN": "", + "optionsSEV": "", + "optionsPE": "", + "optionsHMENABLE": "", + "optionsHPATH": "", + "optionsHVER": "", + "optionsRulesDBPath": "", + "optionsRule": "", + "optionsXCLASS": "", + "optionsTASKNAME": "", + "optionsWORKINGDIRECTORY": "", + "optionsFTPATH": "", + "optionsD": "", + "optionsB1": "", + "optionsB2": "", + "optionsB3": "", + "optionsOCDB": "", + "toolVersion": "Latest" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Post Analysis", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "f5679091-e6da-4974-a8dc-0eec03a8ea63", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "APIScan": "true", + "BinScope": "false", + "BinSkim": "true", + "BinSkimBreakOn": "Error", + "CredScan": "true", + "FortifySCA": "false", + "FxCop": "false", + "FxCopBreakOn": "ErrorAbove", + "ModernCop": "false", + "ModernCopBreakOn": "Error", + "PoliCheck": "true", + "PoliCheckBreakOn": "Severity1", + "SDLNativeRules": "false" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Publish Security Analysis Logs", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "4096c760-3a8a-435d-9689-88c0311bbc0e", + "versionSpec": "2.*", + "definitionType": "task" + }, + "inputs": { + "ArtifactName": "CodeAnalysisLogs", + "ArtifactType": "Container", + "TargetPath": "\\\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)", + "RvName": "", + "ProductComponentName": "", + "ProductVersionNumber": "", + "PlatformName": "", + "SDLToolName": "", + "SDLToolResultFile": "" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "TSA upload to Codebase: DotNet-Core-Setup-Trusted_$(CodeBase) Stamp: Azure", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "3da26988-bb64-4a23-8f06-45531d297dae", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "codebase": "NewOrUpdate", + "tsaStamp": "Azure", + "tsaWebApiUrl": "$(TSAStamp)", + "codeBaseName": "DotNet-Core-Setup-Trusted_$(CodeBase)", + "notificationAlias": "$(NotificationAlias)", + "codeBaseAdmins": "NORTHAMERICA\\raeda", + "instanceUrlAzure": "MSAZURE", + "instanceUrlDevDiv": "DEVDIV", + "projectNameMSAZURE": "One", + "projectNameIDENTITYDIVISION": "", + "projectNameDEVDIV": "DevDiv", + "areaPath": "One\\DevDiv\\DotNetCore", + "iterationPath": "One", + "uploadAPIScan": "true", + "uploadBinScope": "false", + "uploadBinSkim": "true", + "uploadCredScan": "true", + "uploadFortifySCA": "false", + "uploadFxCop": "false", + "uploadModernCop": "false", + "uploadPoliCheck": "true", + "uploadPREfast": "false", + "validateToolOutput": "Warning", + "validateCompatibility": "Error", + "uploadAsync": "true" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Run clean.cmd", + "timeoutInMinutes": 0, + "condition": "succeeded()", + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "clean.cmd", + "arguments": "-all", + "workingFolder": "$(Build.SourcesDirectory)", + "failOnStandardError": "false" + } + } + ], "options": [ { "enabled": false, @@ -527,7 +546,7 @@ "type": "TfsGit", "name": "DotNet-Core-Setup-Trusted", "url": "https://devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted", - "defaultBranch": "refs/heads/sync", + "defaultBranch": "refs/heads/master", "clean": "true", "checkoutSubmodules": false }, From 2f87c0d158ec5c508d55828e4ee700159afc36d1 Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Wed, 21 Jun 2017 21:47:24 -0500 Subject: [PATCH 541/625] Use init-tools.cmd instead of sync.cmd. --- .../security/DotNet-Core-Setup-Security-Windows.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json b/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json index 28998cba..278f62fe 100644 --- a/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json +++ b/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json @@ -23,7 +23,7 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Run sync.cmd", + "displayName": "Run init-tools.cmd", "timeoutInMinutes": 0, "condition": "succeeded()", "task": { @@ -32,7 +32,7 @@ "definitionType": "task" }, "inputs": { - "filename": "sync.cmd", + "filename": "init-tools.cmd", "arguments": "", "workingFolder": "$(Build.SourcesDirectory)", "failOnStandardError": "false" From f82494712d2a66eff9d6eff5a1bbf683096e1455 Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Thu, 22 Jun 2017 06:38:33 -0500 Subject: [PATCH 542/625] Remove api-* and ucrtbase*. --- .../security/DotNet-Core-Setup-Security-Windows.json | 4 ++-- buildpipeline/security/dir.props | 2 +- buildpipeline/security/syncAzure.targets | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json b/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json index 278f62fe..ccf8971a 100644 --- a/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json +++ b/buildpipeline/security/DotNet-Core-Setup-Security-Windows.json @@ -112,7 +112,7 @@ "enabled": true, "continueOnError": true, "alwaysRun": false, - "displayName": "Remove files other than DLLs, PDBs and TXT", + "displayName": "Remove api-*, ucrtbase*, and files other than DLLs, PDBs and TXT", "timeoutInMinutes": 0, "condition": "succeeded()", "task": { @@ -125,7 +125,7 @@ "scriptName": "", "arguments": "$(Build.SourcesDirectory)", "workingFolder": "$(Build.SourcesDirectory)", - "inlineScript": "param($SrcDir)\n$secDir = Join-Path \"$SrcDir\" \"security\"\n$extList = \".dll\", \".pdb\", \".txt\"\ngci $secDir -Recurse | where { !$_.PSIsContainer } | % {\nif ($extList -inotcontains $_.Extension)\n{\n rm $_.FullName -Force -ErrorAction SilentlyContinue\n Write-Host \"Removed $($_.FullName)\"\n}\n}\n\n", + "inlineScript": "param($SrcDir)\n$secDir = Join-Path \"$SrcDir\" \"security\"\n$extList = \".dll\", \".pdb\", \".txt\"\ngci $secDir -Recurse | where { !$_.PSIsContainer } | % {\nif ($extList -inotcontains $_.Extension -or $_.BaseName -like \"api-*\" -or $_.BaseName -like \"ucrtbase*\")\n{\n rm $_.FullName -Force\n Write-Host \"Removed $($_.FullName)\"\n}\n}\n\n", "failOnStandardError": "true" } }, diff --git a/buildpipeline/security/dir.props b/buildpipeline/security/dir.props index 9024fa73..28bd945d 100644 --- a/buildpipeline/security/dir.props +++ b/buildpipeline/security/dir.props @@ -1,4 +1,4 @@ - \ No newline at end of file + diff --git a/buildpipeline/security/syncAzure.targets b/buildpipeline/security/syncAzure.targets index 0bdd148e..a170c33b 100644 --- a/buildpipeline/security/syncAzure.targets +++ b/buildpipeline/security/syncAzure.targets @@ -26,4 +26,4 @@ BlobNamePrefix="$(BlobName)" DownloadDirectory="$(DownloadDirectory)" />
- \ No newline at end of file + From 61207fc72129979e4081f533d5a37981489acbbc Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Thu, 22 Jun 2017 19:29:55 -0700 Subject: [PATCH 543/625] Update uap10.1 moniker in packages to uap10.0.15138 to support NS2.0 projects in VS --- .../Microsoft.NETCore.UniversalWindowsPlatform.pkgproj | 2 +- .../src/Microsoft.NETCore.UniversalWindowsPlatform.depproj | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj index 74e8e267..eb69029f 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/Microsoft.NETCore.UniversalWindowsPlatform.pkgproj @@ -31,7 +31,7 @@ - uap10.1 + uap10.0.15138 unused - UAP,Version=v10.1 - uap10.1 - uap10.1 + UAP,Version=v10.0.15138 + uap10.0.15138 + uap10.0.15138 Microsoft.Private.CoreFx.UAP true true From 604e1f88b75720bc20f793f014c395d90f5992f2 Mon Sep 17 00:00:00 2001 From: Steve Harter Date: Fri, 23 Jun 2017 13:09:24 -0500 Subject: [PATCH 544/625] Allow missing satellite assemblies (#2717) --- src/corehost/cli/deps_resolver.cpp | 62 ++++++++++++++++++++++-------- 1 file changed, 46 insertions(+), 16 deletions(-) diff --git a/src/corehost/cli/deps_resolver.cpp b/src/corehost/cli/deps_resolver.cpp index cf41401e..60a2ea3e 100644 --- a/src/corehost/cli/deps_resolver.cpp +++ b/src/corehost/cli/deps_resolver.cpp @@ -13,6 +13,16 @@ #include "fx_ver.h" #include "libhost.h" +const pal::string_t MissingAssemblyMessage = _X( + "%s:\n" + " An assembly specified in the application dependencies manifest (%s) was not found:\n" + " package: '%s', version: '%s'\n" + " path: '%s'"); + +const pal::string_t ManifestListMessage = _X( + " This assembly was expected to be in the local runtime store as the application was published using the following target manifest files:\n" + " %s"); + namespace { // ----------------------------------------------------------------------------- @@ -303,25 +313,47 @@ bool deps_resolver_t::probe_deps_entry(const deps_entry_t& entry, const pal::str return false; } -bool report_missing_assembly_in_manifest(const deps_entry_t& entry) +bool report_missing_assembly_in_manifest(const deps_entry_t& entry, bool continueResolving = false) { - trace::error(_X( - "Error:\n" - " An assembly specified in the application dependencies manifest (%s) was not found:\n" - " package: '%s', version: '%s'\n" - " path: '%s'"), - entry.deps_file.c_str(), entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); + bool showManifestListMessage = !entry.runtime_store_manifest_list.empty(); - if (!entry.runtime_store_manifest_list.empty()) + if (entry.asset_type == deps_entry_t::asset_types::resources) { - trace::error(_X( - " This assembly was expected to be in the local runtime store as the application was published using the following target manifest files:\n" - " %s"), - entry.runtime_store_manifest_list.c_str()); + // Treat missing resource assemblies as informational. + continueResolving = true; + + trace::info(MissingAssemblyMessage.c_str(), _X("Info"), + entry.deps_file.c_str(), entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); + + if (showManifestListMessage) + { + trace::info(ManifestListMessage.c_str(), entry.runtime_store_manifest_list.c_str()); + } + } + else if (continueResolving) + { + trace::warning(MissingAssemblyMessage.c_str(), _X("Warning"), + entry.deps_file.c_str(), entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); + + if (showManifestListMessage) + { + trace::warning(ManifestListMessage.c_str(), entry.runtime_store_manifest_list.c_str()); + } + } + else + { + trace::error(MissingAssemblyMessage.c_str(), _X("Error"), + entry.deps_file.c_str(), entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); + + if (showManifestListMessage) + { + trace::error(ManifestListMessage.c_str(), entry.runtime_store_manifest_list.c_str()); + } } - return false; + return continueResolving; } + /** * Resovle the TPA assembly locations */ @@ -583,9 +615,7 @@ bool deps_resolver_t::resolve_probe_dirs( // because of rid-fallback could happen (ex: CentOS falling back to RHEL) if ((entry.asset_name == _X("apphost")) && ends_with(entry.library_name, _X(".Microsoft.NETCore.DotNetAppHost"), false)) { - trace::warning(_X("Warning: assembly specified in the dependencies manifest was not found -- package: '%s', version: '%s', path: '%s'"), - entry.library_name.c_str(), entry.library_version.c_str(), entry.relative_path.c_str()); - return true; + return report_missing_assembly_in_manifest(entry, true); } return report_missing_assembly_in_manifest(entry); From 7587a4184423df408793185d737a9fd3c9cd45ad Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Fri, 23 Jun 2017 16:33:27 -0700 Subject: [PATCH 545/625] Revert NuGet restore TFM to uap10.1 --- .../src/Microsoft.NETCore.UniversalWindowsPlatform.depproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj index c6e06923..6f4ea06a 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj @@ -7,8 +7,8 @@ unused - UAP,Version=v10.0.15138 - uap10.0.15138 + UAP,Version=v10.1 + uap10.1 uap10.0.15138 Microsoft.Private.CoreFx.UAP true From c24f25b2ccb0163c5d8933bb5fe6b88c9f1f1db9 Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Tue, 27 Jun 2017 14:45:11 -0700 Subject: [PATCH 546/625] Add Microsoft.NET.CoreRuntime.appx to UWPCoreRuntimeSdk package (#2736) * Add all files except for Microsoft.Build.Net.CoreRuntimeTask.dll which Microsoft.Net.CoreRuntime.targets will rely upon when implemented * Move targets files into a subdirectory that better maps to final NuGet package contents * Update Microsoft.Net.UWPCoreRuntimeSdk package so the identity package carries the necessary .props/.targets files for VS and the RID-specific packages carry the binaries and appx package. Right now the VS files are not complete, but merely mocked up to achieve right structure * Clean up some unnecessary changes * Fix build ordering issue Work-around the packaging for UWPCoreRuntimeSdk requiring the appx from the Microsoft.NET.CoreRuntime sister project by serializing the packaging projects. This takes advantage of the OS API returning directory contents in lexicographical order - alternatively we could manually enumerate the list of projects. * CR Feedback Factor path to Microsoft.Net.CoreRuntime.2.1.appx into props so both uses refer to the same thing Fix up unix build failures * Make project list explicit --- dir.props | 4 ++ publish/dir.props | 2 +- src/pkg/packages.builds | 45 +++++++++++++++++-- .../Microsoft.Net.UWPCoreRuntimeSdk.builds | 2 +- .../Microsoft.Net.UWPCoreRuntimeSdk.pkgproj | 14 ++++-- .../Microsoft.Net.UWPCoreRuntimeSdk/dir.props | 6 +-- .../Microsoft.Net.UWPCoreRuntimeSdk.props | 0 .../Microsoft.Net.UWPCoreRuntimeSdk.targets | 0 ...Microsoft.Net.CoreRuntime.settings.targets | 0 .../Microsoft.Net.CoreRuntime.targets | 0 .../Microsoft.Net.UWPCoreRuntimeSdk.builds | 14 ++++++ .../Microsoft.Net.UWPCoreRuntimeSdk.depproj | 45 +++++++++++++++++++ .../uwpcoreruntimesdkRIDs.props | 16 +++++++ 13 files changed, 134 insertions(+), 14 deletions(-) rename src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/{ => build}/Microsoft.Net.UWPCoreRuntimeSdk.props (100%) rename src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/{ => build}/Microsoft.Net.UWPCoreRuntimeSdk.targets (100%) create mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/tools/CoreRuntime/Microsoft.Net.CoreRuntime.settings.targets create mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/tools/CoreRuntime/Microsoft.Net.CoreRuntime.targets create mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.builds create mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.depproj create mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/uwpcoreruntimesdkRIDs.props diff --git a/dir.props b/dir.props index c2dd6cdb..fe1df866 100644 --- a/dir.props +++ b/dir.props @@ -376,6 +376,10 @@ $(SharedFxDebPkgName.ToLower()) + + $(UWPOutputDir)Microsoft.NET.CoreRuntime.$(MajorVersion).$(MinorVersion).appx + + diff --git a/publish/dir.props b/publish/dir.props index 592035d5..454fb84d 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -22,7 +22,7 @@ $(BinariesRelativePath) - + $(BinariesRelativePath) diff --git a/src/pkg/packages.builds b/src/pkg/packages.builds index 8dcb242c..4c804cf6 100644 --- a/src/pkg/packages.builds +++ b/src/pkg/packages.builds @@ -6,15 +6,52 @@ BuildPackageLibraryReferences=false + $(MSBuildThisFileDirectory)\projects + + + + + + true - - - - + + + + $(AdditionalProperties) + + + + $(AdditionalProperties) + + + $(AdditionalProperties) + + + $(AdditionalProperties) + + + + $(AdditionalProperties) + + + + $(AdditionalProperties) + + + + $(AdditionalProperties) + + + + $(AdditionalProperties) + + + diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.builds b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.builds index 0caa7975..aa4bfd5f 100644 --- a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.builds +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.builds @@ -3,7 +3,7 @@ - + diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj index 0b6ea180..a5bfa8e3 100644 --- a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj @@ -6,12 +6,20 @@ $(ProductVersion) + - + + NuGetRuntimeIdentifier=$(PackageTargetRuntime) + + + + + + build - - build + + tools/CoreRuntime diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/dir.props b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/dir.props index 4fb21706..dfa0c828 100644 --- a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/dir.props +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/dir.props @@ -1,11 +1,7 @@ - false + $(MSBuildThisFileDirectory)\uwpcoreruntimesdkRIDs.props - - false - false - \ No newline at end of file diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/Microsoft.Net.UWPCoreRuntimeSdk.props b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/build/Microsoft.Net.UWPCoreRuntimeSdk.props similarity index 100% rename from src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/Microsoft.Net.UWPCoreRuntimeSdk.props rename to src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/build/Microsoft.Net.UWPCoreRuntimeSdk.props diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/Microsoft.Net.UWPCoreRuntimeSdk.targets b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/build/Microsoft.Net.UWPCoreRuntimeSdk.targets similarity index 100% rename from src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/Microsoft.Net.UWPCoreRuntimeSdk.targets rename to src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/build/Microsoft.Net.UWPCoreRuntimeSdk.targets diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/tools/CoreRuntime/Microsoft.Net.CoreRuntime.settings.targets b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/tools/CoreRuntime/Microsoft.Net.CoreRuntime.settings.targets new file mode 100644 index 00000000..e69de29b diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/tools/CoreRuntime/Microsoft.Net.CoreRuntime.targets b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/tools/CoreRuntime/Microsoft.Net.CoreRuntime.targets new file mode 100644 index 00000000..e69de29b diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.builds b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.builds new file mode 100644 index 00000000..f0350d3e --- /dev/null +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.builds @@ -0,0 +1,14 @@ + + + + false + + + + + + + + + + diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.depproj b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.depproj new file mode 100644 index 00000000..e0e76e35 --- /dev/null +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.depproj @@ -0,0 +1,45 @@ + + + + + + unused + + unused + UAP,Version=v10.1 + uap10.1 + uap10.1 + false + true + $(IntermediateOutputPath)$(NuGetRuntimeIdentifier) + $(IntermediateOutputPath) + + + + + + + + + + + + + tools/CoreRuntime + + + tools/AppLocal + + + tools/Appx + + + + + + + + + + diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/uwpcoreruntimesdkRIDs.props b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/uwpcoreruntimesdkRIDs.props new file mode 100644 index 00000000..bff38bb2 --- /dev/null +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/uwpcoreruntimesdkRIDs.props @@ -0,0 +1,16 @@ + + + + win10-$(Platform) + + + + + x86 + + + + arm + + + From 997a98b01508506c16e3dd257e2f437ac2744051 Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Tue, 27 Jun 2017 18:09:40 -0500 Subject: [PATCH 547/625] Dummy commit to kickoff a build. --- Documentation/dummy.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/dummy.txt b/Documentation/dummy.txt index 9fcd8a12..0f64901f 100644 --- a/Documentation/dummy.txt +++ b/Documentation/dummy.txt @@ -1 +1 @@ -4/26/2017 06:04:00 PM +06/27/2017 06:00:00 PM From a254d3281536d8cda375fa6f2cbe23ecf90a954b Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Wed, 28 Jun 2017 11:30:38 -0700 Subject: [PATCH 548/625] Fix publish error introduced by recent UwpCoreRuntimeSdk work (#2752) * Modify publish/dir.props to wildcard select the CoreRuntime appx package to upload so it's not uploaded on distros where it has not been built. * Replace CoreRuntime appx package upload with original statement with an additional Exists check so we don't try to publish the file on distros where we haven't produced it --- publish/dir.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/publish/dir.props b/publish/dir.props index 454fb84d..0c2b287a 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -22,7 +22,7 @@ $(BinariesRelativePath) - + $(BinariesRelativePath) From 48b8c563a40d45c0d6a268baddcfef0bcb4144c9 Mon Sep 17 00:00:00 2001 From: Jose Perez Rodriguez Date: Wed, 28 Jun 2017 12:51:37 -0700 Subject: [PATCH 549/625] Moving clrcompression.dll to the nativeassets folder on the UWP metapackage --- .../src/Microsoft.NETCore.UniversalWindowsPlatform.depproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj index 6f4ea06a..3272d247 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj @@ -73,7 +73,7 @@ <_FilesToPackage> runtimes/$(NuGetRuntimeIdentifier)/lib/$(PackageTargetFramework) - runtimes/$(NuGetRuntimeIdentifier)/native + runtimes/$(NuGetRuntimeIdentifier)/nativeassets/$(PackageTargetFramework) From e9c1585b83a18621ff9846131dad346f8598c942 Mon Sep 17 00:00:00 2001 From: Matt Ellis Date: Wed, 28 Jun 2017 17:31:13 -0700 Subject: [PATCH 550/625] Update prerelease label to preview2 release/uwp6.0 is going to be using preview1 --- BranchInfo.props | 4 ++-- branchinfo.txt | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/BranchInfo.props b/BranchInfo.props index 1e032d39..3cc6abbc 100644 --- a/BranchInfo.props +++ b/BranchInfo.props @@ -4,9 +4,9 @@ 1 0 false - preview1 + preview2 $(PreReleaseLabel) - Preview 1 + Preview 2 master master dotnet diff --git a/branchinfo.txt b/branchinfo.txt index a00ff3bc..de5c0ce5 100644 --- a/branchinfo.txt +++ b/branchinfo.txt @@ -6,6 +6,6 @@ MINOR_VERSION=1 PATCH_VERSION=0 STABILIZE_PACKAGE_VERSION=false LOCK_HOST_VERSION=false -RELEASE_SUFFIX=preview1 +RELEASE_SUFFIX=preview2 CHANNEL=master BRANCH_NAME=master From 9e3ebd17d96c244c5c95ee288f6a46e02c5f7172 Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Thu, 29 Jun 2017 09:29:39 -0700 Subject: [PATCH 551/625] Update NETStandard.Library version (#2754) * Update NETStandard.Library version * Updating currentRef as well --- dependencies.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.props b/dependencies.props index 1477a23f..e221579d 100644 --- a/dependencies.props +++ b/dependencies.props @@ -11,7 +11,7 @@ a96e149ce150f6a15546032ca3966bf238c373fb a96e149ce150f6a15546032ca3966bf238c373fb - a96e149ce150f6a15546032ca3966bf238c373fb + 5f7c216b2b316b1f0105d3d6957f74e32b9213bf a96e149ce150f6a15546032ca3966bf238c373fb @@ -20,7 +20,7 @@ 2.1.0-preview1-25324-02 2.1.0-preview1-25413-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.1.0-preview1-25413-01 + 2.1.0-preview1-25429-01 1.4.1 4.5.0-preview1-25413-01 From 9b5dec7018979f0318e429e636dc7ffb29e017a1 Mon Sep 17 00:00:00 2001 From: Jose Perez Rodriguez Date: Thu, 29 Jun 2017 13:28:10 -0700 Subject: [PATCH 552/625] Update CoreFx to 4.5.0-preview1-25429-02 --- dependencies.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.props b/dependencies.props index e221579d..08815a56 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,14 +9,14 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - a96e149ce150f6a15546032ca3966bf238c373fb + 2992c9755579a66d9ab80f413b04287ff2f54cf1 a96e149ce150f6a15546032ca3966bf238c373fb 5f7c216b2b316b1f0105d3d6957f74e32b9213bf a96e149ce150f6a15546032ca3966bf238c373fb - 4.5.0-preview1-25413-02 + 4.5.0-preview1-25429-02 2.1.0-preview1-25324-02 2.1.0-preview1-25413-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) From 4801ddc3104f9955958f74af835d9b378b3e654f Mon Sep 17 00:00:00 2001 From: Jose Perez Rodriguez Date: Thu, 29 Jun 2017 15:07:50 -0700 Subject: [PATCH 553/625] Fixing RIDs of Microsoft.Net.UWPCoreRuntimeSdk --- .../uwpcoreruntimesdkRIDs.props | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/uwpcoreruntimesdkRIDs.props b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/uwpcoreruntimesdkRIDs.props index bff38bb2..c9b0f767 100644 --- a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/uwpcoreruntimesdkRIDs.props +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/uwpcoreruntimesdkRIDs.props @@ -5,11 +5,11 @@ - + x86 - - + + arm From a9d0df12ad7cd3f37d51809d3f77abe704e80f60 Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Thu, 29 Jun 2017 15:52:44 -0700 Subject: [PATCH 554/625] Update Microsoft.Net.Native.Compiler dependency and the property to store that dependency value (#2761) --- dependencies.props | 1 + .../src/Microsoft.NETCore.UniversalWindowsPlatform.depproj | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/dependencies.props b/dependencies.props index 08815a56..d2796ad4 100644 --- a/dependencies.props +++ b/dependencies.props @@ -20,6 +20,7 @@ 2.1.0-preview1-25324-02 2.1.0-preview1-25413-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) + 2.0.0-preview-25429-00 2.1.0-preview1-25429-01 1.4.1 4.5.0-preview1-25413-01 diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj index 3272d247..c4e57899 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj @@ -21,7 +21,7 @@ - 1.6.1 + $(MicrosoftNetNativeCompilerPackageVersion) $(CoreFxVersion) From cd4b109ac38a8558ee6e8799540ab280976664ac Mon Sep 17 00:00:00 2001 From: Steve Harter Date: Fri, 30 Jun 2017 13:41:46 -0500 Subject: [PATCH 555/625] Remove extra carriage return on trace output (#2742) --- src/corehost/common/pal.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/corehost/common/pal.h b/src/corehost/common/pal.h index 76fb18ea..0e8e995b 100644 --- a/src/corehost/common/pal.h +++ b/src/corehost/common/pal.h @@ -129,8 +129,8 @@ namespace pal pal::string_t to_lower(const pal::string_t& in); inline size_t strlen(const char_t* str) { return ::wcslen(str); } - inline void err_vprintf(const char_t* format, va_list vl) { ::vfwprintf(stderr, format, vl); ::fputws(_X("\r\n"), stderr); } - inline void out_vprintf(const char_t* format, va_list vl) { ::vfwprintf(stdout, format, vl); ::fputws(_X("\r\n"), stdout); } + inline void err_vprintf(const char_t* format, va_list vl) { ::vfwprintf(stderr, format, vl); ::fputwc(_X('\n'), stderr); } + inline void out_vprintf(const char_t* format, va_list vl) { ::vfwprintf(stdout, format, vl); ::fputwc(_X('\n'), stdout); } bool pal_utf8string(const pal::string_t& str, std::vector* out); bool utf8_palstring(const std::string& str, pal::string_t* out); From dbb04b5fe574d4228d683fdfb76e232b638c3502 Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Fri, 30 Jun 2017 15:20:47 -0500 Subject: [PATCH 556/625] Upgrade to BuildTools 2.0.0-prerelease-01726-03. (#2764) * Upgrade to BuildTools 2.0.0-prerelease-01726-03. * Update NuGet.ProjectModel to 4.3.0-preview2-4095. --- BuildToolsVersion.txt | 2 +- tools-local/tasks/core-setup.tasks.csproj | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/BuildToolsVersion.txt b/BuildToolsVersion.txt index 399aa788..60ae7593 100644 --- a/BuildToolsVersion.txt +++ b/BuildToolsVersion.txt @@ -1 +1 @@ -2.0.0-prerelease-01708-03 +2.0.0-prerelease-01726-03 diff --git a/tools-local/tasks/core-setup.tasks.csproj b/tools-local/tasks/core-setup.tasks.csproj index 1b3af43b..354bd672 100644 --- a/tools-local/tasks/core-setup.tasks.csproj +++ b/tools-local/tasks/core-setup.tasks.csproj @@ -26,7 +26,7 @@ - 3.5.0 + 4.3.0-preview2-4095 1.1.1 From d8b9e0a5c7c33d488be85343994f7d1b27da638c Mon Sep 17 00:00:00 2001 From: Davis Goodin Date: Fri, 30 Jun 2017 15:57:37 -0500 Subject: [PATCH 557/625] Push packages before finalize, for latest.version The publish target can fail (during download or push) which makes latest.version unreliable as a semaphore. Pushing before writing the file makes it reliable. --- publish/publish.proj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/publish/publish.proj b/publish/publish.proj index 0e0895c4..302b8bbf 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -11,7 +11,7 @@ + DependsOnTargets="PublishCoreHostPackagesToFeed;FinalizeBuildInAzure;UpdatePublishedVersions" /> From 4dea98666a48021e0c126e74ff9066b40c26f56a Mon Sep 17 00:00:00 2001 From: Ravi Eda Date: Fri, 30 Jun 2017 18:38:53 -0500 Subject: [PATCH 558/625] Fix typo. Set repository name as "core-setup". (#2767) * Upgrade to BuildTools 2.0.0-prerelease-01726-03. * Update NuGet.ProjectModel to 4.3.0-preview2-4095. * Fix typo. --- buildpipeline/security/pipeline.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildpipeline/security/pipeline.json b/buildpipeline/security/pipeline.json index 07a18faa..6f889275 100644 --- a/buildpipeline/security/pipeline.json +++ b/buildpipeline/security/pipeline.json @@ -1,5 +1,5 @@ { - "Repository": "corefx", + "Repository": "core-setup", "Definitions": { "Path": ".", "Type": "VSTS", From 73e57cebd9c71728d409407b6c4b7f7f9a56fa02 Mon Sep 17 00:00:00 2001 From: chcosta Date: Sat, 1 Jul 2017 23:26:56 -0700 Subject: [PATCH 559/625] Sign UWP artifacts (#2770) * The SignUwpFiles target wasn't attached anywhere. Move the files it wants to sign into the SignBinaries target. * Updated baseline.props * appx file is not produced during the build binaries step and is not getting baselined * Add signing of appx to "Sign Msi and cab" step * Remove appx file signing * Ignore casing for baseline comparison * Fix casing * Fix parens --- buildpipeline/Core-Setup-Windows-BT.json | 2 +- signing/baseline.props | 5 ++++ signing/sign.proj | 27 +++++++------------ .../tasks/ValidateBinInspectResults.cs | 3 +-- 4 files changed, 16 insertions(+), 21 deletions(-) diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index ae2c6a07..8ad5e941 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -222,7 +222,7 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Sign MSI and cab", + "displayName": "Sign MSI, cab, and Appx", "timeoutInMinutes": 0, "task": { "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", diff --git a/signing/baseline.props b/signing/baseline.props index a415cead..d3fa8590 100644 --- a/signing/baseline.props +++ b/signing/baseline.props @@ -5,5 +5,10 @@ + + \ No newline at end of file diff --git a/signing/sign.proj b/signing/sign.proj index 34652324..608a9a7a 100644 --- a/signing/sign.proj +++ b/signing/sign.proj @@ -49,6 +49,15 @@ $(CertificateId) + + + + $(CertificateId) + + + $(CertificateId) + +
@@ -90,22 +99,4 @@ - - - - - - - - $(CertificateId) - - - $(CertificateId) - - - $(CertificateId) - - - - diff --git a/tools-local/tasks/ValidateBinInspectResults.cs b/tools-local/tasks/ValidateBinInspectResults.cs index 4303fd72..f8d1dc51 100644 --- a/tools-local/tasks/ValidateBinInspectResults.cs +++ b/tools-local/tasks/ValidateBinInspectResults.cs @@ -52,8 +52,7 @@ namespace Microsoft.DotNet.Build.Tasks { foreach(var baselineFile in BaselineFiles) { - Regex ignoreRegEx = new Regex(baselineFile.ItemSpec); - IEnumerable baselineExcluded = errorRows.Where(f => ignoreRegEx.IsMatch(f.Descendants(s_NameElement).First().Value)); + IEnumerable baselineExcluded = errorRows.Where(f => Regex.IsMatch(f.Descendants(s_NameElement).First().Value, baselineFile.ItemSpec, RegexOptions.IgnoreCase)); foreach(var baselineExclude in baselineExcluded) { baselineExcludeElements.Add(baselineExclude); From 872a00dbecc1f5b89dc921dcd05e6cf482e1d30a Mon Sep 17 00:00:00 2001 From: chcosta Date: Wed, 5 Jul 2017 11:25:39 -0700 Subject: [PATCH 560/625] Sign Appx files (#2788) --- buildpipeline/Core-Setup-Windows-BT.json | 171 +++++++++++++---------- signing/sign.proj | 12 ++ 2 files changed, 113 insertions(+), 70 deletions(-) diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 8ad5e941..e69f1240 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -15,8 +15,8 @@ "scriptType": "inlineScript", "scriptName": "", "arguments": "-path $(PB_SourcesDirectory) -rootPath $(Build.SourcesDirectory)", - "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "workingFolder": "", + "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "failOnStandardError": "true" } }, @@ -222,7 +222,7 @@ "enabled": true, "continueOnError": false, "alwaysRun": false, - "displayName": "Sign MSI, cab, and Appx", + "displayName": "Sign MSI and cab files", "timeoutInMinutes": 0, "task": { "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", @@ -245,6 +245,33 @@ "createLogFile": "false" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign Appx files", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\signing\\sign.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignAppx $(PB_CommonMSBuildArgs) /v:detailed", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false" + } + }, { "enabled": true, "continueOnError": false, @@ -548,83 +575,88 @@ } ], "variables": { + "BUILD_FULL_PLATFORM_MANIFEST": { + "value": "true" + }, "BuildConfiguration": { "value": "Release", "allowOverride": true }, + "CertificateId": { + "value": "400" + }, + "CONNECTION_STRING": { + "value": "PassedViaPipeBuild" + }, "COREHOST_TRACE": { "value": "0", "allowOverride": true }, - "STORAGE_ACCOUNT": { - "value": "dotnetcli" - }, - "STORAGE_CONTAINER": { - "value": "dotnet" - }, - "CONNECTION_STRING": { - "value": "PassedViaPipeBuild" - }, - "PUBLISH_TO_AZURE_BLOB": { - "value": "true" - }, - "NUGET_FEED_URL": { - "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" - }, - "NUGET_API_KEY": { - "value": "PassedViaPipeBuild" - }, "GITHUB_PASSWORD": { "value": "PassedViaPipeBuild" }, - "BUILD_FULL_PLATFORM_MANIFEST": { - "value": "true" - }, - "PUBLISH_RID_AGNOSTIC_PACKAGES": { - "value": "true" - }, - "CertificateId": { - "value": "400" - }, - "PB_DistroRid": { - "value": "win-$(PB_TargetArchitecture)", - "allowOverride": true - }, "MsbuildSigningArguments": { "value": "/p:CertificateId=$(CertificateId) /v:detailed" }, - "TeamName": { - "value": "DotNetCore" + "NUGET_API_KEY": { + "value": "PassedViaPipeBuild" }, - "system.debug": { - "value": "false" - }, - "PB_PortableBuild": { - "value": "true", - "allowOverride": true + "NUGET_FEED_URL": { + "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/api/v2/package" }, "NUGET_SYMBOLS_FEED_URL": { "value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package" }, - "PB_SourcesDirectory": { - "value": "$(Build.SourcesDirectory)\\core-setup" + "OfficialBuildId": { + "value": "$(Build.BuildNumber)" }, - "PB_VsoRepoUrl": { - "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" + "PB_AzureAccessToken": { + "value": null, + "isSecret": true }, "PB_AzureAccountName": { "value": "sourcebuild" }, - "PB_AzureAccessToken": { + "PB_Branch": { + "value": "master", + "allowOverride": true + }, + "PB_BuildFullPlatformManifest": { + "value": "false" + }, + "PB_ChecksumAzureAccessToken": { "value": null, "isSecret": true }, "PB_ChecksumAzureAccountName": { "value": "dotnetclichecksums" }, - "PB_ChecksumAzureAccessToken": { - "value": null, - "isSecret": true + "PB_CleanAgent": { + "value": "true" + }, + "PB_CommonMSBuildArgs": { + "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild)" + }, + "PB_DistroRid": { + "value": "win-$(PB_TargetArchitecture)", + "allowOverride": true + }, + "PB_PortableBuild": { + "value": "true", + "allowOverride": true + }, + "PB_PublishRidAgnosticPackages": { + "value": "false" + }, + "PB_SignType": { + "value": "real" + }, + "PB_SourcesDirectory": { + "value": "$(Build.SourcesDirectory)\\core-setup" + }, + "PB_TargetArchitecture": { + "value": "x64", + "allowOverride": true }, "PB_VsoAccountName": { "value": "dn-bot" @@ -633,33 +665,29 @@ "value": null, "isSecret": true }, - "PB_Branch": { - "value": "master" + "PB_VsoRepoUrl": { + "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" + }, + "PUBLISH_RID_AGNOSTIC_PACKAGES": { + "value": "true" + }, + "PUBLISH_TO_AZURE_BLOB": { + "value": "true" }, "SourceVersion": { "value": "HEAD" }, - "PB_SignType": { - "value": "real" + "STORAGE_ACCOUNT": { + "value": "dotnetcli" }, - "PB_CommonMSBuildArgs": { - "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild)" + "STORAGE_CONTAINER": { + "value": "dotnet" }, - "OfficialBuildId": { - "value": "$(Build.BuildNumber)" - }, - "PB_TargetArchitecture": { - "value": "x64", - "allowOverride": true - }, - "PB_CleanAgent": { - "value": "true" - }, - "PB_PublishRidAgnosticPackages": { + "system.debug": { "value": "false" }, - "PB_BuildFullPlatformManifest": { - "value": "false" + "TeamName": { + "value": "DotNetCore" } }, "demands": [ @@ -693,7 +721,9 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "3" + "cleanOptions": "3", + "checkoutNestedSubmodules": "false", + "labelSourcesFormat": "$(build.buildNumber)" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -703,6 +733,7 @@ "clean": "false", "checkoutSubmodules": false }, + "processParameters": {}, "quality": "definition", "queue": { "id": 36, @@ -722,7 +753,7 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097676, + "revision": 418097748, "visibility": "private" } } \ No newline at end of file diff --git a/signing/sign.proj b/signing/sign.proj index 608a9a7a..4d7d4d54 100644 --- a/signing/sign.proj +++ b/signing/sign.proj @@ -75,6 +75,18 @@
+ + + + + + + + Appx + + + + From 743508b9d97564810dfe5e5bda11fcfe14a61669 Mon Sep 17 00:00:00 2001 From: Jose Perez Rodriguez Date: Wed, 5 Jul 2017 11:46:10 -0700 Subject: [PATCH 561/625] Update CoreFx, Standard to preview2-25505-02, preview1-25505-01, respectively (master) --- BuildToolsVersion.txt | 2 +- dependencies.props | 8 ++++---- dir.props | 7 +++++++ .../Microsoft.NET.CoreRuntime.depproj | 4 ++-- .../Microsoft.NETCore.UniversalWindowsPlatform.depproj | 6 +++--- .../src/Microsoft.Net.UWPCoreRuntimeSdk.depproj | 6 +++--- 6 files changed, 20 insertions(+), 13 deletions(-) diff --git a/BuildToolsVersion.txt b/BuildToolsVersion.txt index 60ae7593..a52d4701 100644 --- a/BuildToolsVersion.txt +++ b/BuildToolsVersion.txt @@ -1 +1 @@ -2.0.0-prerelease-01726-03 +2.0.0-prerelease-01803-02 \ No newline at end of file diff --git a/dependencies.props b/dependencies.props index d2796ad4..d97012ba 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,19 +9,19 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 2992c9755579a66d9ab80f413b04287ff2f54cf1 + c1ea043aefee0ebcc56c298358953eaf26ff985a a96e149ce150f6a15546032ca3966bf238c373fb - 5f7c216b2b316b1f0105d3d6957f74e32b9213bf + c1ea043aefee0ebcc56c298358953eaf26ff985a a96e149ce150f6a15546032ca3966bf238c373fb - 4.5.0-preview1-25429-02 + 4.5.0-preview2-25505-02 2.1.0-preview1-25324-02 2.1.0-preview1-25413-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25429-00 - 2.1.0-preview1-25429-01 + 2.1.0-preview1-25505-01 1.4.1 4.5.0-preview1-25413-01 diff --git a/dir.props b/dir.props index fe1df866..519ad0b1 100644 --- a/dir.props +++ b/dir.props @@ -2,6 +2,13 @@ + + + 10.0.15138 + UAP,Version=v$(UAPvNextVersion) + uap$(UAPvNextVersion) + + diff --git a/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj b/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj index e5192ee4..76592b66 100644 --- a/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj +++ b/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj @@ -3,8 +3,8 @@ false - UAP,Version=v10.1 - uap10.1 + $(UAPvNextTFMFull) + $(UAPvNextTFM) win10-$(Platform) $(MSBuildProjectDirectory)\AppxManifest.xml.template diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj index c4e57899..b69c2814 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj @@ -7,9 +7,9 @@ unused - UAP,Version=v10.1 - uap10.1 - uap10.0.15138 + $(UAPvNextTFMFull) + $(UAPvNextTFM) + $(UAPvNextTFM) Microsoft.Private.CoreFx.UAP true true diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.depproj b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.depproj index e0e76e35..f2863d54 100644 --- a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.depproj +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.depproj @@ -7,9 +7,9 @@ unused - UAP,Version=v10.1 - uap10.1 - uap10.1 + $(UAPvNextTFMFull) + $(UAPvNextTFM) + $(UAPvNextTFM) false true $(IntermediateOutputPath)$(NuGetRuntimeIdentifier) From de8486f9e64278b1f5926fed4284e90ab85ad677 Mon Sep 17 00:00:00 2001 From: Bill Wert Date: Wed, 5 Jul 2017 11:58:03 -0700 Subject: [PATCH 562/625] Fix install block (#2769) Installation block doesn't work due to a typo. Also update to 10.12 as minimum version --- .../shared-framework-distribution-template.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/pkg/packaging/osx/sharedframework/shared-framework-distribution-template.xml b/src/pkg/packaging/osx/sharedframework/shared-framework-distribution-template.xml index 899ef94d..e5273f0f 100644 --- a/src/pkg/packaging/osx/sharedframework/shared-framework-distribution-template.xml +++ b/src/pkg/packaging/osx/sharedframework/shared-framework-distribution-template.xml @@ -6,9 +6,9 @@ - - - + + + From e862a0c96166b503e0b3031c6fe2700ab311c49c Mon Sep 17 00:00:00 2001 From: John Beisner Date: Wed, 5 Jul 2017 12:29:58 -0700 Subject: [PATCH 563/625] Bringing dotnet/core-setup:master up-to-date. --- src/corehost/cli/fxr/fx_muxer.cpp | 62 +++++- src/corehost/common/pal.h | 1 - src/corehost/common/pal.unix.cpp | 22 -- src/corehost/common/pal.windows.cpp | 16 -- .../GivenThatICareAboutMultilevelSDKLookup.cs | 203 ++++++------------ 5 files changed, 115 insertions(+), 189 deletions(-) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index 2379c01e..d4777e72 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -628,6 +628,50 @@ pal::string_t resolve_sdk_version(pal::string_t sdk_path, bool parse_only_produc return retval; } +pal::string_t resolve_patch_sdk_version(pal::string_t global_cli_version, pal::string_t sdk_path, bool parse_only_production) +{ + fx_ver_t specified(-1, -1, -1); + if (!fx_ver_t::parse(global_cli_version, &specified, false)) + { + trace::error(_X("The specified SDK version '%s' could not be parsed"), global_cli_version.c_str()); + return pal::string_t(); + } + + trace::verbose(_X("--- Resolving SDK version from SDK dir [%s]"), sdk_path.c_str()); + + pal::string_t retval; + std::vector versions; + + pal::readdir(sdk_path, &versions); + fx_ver_t max_ver(-1, -1, -1); + for (const auto& version : versions) + { + trace::verbose(_X("Considering version... [%s]"), version.c_str()); + + fx_ver_t ver(-1, -1, -1); + if (fx_ver_t::parse(version, &ver, parse_only_production)) + { + if (ver.get_major() == specified.get_major() && ver.get_minor() == specified.get_minor()) + { + // Pick the greatest version that differs only in patch. + max_ver = std::max(ver, max_ver); + } + } + } + + pal::string_t max_ver_str = max_ver.as_str(); + append_path(&sdk_path, max_ver_str.c_str()); + + trace::verbose(_X("Checking if resolved SDK dir [%s] exists"), sdk_path.c_str()); + if (pal::directory_exists(sdk_path)) + { + trace::verbose(_X("Resolved SDK dir is [%s]"), sdk_path.c_str()); + retval = max_ver_str; + } + + return retval; +} + bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, pal::string_t* cli_sdk) { trace::verbose(_X("--- Resolving dotnet from working dir")); @@ -691,14 +735,6 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal std::vector global_dirs; bool multilevel_lookup = multilevel_lookup_enabled(); - if (multilevel_lookup) - { - if (pal::get_local_dotnet_dir(&local_dir)) - { - hive_dir.push_back(local_dir); - } - } - if (!own_dir.empty()) { hive_dir.push_back(own_dir); @@ -726,10 +762,10 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal trace::verbose(_X("Searching SDK directory in [%s]"), dir.c_str()); pal::string_t current_sdk_path = dir; append_path(¤t_sdk_path, _X("sdk")); + bool parse_only_production = false; // false -- implies both production and prerelease. if (global_cli_version.empty()) { - bool parse_only_production = false; // false -- implies both production and prerelease. pal::string_t new_cli_version = resolve_sdk_version(current_sdk_path, parse_only_production); if (higher_sdk_version(new_cli_version, &cli_version, parse_only_production)) { @@ -751,7 +787,11 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal } else { - trace::verbose(_X("CLI directory [%s] from global.json doesn't exist"), probing_sdk_path.c_str()); + pal::string_t new_cli_version = resolve_patch_sdk_version(global_cli_version, current_sdk_path, parse_only_production); + if (higher_sdk_version(new_cli_version, &cli_version, parse_only_production)) + { + sdk_path = current_sdk_path; + } } } } @@ -770,7 +810,7 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal } else { - trace::error(_X("The specified SDK version [%s] from global.json [%s] not found; install specified SDK version"), cli_version.c_str(), global.c_str()); + trace::error(_X("The specified SDK version [%s] from global.json [%s] not found; install specified SDK version"), global_cli_version.c_str(), global.c_str()); } return false; } diff --git a/src/corehost/common/pal.h b/src/corehost/common/pal.h index 0e8e995b..c1bbea71 100644 --- a/src/corehost/common/pal.h +++ b/src/corehost/common/pal.h @@ -210,7 +210,6 @@ namespace pal bool get_own_executable_path(string_t* recv); bool getenv(const char_t* name, string_t* recv); bool get_default_servicing_directory(string_t* recv); - bool get_local_dotnet_dir(string_t* recv); //On Linux, we determine global location by enumerating the location where dotnet is present on path, hence there could be multiple such locations //On Windows there will be only one global location bool get_global_dotnet_dirs(std::vector* recv); diff --git a/src/corehost/common/pal.unix.cpp b/src/corehost/common/pal.unix.cpp index 4c07ed5e..1d4ed27c 100644 --- a/src/corehost/common/pal.unix.cpp +++ b/src/corehost/common/pal.unix.cpp @@ -182,28 +182,6 @@ bool is_executable(const pal::string_t& file_path) return ((st.st_mode & S_IEXEC) != 0); } -bool pal::get_local_dotnet_dir(pal::string_t* recv) -{ - recv->clear(); - pal::string_t dir; - if (!pal::getenv("HOME", &dir)) - { - struct passwd* pw = getpwuid(getuid()); - if (pw && pw->pw_dir) - { - dir.assign(pw->pw_dir); - } - } - if (dir.empty()) - { - return false; - } - append_path(&dir, _X(".dotnet")); - append_path(&dir, get_arch()); - recv->assign(dir); - return true; -} - bool pal::get_global_dotnet_dirs(std::vector* recv) { // No support for global directories in Unix. diff --git a/src/corehost/common/pal.windows.cpp b/src/corehost/common/pal.windows.cpp index c7ee63e2..40afb2c3 100644 --- a/src/corehost/common/pal.windows.cpp +++ b/src/corehost/common/pal.windows.cpp @@ -208,22 +208,6 @@ bool pal::get_global_dotnet_dirs(std::vector* dirs) return true; } -bool pal::get_local_dotnet_dir(pal::string_t* dir) -{ - pal::string_t profile; - if (!get_file_path_from_env(_X("USERPROFILE"), &profile)) - { - // We should have the path in profile. - trace::verbose(_X("Failed to obtain user profile directory,[%s]"), profile.c_str()); - return false; - } - - dir->assign(profile); - append_path(dir, _X(".dotnet")); - append_path(dir, get_arch()); - return true; -} - // To determine the OS version, we are going to use RtlGetVersion API // since GetVersion call can be shimmed on Win8.1+. typedef NTSTATUS (WINAPI *pFuncRtlGetVersion)(RTL_OSVERSIONINFOW *); diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index 8eb200f3..31b79964 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -45,7 +45,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup string baseMultilevelDir = Path.Combine(artifactsDir, "dotnetMultilevelSDKLookup"); string multilevelDir = CalculateMultilevelDirectory(baseMultilevelDir); - // The three tested locations will be the cwd, the user folder and the exe dir. cwd is no longer supported. + // The three tested locations will be the cwd, the user folder and the exe dir. cwd and user are no longer supported. // Both exe and user dir will be placed inside the multilevel folder _currentWorkingDir = Path.Combine(multilevelDir, "cwd"); @@ -96,80 +96,9 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup _userSelectedMessage = $"Using dotnet SDK dll=[{_userSdkBaseDir}"; _exeSelectedMessage = $"Using dotnet SDK dll=[{_exeSdkBaseDir}"; } - + [Fact] - public void SdkLookup_Must_Verify_Folders_in_the_Correct_Order() - { - var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture - .Copy(); - - var dotnet = fixture.BuiltDotnet; - - // Add a dummy version in the exe dir - AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0-dummy"); - - // Specified CLI version: none - // User: empty - // Exe: 9999.0.0 - // Expected: 9999.0.0 from exe dir - dotnet.Exec("help") - .WorkingDirectory(_currentWorkingDir) - .WithUserProfile(_userDir) - .Environment(s_DefaultEnvironment) - .CaptureStdOut() - .CaptureStdErr() - .Execute() - .Should() - .Pass() - .And - .HaveStdErrContaining(_exeSelectedMessage); - - // Add a dummy version in the user dir - AddAvailableSdkVersions(_userSdkBaseDir, "9999.0.0-dummy"); - - // Specified CLI version: none - // CWD: empty - // User: 9999.0.0 - // Exe: 9999.0.0 - // Expected: 9999.0.0 from user dir - dotnet.Exec("help") - .WorkingDirectory(_currentWorkingDir) - .WithUserProfile(_userDir) - .Environment(s_DefaultEnvironment) - .CaptureStdOut() - .CaptureStdErr() - .Execute() - .Should() - .Pass() - .And - .HaveStdErrContaining(_userSelectedMessage); - - // Add a dummy version in the cwd - AddAvailableSdkVersions(_cwdSdkBaseDir, "9999.0.0-dummy"); - - // Specified CLI version: none - // CWD: 9999.0.0 --> should not be picked - // User: 9999.0.0 - // Exe: 9999.0.0 - // Expected: 9999.0.0 from User - dotnet.Exec("help") - .WorkingDirectory(_currentWorkingDir) - .WithUserProfile(_userDir) - .Environment(s_DefaultEnvironment) - .CaptureStdOut() - .CaptureStdErr() - .Execute() - .Should() - .Pass() - .And - .HaveStdErrContaining(_userSelectedMessage); - - // Remove dummy folders from user dir - DeleteAvailableSdkVersions(_userSdkBaseDir, "9999.0.0-dummy"); - } - - [Fact] - public void SdkLookup_Global_Json_Versioned_Behaviors() + public void SdkLookup_Global_Json_Patch_Rollup() { var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture .Copy(); @@ -180,14 +109,13 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup SetGlobalJsonVersion(); // Add some dummy versions - AddAvailableSdkVersions(_userSdkBaseDir, "9999.0.0", "9999.0.0-dummy"); - AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0-dummy"); + AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.1", "9999.0.0-dummy"); // Specified CLI version: 9999.0.0-global-dummy // CWD: empty - // User: 9999.0.0, 9999.0.0-dummy - // Exe: 9999.0.0-dummy - // Expected: no compatible version and specific error message + // User: empty + // Exe: 9999.0.1, 9999.0.0-dummy + // Expected: 9999.0.1 from exe dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) @@ -196,17 +124,57 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .CaptureStdErr() .Execute() .Should() - .Fail() + .Pass() .And - .HaveStdErrContaining("global.json] not found; install specified SDK version"); + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.1", _dotnetSdkDllMessageTerminator)); + + // Add specified CLI version + AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.4"); + + // Specified CLI version: 9999.0.0-global-dummy + // CWD: empty + // User: empty + // Exe: 9999.0.1, 9999.0.0-dummy, 9999.0.4 + // Expected: 9999.0.4 from exe dir + dotnet.Exec("help") + .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) + .Environment(s_DefaultEnvironment) + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Pass() + .And + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.4", _dotnetSdkDllMessageTerminator)); + + // Add specified CLI version + AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.6-dummy"); + + // Specified CLI version: 9999.0.0-global-dummy + // CWD: empty + // User: empty + // Exe: 9999.0.1, 9999.0.0-dummy, 9999.0.4, 9999.0.6-dummy + // Expected: 9999.0.6-dummy from exe dir + dotnet.Exec("help") + .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) + .Environment(s_DefaultEnvironment) + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Pass() + .And + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.6-dummy", _dotnetSdkDllMessageTerminator)); // Add specified CLI version AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0-global-dummy"); // Specified CLI version: 9999.0.0-global-dummy // CWD: empty - // User: 9999.0.0, 9999.0.0-dummy - // Exe: 9999.0.0-dummy, 9999.0.0-global-dummy + // User: empty + // Exe: 9999.0.1, 9999.0.0-dummy, 9999.0.4, 9999.0.6-dummy, 9999.0.0-global-dummy // Expected: 9999.0.0-global-dummy from exe dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) @@ -219,30 +187,6 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Pass() .And .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.0-global-dummy", _dotnetSdkDllMessageTerminator)); - - // Add more specified CLI versions - AddAvailableSdkVersions(_cwdSdkBaseDir, "9999.0.0-global-dummy"); - AddAvailableSdkVersions(_userSdkBaseDir, "9999.0.0-global-dummy"); - - // Specified CLI version: 9999.0.0-global-dummy - // CWD: 9999.0.0-global-dummy --> should not be picked - // User: 9999.0.0, 9999.0.0-dummy; 9999.0.0-global-dummy - // Exe: 9999.0.0-dummy, 9999.0.0-global-dummy - // Expected: 9999.0.0-global-dummy from user dir - dotnet.Exec("help") - .WorkingDirectory(_currentWorkingDir) - .WithUserProfile(_userDir) - .Environment(s_DefaultEnvironment) - .CaptureStdOut() - .CaptureStdErr() - .Execute() - .Should() - .Pass() - .And - .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.0-global-dummy", _dotnetSdkDllMessageTerminator)); - - // Remove dummy folders from user dir - DeleteAvailableSdkVersions(_userSdkBaseDir, "9999.0.0", "9999.0.0-dummy", "9999.0.0-global-dummy"); } [Fact] @@ -254,8 +198,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup var dotnet = fixture.BuiltDotnet; // Add dummy versions in the exe dir - AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0"); - AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.1-dummy"); + AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.0", "9999.0.1-dummy"); // Specified CLI version: none // CWD: empty @@ -274,12 +217,14 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .And .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.1-dummy", _dotnetSdkDllMessageTerminator)); - // Add a dummy version in the exe dir + // Add dummy versions + AddAvailableSdkVersions(_userSdkBaseDir, "9999.0.2"); + AddAvailableSdkVersions(_cwdSdkBaseDir, "10000.0.0"); AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.1"); // Specified CLI version: none - // CWD: empty - // User: empty + // CWD: 10000.0.0 --> should not be picked + // User: 9999.0.2 --> should not be picked // Exe: 9999.0.0, 9999.0.1-dummy, 9999.0.1 // Expected: 9999.0.1 from exe dir dotnet.Exec("help") @@ -294,33 +239,13 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .And .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.1", _dotnetSdkDllMessageTerminator)); - // Add dummy versions - AddAvailableSdkVersions(_userSdkBaseDir, "9999.0.1"); - AddAvailableSdkVersions(_cwdSdkBaseDir, "10000.0.0"); - - // Specified CLI version: none - // CWD: 10000.0.0 --> should not be picked - // User: 9999.0.1 - // Exe: 9999.0.0, 9999.0.1-dummy, 9999.0.1 - // Expected: 9999.0.1 from user dir - dotnet.Exec("help") - .WorkingDirectory(_currentWorkingDir) - .WithUserProfile(_userDir) - .Environment(s_DefaultEnvironment) - .CaptureStdOut() - .CaptureStdErr() - .Execute() - .Should() - .Pass() - .And - .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "9999.0.1", _dotnetSdkDllMessageTerminator)); // Add a dummy version in the exe dir AddAvailableSdkVersions(_exeSdkBaseDir, "10000.0.0-dummy"); // Specified CLI version: none // CWD: 10000.0.0 --> should not be picked - // User: 9999.0.1 + // User: 9999.0.2 --> should not be picked // Exe: 9999.0.0, 9999.0.1-dummy, 9999.0.1, 10000.0.0-dummy // Expected: 10000.0.0-dummy from exe dir dotnet.Exec("help") @@ -336,13 +261,13 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "10000.0.0-dummy", _dotnetSdkDllMessageTerminator)); // Add a dummy version in the user dir - AddAvailableSdkVersions(_userSdkBaseDir, "10000.0.0"); + AddAvailableSdkVersions(_exeSdkBaseDir, "10000.0.0"); // Specified CLI version: none // CWD: 10000.0.0 --> should not be picked - // User: 9999.0.1, 10000.0.0 - // Exe: 9999.0.0, 9999.0.1-dummy, 9999.0.1, 10000.0.0-dummy - // Expected: 10000.0.0 from user dir + // User: 9999.0.2 --> should not be picked + // Exe: 9999.0.0, 9999.0.1-dummy, 9999.0.1, 10000.0.0-dummy, 10000.0.0 + // Expected: 10000.0.0 from exe dir dotnet.Exec("help") .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) @@ -353,10 +278,10 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Should() .Pass() .And - .HaveStdErrContaining(Path.Combine(_userSelectedMessage, "10000.0.0", _dotnetSdkDllMessageTerminator)); + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "10000.0.0", _dotnetSdkDllMessageTerminator)); // Remove dummy folders from user dir - DeleteAvailableSdkVersions(_userSdkBaseDir, "9999.0.1", "10000.0.0"); + DeleteAvailableSdkVersions(_userSdkBaseDir, "9999.0.2"); } // This method adds a list of new sdk version folders in the specified From 970c0b298e1d09e0835f0a8e992fcb53acdeb71c Mon Sep 17 00:00:00 2001 From: John Beisner Date: Wed, 5 Jul 2017 13:53:57 -0700 Subject: [PATCH 564/625] Filter out version = -1.-1.-1 & tests Addresses: https://github.com/dotnet/core-setup/issues/1760 --- src/corehost/cli/fxr/fx_muxer.cpp | 5 +- .../GivenThatICareAboutMultilevelSDKLookup.cs | 55 +++++++++++++++++-- 2 files changed, 53 insertions(+), 7 deletions(-) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index d4777e72..6ca2ab29 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -796,7 +796,8 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal } } - if (!cli_version.empty()) + pal::string_t neg_version = _X("|-1.-1.-1|"); + if ((!cli_version.empty()) && (pal::strcasecmp(cli_version.c_str(), neg_version.c_str()) != 0)) { append_path(&sdk_path, cli_version.c_str()); cli_sdk->assign(sdk_path); @@ -810,7 +811,7 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal } else { - trace::error(_X("The specified SDK version [%s] from global.json [%s] not found; install specified SDK version"), global_cli_version.c_str(), global.c_str()); + trace::error(_X("A compatible SDK version for global.json version: [%s] from [%s] was not found"), global_cli_version.c_str(), global.c_str()); } return false; } diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index 31b79964..9d874482 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -96,7 +96,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup _userSelectedMessage = $"Using dotnet SDK dll=[{_userSdkBaseDir}"; _exeSelectedMessage = $"Using dotnet SDK dll=[{_exeSdkBaseDir}"; } - + [Fact] public void SdkLookup_Global_Json_Patch_Rollup() { @@ -189,6 +189,55 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.0-global-dummy", _dotnetSdkDllMessageTerminator)); } + [Fact] + public void SdkLookup_Negative_Version() + { + var fixture = PreviouslyBuiltAndRestoredPortableTestProjectFixture + .Copy(); + + var dotnet = fixture.BuiltDotnet; + + // Add a negative CLI version + AddAvailableSdkVersions(_exeSdkBaseDir, "-1.-1.-1"); + + // CWD: empty + // User: empty + // Exe: -1.-1.-1 + // Expected: no compatible version and a specific error message + dotnet.Exec("help") + .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) + .Environment(s_DefaultEnvironment) + .EnvironmentVariable("DOTNET_MULTILEVEL_LOOKUP", "0") + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Fail() + .And + .HaveStdErrContaining("It was not possible to find any SDK version"); + + // Add specified CLI version + AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.4"); + + // CWD: empty + // User: empty + // Exe: -1.-1.-1, 9999.0.4 + // Expected: 9999.0.4 from exe dir + dotnet.Exec("help") + .WorkingDirectory(_currentWorkingDir) + .WithUserProfile(_userDir) + .Environment(s_DefaultEnvironment) + .EnvironmentVariable("DOTNET_MULTILEVEL_LOOKUP", "0") + .CaptureStdOut() + .CaptureStdErr() + .Execute() + .Should() + .Pass() + .And + .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.4", _dotnetSdkDllMessageTerminator)); + } + [Fact] public void SdkLookup_Must_Pick_The_Highest_Semantic_Version() { @@ -239,7 +288,6 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .And .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "9999.0.1", _dotnetSdkDllMessageTerminator)); - // Add a dummy version in the exe dir AddAvailableSdkVersions(_exeSdkBaseDir, "10000.0.0-dummy"); @@ -279,9 +327,6 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .Pass() .And .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "10000.0.0", _dotnetSdkDllMessageTerminator)); - - // Remove dummy folders from user dir - DeleteAvailableSdkVersions(_userSdkBaseDir, "9999.0.2"); } // This method adds a list of new sdk version folders in the specified From b814c63a7834a58d892feef2376521856c5cd4d2 Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Wed, 5 Jul 2017 15:07:42 -0700 Subject: [PATCH 565/625] Deliver Microsoft.Net.CoreRuntime.targets in the UwpCoreRuntimeSdk package (#2772) * Update Microsoft.Net.CoreRuntime.targets to those shipped in latest VS * Generate Microsoft.Net.CoreRuntime.settings.targets from template during build * Successfully build and sign Microsoft.Net.CoreRuntimeTask.dll * Copy Microsoft.Cci to the output of Microsoft.Build.Net.CoreRuntimeTask.dll and include Microsoft.Cci.dll in identity package for Microsoft.Net.UWPCoreRuntimeSdk * Correctly generate .props/.targets files for each RID-specific package of Microsoft.Net.UWPCoreRuntimeSdk to provide information about the Appx packages. Change Microsoft.Net.CoreRuntime.targets and WireUpCoreRuntime appropriately. * Make Microsoft.Net.CoreRuntime.targets consume x86 CopyWin32Resources.exe from the native x86 runtime package * Rearrange source of Microsoft.Net.UWPCoreRuntimeSdk. Add Microsoft.Net.UWPCoreRuntimeSdk.props to point to Microsoft.Net.CoreRuntime targets files in NuGet package * Make fixes to complete VS integration * Address PR feedback. Change uap moniker to use property $(UAPvNextTFM) --- dir.props | 1 + signing/sign.proj | 3 + .../Microsoft.Net.UWPCoreRuntimeSdk.pkgproj | 22 +- ....Net.CoreRuntime.settings.targets.template | 17 + .../Microsoft.Net.CoreRuntime.targets | 277 ++++++++++++++ .../Microsoft.Net.UWPCoreRuntimeSdk.props | 6 + ...osoft.Net.UWPCoreRuntimeSdk.props.template | 6 + ...oft.Net.UWPCoreRuntimeSdk.targets.template | 11 + .../Microsoft.Net.UWPCoreRuntimeSdk.props | 5 - .../Microsoft.Net.UWPCoreRuntimeSdk.targets | 14 - ...Microsoft.Net.CoreRuntime.settings.targets | 0 .../Microsoft.Net.CoreRuntime.targets | 0 .../Microsoft.Net.UWPCoreRuntimeSdk.depproj | 56 +++ .../ErrorCodes.cs | 77 ++++ .../MergePriConfigTask.cs | 61 +++ .../MergeResWFilesTask.cs | 111 ++++++ ...Microsoft.Build.Net.CoreRuntimeTask.builds | 8 + ...Microsoft.Build.Net.CoreRuntimeTask.csproj | 98 +++++ .../ResourceHandlingTask.cs | 355 ++++++++++++++++++ .../Resources.Designer.cs | 252 +++++++++++++ .../Resources.resx | 183 +++++++++ .../WireUpCoreRuntime.cs | 301 +++++++++++++++ src/uwp/build.proj | 6 +- 23 files changed, 1848 insertions(+), 22 deletions(-) create mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.CoreRuntime.settings.targets.template create mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.CoreRuntime.targets create mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.UWPCoreRuntimeSdk.props create mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/rid-templates/Microsoft.Net.UWPCoreRuntimeSdk.props.template create mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/rid-templates/Microsoft.Net.UWPCoreRuntimeSdk.targets.template delete mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/build/Microsoft.Net.UWPCoreRuntimeSdk.props delete mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/build/Microsoft.Net.UWPCoreRuntimeSdk.targets delete mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/tools/CoreRuntime/Microsoft.Net.CoreRuntime.settings.targets delete mode 100644 src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/tools/CoreRuntime/Microsoft.Net.CoreRuntime.targets create mode 100644 src/uwp/Microsoft.Build.Net.CoreRuntimeTask/ErrorCodes.cs create mode 100644 src/uwp/Microsoft.Build.Net.CoreRuntimeTask/MergePriConfigTask.cs create mode 100644 src/uwp/Microsoft.Build.Net.CoreRuntimeTask/MergeResWFilesTask.cs create mode 100644 src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Microsoft.Build.Net.CoreRuntimeTask.builds create mode 100644 src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Microsoft.Build.Net.CoreRuntimeTask.csproj create mode 100644 src/uwp/Microsoft.Build.Net.CoreRuntimeTask/ResourceHandlingTask.cs create mode 100644 src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Resources.Designer.cs create mode 100644 src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Resources.resx create mode 100644 src/uwp/Microsoft.Build.Net.CoreRuntimeTask/WireUpCoreRuntime.cs diff --git a/dir.props b/dir.props index 519ad0b1..41dff1f6 100644 --- a/dir.props +++ b/dir.props @@ -236,6 +236,7 @@ $(BaseOutputRootPath)corehost\ $(BaseOutputRootPath)uwp\ + $(BaseOutputRootPath)Microsoft.Build.Net.CoreRuntimeTask $(BinDir)$(OSPlatformConfig)/ $(PackagesBasePath)packages/ diff --git a/signing/sign.proj b/signing/sign.proj index 4d7d4d54..aa2a5b02 100644 --- a/signing/sign.proj +++ b/signing/sign.proj @@ -36,6 +36,9 @@ $(CertificateId) + + $(CertificateId) + diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj index a5bfa8e3..54f00bb7 100644 --- a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/Microsoft.Net.UWPCoreRuntimeSdk.pkgproj @@ -4,6 +4,12 @@ $(ProductVersion) + true + + + false + false + true @@ -15,13 +21,25 @@ - + build - + tools/CoreRuntime + + + + + $(UAPvNextTFM) + + + + diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.CoreRuntime.settings.targets.template b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.CoreRuntime.settings.targets.template new file mode 100644 index 00000000..71ab4085 --- /dev/null +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.CoreRuntime.settings.targets.template @@ -0,0 +1,17 @@ + + + + + <_CoreRuntimeVersion>[AppxVersion] + + diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.CoreRuntime.targets b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.CoreRuntime.targets new file mode 100644 index 00000000..a0126ef7 --- /dev/null +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.CoreRuntime.targets @@ -0,0 +1,277 @@ + + + + + + + <_PlatformTargetForCoreRuntime Condition="'$(PlatformTarget)'!='AnyCPU'">$(PlatformTarget) + <_PlatformTargetForCoreRuntime Condition="'$(PlatformTarget)'=='AnyCPU'">x86 + + + + + + + <_TargetsCoreRuntime>true + + + + ComputeWireUpCoreRuntimeGates + + + + <_CoreRuntimeMSBuildTaskAssembly>$(MSBuildThisFileDirectory)\Microsoft.Build.Net.CoreRuntimeTask.dll + <_AppxMSBuildToolsPath Condition="'$(_AppxMSBuildToolsPath)' == ''">$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\AppxPackage\ + <_AppxMSBuildTaskAssembly Condition="'$(_AppxMSBuildTaskAssembly)' == ''">$(_AppxMSBuildToolsPath)Microsoft.Build.AppxPackage.dll + Microsoft.NET.CoreRuntime, Version=$(_CoreRuntimeVersion) + Microsoft.VCLibs, Version=14.0 + + + + + + + + + + + + + + None + + + $(TargetRuntime) + + + + + + + <_UnionMetadataWinMD Include="@(PackagingOutputs)" Condition="'%(Identity)' == '$(_TargetPlatformSdkDir)UnionMetadata\Windows.winmd'" /> + <_UnionMetadataWinMD Include="@(PackagingOutputs)" Condition="'%(Identity)' == '$(WindowsSDK_UnionMetadataPath)\Windows.winmd'" /> + + + + <_AppContainsManagedCodeInItsClosure>true + + + + + Satisfied + + + + + + + + $(OutputPath.TrimEnd('\'))\Core\ + + + + + + + <_WireUpCoreRuntimeExitCode>0 + <_WireUpCoreRuntimeTaskExecuted>false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_AppxManifestXmlFileName>AppxManifest.xml + + <_TransformedAppxManifestXmlFile>$(_WireUpCoreRuntimeOutputPath)$(_AppxManifestXmlFileName) + + $(CoreRuntimeSDKRootX86) + $(CoreRuntimeSDKRootX64) + $(CoreRuntimeSDKRootArm) + + + + + + + <_FullAppLibrariesUnfiltered Include="@(PackagingOutputs)" Condition="'%(Extension)' == '.dll'" /> + + + + + + + + + true + false + + + + + + + + + + + + + + + + + + <_CoreRuntimePackageId Condition="'%(ReferenceCopyLocalPaths.FileName)%(ReferenceCopyLocalPaths.Extension)' == 'mscorlib.dll' OR '%(ReferenceCopyLocalPaths.FileName)%(ReferenceCopyLocalPaths.Extension)' == 'mscorlib.ni.dll'">%(ReferenceCopyLocalPaths.NuGetPackageId) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_WireUpCoreRuntimeMsg>WireUpCoreRuntime has encountered an error + + + + + diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.UWPCoreRuntimeSdk.props b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.UWPCoreRuntimeSdk.props new file mode 100644 index 00000000..c5db11a9 --- /dev/null +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.UWPCoreRuntimeSdk.props @@ -0,0 +1,6 @@ + + + $(MSBuildThisFileDirectory)..\tools\CoreRuntime\Microsoft.Net.CoreRuntime.targets + $(MSBuildThisFileDirectory)..\tools\CoreRuntime\Microsoft.Net.CoreRuntime.settings.targets + + diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/rid-templates/Microsoft.Net.UWPCoreRuntimeSdk.props.template b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/rid-templates/Microsoft.Net.UWPCoreRuntimeSdk.props.template new file mode 100644 index 00000000..22b0d4fd --- /dev/null +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/rid-templates/Microsoft.Net.UWPCoreRuntimeSdk.props.template @@ -0,0 +1,6 @@ + + + $(MSBuildThisFileDirectory)..\tools + $(MSBuildThisFileDirectory)..\tools\CoreRuntime\copywin32resources.exe + + diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/rid-templates/Microsoft.Net.UWPCoreRuntimeSdk.targets.template b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/rid-templates/Microsoft.Net.UWPCoreRuntimeSdk.targets.template new file mode 100644 index 00000000..9d3137c5 --- /dev/null +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/rid-templates/Microsoft.Net.UWPCoreRuntimeSdk.targets.template @@ -0,0 +1,11 @@ + + + + [AppxBuildArch] + [AppxVersion] + 'CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US' + + + diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/build/Microsoft.Net.UWPCoreRuntimeSdk.props b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/build/Microsoft.Net.UWPCoreRuntimeSdk.props deleted file mode 100644 index 9f72ff24..00000000 --- a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/build/Microsoft.Net.UWPCoreRuntimeSdk.props +++ /dev/null @@ -1,5 +0,0 @@ - - - true - - \ No newline at end of file diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/build/Microsoft.Net.UWPCoreRuntimeSdk.targets b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/build/Microsoft.Net.UWPCoreRuntimeSdk.targets deleted file mode 100644 index 91f2ae8b..00000000 --- a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/build/Microsoft.Net.UWPCoreRuntimeSdk.targets +++ /dev/null @@ -1,14 +0,0 @@ - - - - CheckCoreRuntimeCompatibility; - $(BuildDependsOn); - - - - - - - \ No newline at end of file diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/tools/CoreRuntime/Microsoft.Net.CoreRuntime.settings.targets b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/tools/CoreRuntime/Microsoft.Net.CoreRuntime.settings.targets deleted file mode 100644 index e69de29b..00000000 diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/tools/CoreRuntime/Microsoft.Net.CoreRuntime.targets b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/files/tools/CoreRuntime/Microsoft.Net.CoreRuntime.targets deleted file mode 100644 index e69de29b..00000000 diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.depproj b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.depproj index f2863d54..5535fac1 100644 --- a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.depproj +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/src/Microsoft.Net.UWPCoreRuntimeSdk.depproj @@ -14,16 +14,72 @@ true $(IntermediateOutputPath)$(NuGetRuntimeIdentifier) $(IntermediateOutputPath) + $(MSBuildProjectDirectory)\..\contents\identity\Microsoft.Net.CoreRuntime.settings.targets.template + $(IntermediateOutputPath)Microsoft.Net.CoreRuntime.settings.targets + + Microsoft.NET.CoreRuntime.$(MajorVersion).$(MinorVersion) + $([System.Int32]::Parse($(BuildNumberMajor))) + $([System.Int32]::Parse($(BuildNumberMinor))) + + $(IntermediateOutputPath)runtime.$(NuGetRuntimeIdentifier).Microsoft.Net.UWPCoreRuntimeSdk.props + + + $(IntermediateOutputPath)runtime.$(NuGetRuntimeIdentifier).Microsoft.Net.UWPCoreRuntimeSdk.targets + + + + + + + + + + + + + + + + + + + + + tools/CoreRuntime + + + tools/CoreRuntime + + + + + build + + + build + tools/CoreRuntime diff --git a/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/ErrorCodes.cs b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/ErrorCodes.cs new file mode 100644 index 00000000..4bdea576 --- /dev/null +++ b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/ErrorCodes.cs @@ -0,0 +1,77 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +/// +/// Errors codes the application may return. +/// The codes are divided up into buckets at the Phone team's behest so that they can easily +/// triage errors. +/// +enum ErrorCodes +{ + Success = 0, + + // + // Bucket 1: Deployment / Usage + // Errors that the Marketplace team should address in their deployment + // + + // 1000+: tool usage errors + EmptyFileList = 1000, + IncorrectInputFolder = 1001, + IncorrectOutputFolder = 1002, + IncorrectConfigFile = 1003, + InvalidArgument = 1004, + CrossGenNotOnPath = 1005, + InvalidAppManifest = 1006, + IncorrectPlatformFolder = 1007, + IncorrectFrameworkFolder = 1008, + IncorrectMakePriPath = 1009, + IncorrectRcPath = 1009, + + // 1200+: Errors getting crossgen off the ground and running + UnknownCrossgenError = 1200, + CLRInitError = 1201, + InvalidCrossgenArguments = 1202, + AssemblyNotFound = 1203, + + // 1300+: Errors that occur while processing the app + InputFileReadError = 1300, + InputPackageFolderStructureTooComplex = 1301, + SecurityException = 1302, + UnauthorizedAccessException = 1303, + PathTooLongException = 1304, + NotSupported = 1305, + CoreRuntimeLinkageError = 1306, + InternalWireUpCoreRuntimeError = 1307, + + // 1400+: Errors from the OS that were unexpected (ie, not specifically caused by user input or config) + FailedCreatingJobObject = 1400, + + // + // Bucket 2: Invalid IL + // Expected errors that occur because the user's application was malformed + // + + CompilationFailedBadInputIL = 2001, + ExceededMaximumMethodSize = 2002, + + // + // Bucket 3: Transient Errors + // Errors most likely caused by machine state that could pass given a second chance + // + CrossgenTimeout = 3000, + InsufficientMemory = 3001, + InsufficientDiskSpace = 3003, + SharingViolation = 3004, + + // + // Bucket 4: Unexpected Errors + // Errors that most likely indicate a bug in the runtime and need investigation by the CLR team + // + CorEExecutionEngine = 4000, + CorESecurity = 4001, + CldbEInternalError = 4002, + AccessViolation = 4004, + AppCompileInternalFailure = 4005 + +} diff --git a/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/MergePriConfigTask.cs b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/MergePriConfigTask.cs new file mode 100644 index 00000000..f7afa0ce --- /dev/null +++ b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/MergePriConfigTask.cs @@ -0,0 +1,61 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System; +using System.Collections.Generic; +using System.Linq; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using System.IO; +using System.Xml.Linq; + +namespace Microsoft.Build.Net.CoreRuntimeTask +{ + public sealed class MergePriConfigTask : Task + { + [Required] + public string AppPriConfig { get; set; } + + [Required] + public string CustomPriConfig { get; set; } + + [Required] + public string MergedPriConfig { get; set; } + + public override bool Execute() + { + return (0 == InternalExecute()); + } + + private int InternalExecute() + { + XElement appConfig = XElement.Load(AppPriConfig); + if (appConfig == null) + { + Log.LogErrorFromResources(Resources.Error_FailedToLoadResourceConfig, AppPriConfig); + return -1; + } + + XElement customConfig = XElement.Load(CustomPriConfig); + if (customConfig == null) + { + Log.LogError(Resources.Error_FailedToLoadResourceConfig, CustomPriConfig); + return -1; + } + + + IEnumerable customIndexRoot = customConfig.Descendants("index").Where(x => x.Descendants("indexer-config").Any(y => y.Attribute("type").Value == "RESW")).Select(x => x); + if (customIndexRoot.Count() > 0) + { + appConfig.Add(customIndexRoot); + appConfig.Save(MergedPriConfig); + return 0; + } + else + { + Log.LogError(Resources.Error_InvalidResourceConfig, CustomPriConfig); + return -1; + } + } + } +} diff --git a/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/MergeResWFilesTask.cs b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/MergeResWFilesTask.cs new file mode 100644 index 00000000..29afe10f --- /dev/null +++ b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/MergeResWFilesTask.cs @@ -0,0 +1,111 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +using System.IO; +using System.Xml; +using System.Xml.Linq; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; + +namespace Microsoft.Build.Net.CoreRuntimeTask +{ + public sealed class MergeResWFilesTask : Task + { + private List mergedResources = new List(); + + /// + /// The list of merged resource files + /// + [Output] + public ITaskItem[] MergedResources { get; set; } + + /// + /// OutputLocation is where the merged resw files are going to be stored. + /// The merged resw files are going to be overwriting the existing files + /// in OutputLocation + /// + [Required] + public string OutputLocation { get; set; } + /// + /// The *.resw files to merge for + /// + [Required] + public ITaskItem[] ResourceFiles { get; set; } + /// + /// Implementation of Microsoft.Build.Utilities.Task.Execute + /// + /// + public override bool Execute() + { + bool succeeded = (0 == InternalExecute()); + MergedResources = mergedResources.ToArray(); + return succeeded; + + } + + /// + /// The actual implementation of the Execute + /// + /// Returns 0 on success + private int InternalExecute() + { + + // Loop through the ResourceFiles in groups of ResourceIndexName + foreach (var resourceIndex in GetResourceIndexes()) + { + var resourceFiles = GetResourceFilesOfResourceIndex(resourceIndex); + var firstResourceFile = resourceFiles.FirstOrDefault(); + if (firstResourceFile != null) + { + XDocument doc = XDocument.Load(firstResourceFile.ItemSpec); + HashSet mergedResourceKeys = new HashSet(); + foreach (var key in doc.Descendants("data").Select(x => x.Attribute("name").Value)) + mergedResourceKeys.Add(key); + foreach (var resourceFile in resourceFiles.Skip(1)) + { + XDocument mergee = XDocument.Load(resourceFile.ItemSpec); + + foreach (var dataNode in mergee.Descendants("data")) + { + if (mergedResourceKeys.Add(dataNode.Attribute("name").Value)) + doc.Root.Add(dataNode); + } + + } + Directory.CreateDirectory(Path.GetFullPath(OutputLocation)); + var mergedFilePath = Path.Combine(Path.GetFullPath(OutputLocation), Path.GetFileName(firstResourceFile.ItemSpec)); + doc.Save(mergedFilePath); + TaskItem newItem = new TaskItem(firstResourceFile); + newItem.ItemSpec = mergedFilePath; + mergedResources.Add(newItem); + } + + } + return 0; + } + + /// + /// Returns the unique resource indexes from the list of resource files + /// + /// Unique list of resource + private IEnumerable GetResourceIndexes() + { + return ResourceFiles.Select(x => x.GetMetadata("ResourceIndexName")).Distinct(); + } + /// + /// Filters the resources according to the index + /// + /// Item metadata value (of ResourceIndex) to filter the ResourceFiles + /// Filtered list of ResourceFiles + private IEnumerable GetResourceFilesOfResourceIndex(string resourceIndex) + { + return ResourceFiles.Where(x => x.GetMetadata("ResourceIndexname").Equals(resourceIndex, StringComparison.OrdinalIgnoreCase)); + } + + } +} diff --git a/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Microsoft.Build.Net.CoreRuntimeTask.builds b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Microsoft.Build.Net.CoreRuntimeTask.builds new file mode 100644 index 00000000..c320fddb --- /dev/null +++ b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Microsoft.Build.Net.CoreRuntimeTask.builds @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Microsoft.Build.Net.CoreRuntimeTask.csproj b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Microsoft.Build.Net.CoreRuntimeTask.csproj new file mode 100644 index 00000000..1e2c7b54 --- /dev/null +++ b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Microsoft.Build.Net.CoreRuntimeTask.csproj @@ -0,0 +1,98 @@ + + + + + true + v4.6 + + + + {49082C55-62B7-4DEC-BC9E-3F57945AC37E} + Library + Properties + Microsoft.Build.Net.CoreRuntimeTask + Microsoft.Build.Net.CoreRuntimeTask + v4.6 + 512 + SAK + SAK + SAK + SAK + + + false + + $(MajorVersion).$(MinorVersion).$(PatchVersion).0 + false + Library + .NETFramework,Version=v4.6 + net46 + false + {49082C55-62B7-4DEC-BC9E-3F57945AC37E} + dnxcore50;portable-net45+win8+wpa81 + true + .NETStandard + obj + true + true + + + + + + + + + + + + + + + True + True + Resources.resx + + + + + + + + + + 4.0.0-rc4-24217-00 + + + 1.0.1 + + + + + + + + + + + + + + + ResXFileCodeGenerator + Resources.Designer.cs + + + + + + + true + + + + + + + + diff --git a/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/ResourceHandlingTask.cs b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/ResourceHandlingTask.cs new file mode 100644 index 00000000..0fe93bd6 --- /dev/null +++ b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/ResourceHandlingTask.cs @@ -0,0 +1,355 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System; +using System.Collections.Generic; +using System.Linq; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using System.IO; +using System.Xml.Linq; +using System.Collections; +using System.Resources; +using Microsoft.Cci; +using System.Runtime.Serialization; +using System.Runtime.Serialization.Formatters.Binary; + +namespace Microsoft.Build.Net.CoreRuntimeTask +{ + + public sealed class ResourceHandlingTask : Task + { + [Serializable()] + public sealed class PortableLibraryResourceStateInfo + { + public DateTime PLibTimeUtc; + public DateTime ResWTimeUtc; + public string ResWPath; + } + + [Serializable()] + public sealed class ResourceHandlingState + { + [NonSerialized] + private TaskLoggingHelper _logger; + public Dictionary PortableLibraryStatesLookup = new Dictionary(); + + public void SetLogger(TaskLoggingHelper logger) { _logger = logger; } + + public bool IsUpToDate(string assemblyPath, out string reswFilePath) + { + reswFilePath = null; + if (PortableLibraryStatesLookup == null) + { + PortableLibraryStatesLookup = new Dictionary(); + return false; + } + if (PortableLibraryStatesLookup.Count == 0) + { + return false; + } + + try + { + if (assemblyPath == null || !File.Exists(assemblyPath)) + { + return false; + } + PortableLibraryResourceStateInfo info; + if (!PortableLibraryStatesLookup.TryGetValue(assemblyPath, out info)) + { + return false; + } + FileInfo fiPlib = new FileInfo(assemblyPath); + if (!fiPlib.LastWriteTimeUtc.Equals(info.PLibTimeUtc)) + { + _logger.LogMessage(MessageImportance.Low, Resources.Message_CachedReswNotUpToDateAssemblyNewer, assemblyPath); + return false; + } + if (info.ResWPath == null || !File.Exists(info.ResWPath)) + { + _logger.LogMessage(MessageImportance.Low, Resources.Message_CachedReswNotExists, assemblyPath, info.ResWPath); + return false; + } + + FileInfo fiResW = new FileInfo(info.ResWPath); + if (!fiResW.LastWriteTimeUtc.Equals(info.ResWTimeUtc)) + { + _logger.LogMessage(MessageImportance.Low, Resources.Message_CachedReswNotUpToDate, info.ResWPath); + return false; + } + + _logger.LogMessage(MessageImportance.Low, Resources.Message_UsingCachedResw, info.ResWPath, assemblyPath); + reswFilePath = info.ResWPath; + return true; + } + catch (Exception e) + { + _logger.LogMessage(MessageImportance.Low, Resources.Error_UnspecifiedCheckUpToDate, assemblyPath, e.Message); + return false; + } + } + + public void Save(string assemblyPath, string reswPath, DateTime plibTimeUtc, DateTime reswTimeUtc) + { + try + { + PortableLibraryStatesLookup[assemblyPath] = new PortableLibraryResourceStateInfo() { PLibTimeUtc = plibTimeUtc, ResWTimeUtc = reswTimeUtc, ResWPath = reswPath}; + } + catch (Exception e) + { + _logger.LogMessage(MessageImportance.Low, Resources.Error_UnspecifiedSaveState, assemblyPath, e.Message); + } + } + + } + + [Required] + public ITaskItem[] AssemblyList { get; set; } + + [Required] + public string OutResWPath { get; set; } + + [Required] + public string StateFile { get; set; } + + public bool SkipFrameworkResources { get; set; } + + [Output] + public ITaskItem[] ReswFileList { get; set; } + + [Output] + public ITaskItem[] UnprocessedAssemblyList { get; set; } + + private MetadataReaderHost _host; + + private ResourceHandlingState _state = null; + + public override bool Execute() + { + ReswFileList = null; + UnprocessedAssemblyList = null; + + List unprocessedAssemblyList = new List(); + List reswList = new List(); + + _state = ReadStateFile(StateFile); + if (_state == null) + { + _state = new ResourceHandlingState(); + } + _state.SetLogger(Log); + + using (_host = new PeReader.DefaultHost()) + { + try + { + ITaskItem firstNonFrameworkAssembly = null; + foreach (ITaskItem assemblyFilePath in AssemblyList) + { + string reswPath = null; + bool containsResources = false; + if (!_state.IsUpToDate(assemblyFilePath.ItemSpec, out reswPath) || + !IsAtOutputFolder(reswPath) ) + { + reswPath = ExtractFrameworkAssemblyResW(assemblyFilePath.ItemSpec, out containsResources); + if (reswPath != null) + { + FileInfo fiAssembly = new FileInfo(assemblyFilePath.ItemSpec); + FileInfo fiResW = new FileInfo(reswPath); + _state.Save(assemblyFilePath.ItemSpec, reswPath, fiAssembly.LastWriteTimeUtc, fiResW.LastWriteTimeUtc); + } + } + + if (reswPath == null) + { + if (containsResources) + unprocessedAssemblyList.Add(assemblyFilePath); + + if (unprocessedAssemblyList.Count == 0) + firstNonFrameworkAssembly = assemblyFilePath; + } + else + { + TaskItem newTaskItem = new TaskItem(reswPath); + newTaskItem.SetMetadata("NeutralResourceLanguage","en-US"); + newTaskItem.SetMetadata("ResourceIndexName",Path.GetFileNameWithoutExtension(reswPath)); + reswList.Add(newTaskItem); + } + + } + + UnprocessedAssemblyList = unprocessedAssemblyList.ToArray(); + + if (!SkipFrameworkResources) + { + ReswFileList = reswList.ToArray(); + } + + // we make sure unprocessedAssemblyList has at least one item if ReswFileList is empty to avoid having _GeneratePrisForPortableLibraries + // repopulate the assembly list and reprocess them + if ((ReswFileList == null || ReswFileList.Length == 0) && + UnprocessedAssemblyList.Length == 0 && + firstNonFrameworkAssembly != null) + { + UnprocessedAssemblyList = new ITaskItem[1] { firstNonFrameworkAssembly }; + } + + WriteStateFile(StateFile, _state); + } + catch (Exception e) + { + Log.LogError(Resources.Error_ResourceExtractionFailed, e.Message); + return false; + } + } + + return true; + } + + private ResourceHandlingState ReadStateFile(string stateFile) + { + try + { + if (!String.IsNullOrEmpty(stateFile) && File.Exists(stateFile)) + { + using (FileStream fs = new FileStream(stateFile, FileMode.Open)) + { + BinaryFormatter formatter = new BinaryFormatter(); + object deserializedObject = formatter.Deserialize(fs); + ResourceHandlingState state = deserializedObject as ResourceHandlingState; + if (state == null && deserializedObject != null) + { + Log.LogMessage(MessageImportance.Normal, Resources.Message_UnspecifiedStateFileCorrupted, stateFile); + } + return state; + } + } + else + return null; + } + catch (Exception e) + { + Log.LogMessage(MessageImportance.Low, Resources.Message_UnspecifiedReadStateFile, e.Message); + return null; + } + } + + private bool IsAtOutputFolder(string path) + { + try + { + return (Path.GetDirectoryName(path).Equals(OutResWPath.TrimEnd(new char[] {Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar}), StringComparison.OrdinalIgnoreCase)); + } + catch + { + return false; + } + } + + private void WriteStateFile(string stateFile, ResourceHandlingState state) + { + try + { + if (stateFile != null && stateFile.Length > 0 ) + { + using (FileStream fs = new FileStream(stateFile, FileMode.Create)) + { + BinaryFormatter formatter = new BinaryFormatter(); + formatter.Serialize(fs, state); + } + } + + } + catch (Exception e) + { + Log.LogMessage(MessageImportance.Low, Resources.Message_UnspecifiedSaveStateFile, e.Message); + } + } + + private string ExtractFrameworkAssemblyResW(string assemblyFilePath, out bool containsResources) + { + string assemblyName; + using (Stream stream = ExtractFromAssembly(assemblyFilePath, out assemblyName, out containsResources)) + { + if (stream == null) + return null; + + string reswFilePath = OutResWPath + Path.AltDirectorySeparatorChar + "FxResources." + assemblyName + ".SR.resw"; + WriteResW(stream, reswFilePath); + return reswFilePath; + } + } + + private void WriteResW(Stream stream, string reswFilePath) + { + using (ResourceReader rr = new ResourceReader(stream)) + { + using (ResXResourceWriter rw = new ResXResourceWriter(reswFilePath)) + { + foreach (DictionaryEntry dict in rr) + { + rw.AddResource((string)dict.Key, (string)dict.Value); + } + } + } + } + + private Stream ExtractFromAssembly(string assemblyFilePath, out string assemblyName, out bool containsResources) + { + assemblyName = null; + containsResources = true; + + IAssembly assembly = _host.LoadUnitFrom(assemblyFilePath) as IAssembly; + if (assembly == null || assembly == Dummy.Assembly) + { + containsResources = false; + return null; + } + + if (assembly.Resources == null) + { + containsResources = false; + return null; + } + + assemblyName = assembly.Name.Value; + string resourcesName = "FxResources." + assemblyName + ".SR.resources"; + int resourceCount = 0; + + foreach (IResourceReference resourceReference in assembly.Resources) + { + resourceCount++; + if (!resourceReference.Resource.IsInExternalFile && resourceReference.Name.Value.Equals(resourcesName, StringComparison.OrdinalIgnoreCase)) + { + const int BUFFERSIZE = 4096; + byte[] buffer = new byte[BUFFERSIZE]; + int index = 0; + + MemoryStream ms = new MemoryStream(BUFFERSIZE); + + foreach (byte b in resourceReference.Resource.Data) + { + if (index == BUFFERSIZE) + { + ms.Write(buffer, 0, BUFFERSIZE); + index = 0; + } + buffer[index++] = b; + } + ms.Write(buffer, 0, index); + ms.Seek(0, SeekOrigin.Begin); + return ms; + } + } + + if (resourceCount == 0) // no resources + { + containsResources = false; + } + + return null; + } + + } +} diff --git a/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Resources.Designer.cs b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Resources.Designer.cs new file mode 100644 index 00000000..0a35eabd --- /dev/null +++ b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Resources.Designer.cs @@ -0,0 +1,252 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace Microsoft.Build.Net.CoreRuntimeTask { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Microsoft.Build.Net.CoreRuntimeTask.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Looks up a localized string similar to CopyWin32Resources failed with exit code {0}. + /// + internal static string Error_CopyWin32ResourcesFailed { + get { + return ResourceManager.GetString("Error_CopyWin32ResourcesFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Applications with custom entry point executables are not supported. Check Executable attribute of the Application element in the package manifest. + /// + internal static string Error_CustomEntryPointNotSupported { + get { + return ResourceManager.GetString("Error_CustomEntryPointNotSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Failed to load resource config file "{0}". + /// + internal static string Error_FailedToLoadResourceConfig { + get { + return ResourceManager.GetString("Error_FailedToLoadResourceConfig", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to WireUpCoreRuntime encountered an error: {0}. + /// + internal static string Error_InternalWireUpCoreRuntimeError { + get { + return ResourceManager.GetString("Error_InternalWireUpCoreRuntimeError", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Invalid resource config file '{0}'. + /// + internal static string Error_InvalidResourceConfig { + get { + return ResourceManager.GetString("Error_InvalidResourceConfig", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to IO exception while copying file {0}. {1}. + /// + internal static string Error_IOExceptionCopyFile { + get { + return ResourceManager.GetString("Error_IOExceptionCopyFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to IO exception while creating output folder. {0}. + /// + internal static string Error_IOExceptionOutputFolder { + get { + return ResourceManager.GetString("Error_IOExceptionOutputFolder", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to PathTooLongException while copying file {0}. + /// + internal static string Error_PathTooLongExceptionCopyFile { + get { + return ResourceManager.GetString("Error_PathTooLongExceptionCopyFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to PathTooLongException while creating output folder. + /// + internal static string Error_PathTooLongExceptionOutputFolder { + get { + return ResourceManager.GetString("Error_PathTooLongExceptionOutputFolder", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Framework resource extraction failed. {0}. + /// + internal static string Error_ResourceExtractionFailed { + get { + return ResourceManager.GetString("Error_ResourceExtractionFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Encountered an error while checking if the resource cache of "{0}" is up to date: {1}. + /// + internal static string Error_UnspecifiedCheckUpToDate { + get { + return ResourceManager.GetString("Error_UnspecifiedCheckUpToDate", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Exception while creating entry point shim for hybrid apps: {0}. + /// + internal static string Error_UnspecifiedCreatingUWPShimForHybrid { + get { + return ResourceManager.GetString("Error_UnspecifiedCreatingUWPShimForHybrid", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Encountered an error while saving the resource state for "{0}": {1}. + /// + internal static string Error_UnspecifiedSaveState { + get { + return ResourceManager.GetString("Error_UnspecifiedSaveState", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cached ResW of assembly "{0}" doesn't exist: "{1}". + /// + internal static string Message_CachedReswNotExists { + get { + return ResourceManager.GetString("Message_CachedReswNotExists", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cached ResW "{0}" is not up to date. + /// + internal static string Message_CachedReswNotUpToDate { + get { + return ResourceManager.GetString("Message_CachedReswNotUpToDate", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cached ResW of assembly "{0}" is not up to date, assembly itself is newer. + /// + internal static string Message_CachedReswNotUpToDateAssemblyNewer { + get { + return ResourceManager.GetString("Message_CachedReswNotUpToDateAssemblyNewer", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Processing file: "{0}". + /// + internal static string Message_ProcessingFile { + get { + return ResourceManager.GetString("Message_ProcessingFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to An error occured while reading the state file: {0}. + /// + internal static string Message_UnspecifiedReadStateFile { + get { + return ResourceManager.GetString("Message_UnspecifiedReadStateFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to An error occured while writing the state file: {0}. + /// + internal static string Message_UnspecifiedSaveStateFile { + get { + return ResourceManager.GetString("Message_UnspecifiedSaveStateFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Encountered an error while reading the state file "{0}". The state file may be corrupt. Disregarding the state file.. + /// + internal static string Message_UnspecifiedStateFileCorrupted { + get { + return ResourceManager.GetString("Message_UnspecifiedStateFileCorrupted", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Using cached ResW "{0}" for "{1}". + /// + internal static string Message_UsingCachedResw { + get { + return ResourceManager.GetString("Message_UsingCachedResw", resourceCulture); + } + } + } +} diff --git a/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Resources.resx b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Resources.resx new file mode 100644 index 00000000..8e865643 --- /dev/null +++ b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Resources.resx @@ -0,0 +1,183 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + CopyWin32Resources failed with exit code {0} + + + Applications with custom entry point executables are not supported. Check Executable attribute of the Application element in the package manifest + + + Failed to load resource config file "{0}" + + + WireUpCoreRuntime encountered an error: {0} + + + Invalid resource config file '{0}' + + + IO exception while copying file {0}. {1} + + + IO exception while creating output folder. {0} + + + PathTooLongException while copying file {0} + + + PathTooLongException while creating output folder + + + Framework resource extraction failed. {0} + + + Encountered an error while checking if the resource cache of "{0}" is up to date: {1} + + + Exception while creating entry point shim for hybrid apps: {0} + + + Encountered an error while saving the resource state for "{0}": {1} + + + Cached ResW of assembly "{0}" doesn't exist: "{1}" + + + Cached ResW "{0}" is not up to date + + + Cached ResW of assembly "{0}" is not up to date, assembly itself is newer + + + Processing file: "{0}" + + + An error occured while reading the state file: {0} + + + An error occured while writing the state file: {0} + + + Encountered an error while reading the state file "{0}". The state file may be corrupt. Disregarding the state file. + + + Using cached ResW "{0}" for "{1}" + + \ No newline at end of file diff --git a/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/WireUpCoreRuntime.cs b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/WireUpCoreRuntime.cs new file mode 100644 index 00000000..6897a496 --- /dev/null +++ b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/WireUpCoreRuntime.cs @@ -0,0 +1,301 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +namespace Microsoft.Build.Net.CoreRuntimeTask +{ + using System; + using System.Collections.Generic; + using System.ComponentModel; + using System.Diagnostics; + using System.IO; + using System.Linq; + using System.Reflection; + using System.Runtime.Serialization; + using System.Text; + using System.Xml; + using System.Xml.Linq; + using System.Xml.Serialization; + using Microsoft.Build.Framework; + using Microsoft.Build.Utilities; + using System.Runtime.InteropServices; + + /// Task for wiring up CoreRuntime to appx payload + public class WireUpCoreRuntime : Task + { + private static int timeoutDuration = 360000; // 6 minutes + + // HRESULT exit codes from Crossgen that indicate the input file is not a managed assembly + private const int ErrorNotAnAssembly = -2146230517; // 0x80131f0b + + private const string PackageDependencyElementName = "PackageDependency"; + + private const string AppEntryPointDir = "entrypoint"; + + private const string UWPShimEXE = "UWPShim.exe"; + + /// Gets or sets the path to the input AppxManifest file + [Required] + public string AppxManifest { get; set; } + + /// Gets or sets the appx package payload that will be processed + [Required] + public ITaskItem[] AppxPackagePayload { get; set; } + + /// Gets or sets the output directory that will contain the output appx manifest and any output executables + [Required] + public string OutputPath { get; set; } + + /// Gets ot sets the target runtime of the application + [Required] + public string TargetRuntime { get; set; } + + /// Gets or sets the target architecture + [Required] + public string TargetArch { get; set; } + + /// Gets or sets the framework packages to be added as PackageDependencies + [Required] + public ITaskItem[] FrameworkPackages { get; set; } + + /// Gets or sets the CoreRuntime Extension SDK location. This is used to locate the UWPShim.exe + [Required] + public string CoreRuntimeSDKLocation { get; set; } + + /// Location of CopyWin32Resources.exe + [Required] + public string CopyWin32ResourcesLocation { get; set; } + + /// Gets ot sets the timeout duration in which the call to CopyWin32Resources is expected to return + public int TimeoutDuration + { + get + { + return timeoutDuration; + } + set + { + timeoutDuration = value; + } + } + + /// Output parameter indicating the error code of executing this task + [Output] + public int ErrorCode { get; private set; } + + /// + /// Output parameter indicating whether the CoreRuntime framework package needs to be deployed before + /// deploying the application + /// + [Output] + public bool FrameworkPackagesNeedsToBeDeployed { get; private set; } + + /// Gets or sets the appx package payload that has been processed + [Output] + public ITaskItem[] TransformedAppxPackagePayload { get; set; } + + + /// Execute the task. + /// True if succeeeds + public override bool Execute() + { + ErrorCode = InternalExecute(); + return (ErrorCode == (int)ErrorCodes.Success); + } + + /// The internal implementation of the execute task + /// ErrorCodes.Success if succeeds, one of the other ErrorCodes otherwise + internal int InternalExecute() + { + bool isTargetRuntimeManaged = TargetRuntime.Equals("Managed", StringComparison.OrdinalIgnoreCase); + List currentAppxPackagePayload = AppxPackagePayload.ToList(); + string transformedAppxManifest = Path.Combine(OutputPath, "AppxManifest.xml"); + + // Perform setup: + // - Create output directory if it does not already exist + // - Delete existing AppxManifest.xml if it exists + try + { + Directory.CreateDirectory(OutputPath); + File.Delete(transformedAppxManifest); + } + catch (PathTooLongException) + { + Log.LogError(Resources.Error_PathTooLongExceptionOutputFolder); + return (int)ErrorCodes.PathTooLongException; + } + catch (IOException ioException) + { + Log.LogError(Resources.Error_IOExceptionOutputFolder, ioException.Message); + return (int)ErrorCodes.InputFileReadError; + } + catch (Exception e) + { + Log.LogError(Resources.Error_InternalWireUpCoreRuntimeError, e.Message); + return (int)ErrorCodes.InternalWireUpCoreRuntimeError; + } + + // Apply transformations required to hook up the Core Runtime + // 1. For Managed apps, move to [AppEntryPointDir]\ and copy UWPShim.exe to package root as + // 2. Replace all ClrHost.dll with either UWPShim.exe (for hybrid apps) or (for managed apps) + // 3. If #2 above is performed, inject UWPShim.exe into the output directory for unmanaged apps + // which contain managed winmd and for managed background tasks (which do not contain entrypoint exe) + // 4. If #1 or #2 above is performed, add a package dependency to CoreRuntime framework package. + + using (StreamReader sr = new StreamReader(AppxManifest)) + { + XDocument doc = XDocument.Load(sr, LoadOptions.None); + XNamespace ns = @"http://schemas.microsoft.com/appx/manifest/foundation/windows10"; + string inprocServer = UWPShimEXE; + var uwpShimLocation = Path.Combine(new [] { + CoreRuntimeSDKLocation, + "AppLocal", + UWPShimEXE} ); + + IEnumerable entryPointExecutables = Enumerable.Empty(); + if (isTargetRuntimeManaged) + { + // 1. For Managed apps, move to [AppEntryPointDir]\ and copy UWPShim.exe to package root as + entryPointExecutables = doc.Descendants(ns + "Applications").Descendants(ns + "Application").Where(x => x.Attribute("Executable") != null).Select(x => x.Attribute("Executable")); + + if (entryPointExecutables.Any()) + { + // Set the inprocServer to the . From this point on that's our UWPShim.exe + // and since we will be copying uwpShim possibly several times with different names, yet they are all + // uwpshim.exe, it's OK to grab the first one and use it as inprocserver entry + inprocServer = entryPointExecutables.First().Value; + if (entryPointExecutables.Any(x => x.Value.Contains(Path.DirectorySeparatorChar))) + { + Log.LogError(Resources.Error_CustomEntryPointNotSupported); + return (int)ErrorCodes.NotSupported; + } + + foreach (var entryPointExecutable in entryPointExecutables) + { + // Do not copy from original location, just modify TargetPath to [AppEntryPointDir]\ + ITaskItem currentManagedEntryPointExecutableTaskItem = AppxPackagePayload.Where(x => x.GetMetadata("TargetPath") == entryPointExecutable.Value).Single(); + currentManagedEntryPointExecutableTaskItem.SetMetadata("TargetPath", AppEntryPointDir + "\\" + entryPointExecutable.Value); + + // Copy UWPShim + var entryPointExecutableShim = Path.Combine(OutputPath, entryPointExecutable.Value); + File.Copy(uwpShimLocation, entryPointExecutableShim, true); + var copyResourcesReturncode = CopyWin32Resources(currentManagedEntryPointExecutableTaskItem.ItemSpec, entryPointExecutableShim); + if (copyResourcesReturncode != 0) + { + Log.LogError(Resources.Error_CopyWin32ResourcesFailed, copyResourcesReturncode); + return (int)ErrorCodes.CoreRuntimeLinkageError; + } + + // Add UWPShim to appx package payload + ITaskItem entryPointExecutableShimTaskItem = new TaskItem(entryPointExecutableShim); + entryPointExecutableShimTaskItem.SetMetadata("TargetPath", entryPointExecutable.Value); + currentManagedEntryPointExecutableTaskItem.CopyMetadataTo(entryPointExecutableShimTaskItem); + currentAppxPackagePayload.Add(entryPointExecutableShimTaskItem); + } + } + } + + // + // 2. Replace all ClrHost.dll with either UWPShim.exe (for hybrid apps) or (for managed apps) + var inprocServerNodes = doc.DescendantNodes().OfType() + .Where(x => x.Value.Equals("ClrHost.dll", StringComparison.OrdinalIgnoreCase)) + .Select(x => x); + + bool bHasManagedWinMD = false; + foreach (var node in inprocServerNodes) + { + node.Value = inprocServer; + bHasManagedWinMD = true; + } + + // + // 3. If #2 above is performed, inject UWPShim.exe into the output directory for unmanaged apps + // which contain managed winmd and for managed background tasks (which do not contain entrypoint exe) + if (bHasManagedWinMD && inprocServer.Equals(UWPShimEXE)) + { + try + { + // Copy UWPShim + string uwpDestination = Path.Combine(OutputPath, inprocServer); + File.Copy(uwpShimLocation, uwpDestination, true); + + // Add UWPShim to appx package payload + TaskItem uwpShimTaskItem = new TaskItem(uwpDestination); + uwpShimTaskItem.SetMetadata("TargetPath", inprocServer); + currentAppxPackagePayload.Add(uwpShimTaskItem); + } + catch (Exception exception) + { + Log.LogError(Resources.Error_UnspecifiedCreatingUWPShimForHybrid, exception.Message); + return (int)ErrorCodes.CoreRuntimeLinkageError; + } + + } + + // + // 4. If #1 or #2 above is performed, add a package dependency to CoreRuntime framework package. + if (isTargetRuntimeManaged || bHasManagedWinMD) + { + foreach (var FrameworkPackage in FrameworkPackages) + { + string FrameworkPackageName = FrameworkPackage.GetMetadata("Name"); + string FrameworkPackageMinVersion = FrameworkPackage.GetMetadata("Version"); + string FrameworkPackagePublisher = FrameworkPackage.GetMetadata("Publisher"); + if (!doc.Descendants(ns + "PackageDependency").Any(x => x.Attributes("Name").SingleOrDefault().Value == FrameworkPackageName)) + { + // There aren't any such PackageDependency. Add it now. + XElement packageDependency = new XElement( + ns + "PackageDependency", + new XAttribute("Name", FrameworkPackageName), + new XAttribute("MinVersion", FrameworkPackageMinVersion), + new XAttribute("Publisher", FrameworkPackagePublisher) + ); + doc.Descendants(ns + "Dependencies").SingleOrDefault().Add(packageDependency); + FrameworkPackagesNeedsToBeDeployed = true; + + } + } + } + + doc.Save(transformedAppxManifest); + } + + TransformedAppxPackagePayload = currentAppxPackagePayload.ToArray(); + return (int)ErrorCodes.Success; + + } + + int CopyWin32Resources(string lpPEFileToReadResourcesFrom, string lpPEFileToInsertResourcesInto) + { + + Process process = new Process(); + process.StartInfo.FileName = CopyWin32ResourcesLocation ; + process.StartInfo.CreateNoWindow = true; + process.StartInfo.UseShellExecute = false; + + string args = "/input:\"" + lpPEFileToReadResourcesFrom + "\" "; + args += "/output:\"" + lpPEFileToInsertResourcesInto + "\""; + + process.StartInfo.Arguments = args; + string output = String.Empty; + + process.Start(); + + bool timeOut = !process.WaitForExit(TimeoutDuration); + + if (timeOut) + { + try + { + process.Kill(); + } + catch {} + + return -1; + } + + return process.ExitCode; + } + + } +} + diff --git a/src/uwp/build.proj b/src/uwp/build.proj index d14f8e66..d6c9206d 100644 --- a/src/uwp/build.proj +++ b/src/uwp/build.proj @@ -6,7 +6,7 @@ - + @@ -34,4 +34,8 @@ + + + + From 4f03cbdcef3010c1ea5d147e0e5feaaef2b350fc Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Thu, 6 Jul 2017 06:29:15 -0700 Subject: [PATCH 566/625] Update CoreClr, CoreFx, Standard, WCF to preview2-25506-02, preview2-25506-02, preview1-25506-01, preview1-25426-02, respectively --- dependencies.props | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dependencies.props b/dependencies.props index d97012ba..216cc393 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,21 +9,21 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - c1ea043aefee0ebcc56c298358953eaf26ff985a - a96e149ce150f6a15546032ca3966bf238c373fb - c1ea043aefee0ebcc56c298358953eaf26ff985a - a96e149ce150f6a15546032ca3966bf238c373fb + 893c05a4163f89f9ef0bdc69b2f1debda10a05c4 + 893c05a4163f89f9ef0bdc69b2f1debda10a05c4 + 893c05a4163f89f9ef0bdc69b2f1debda10a05c4 + 893c05a4163f89f9ef0bdc69b2f1debda10a05c4 - 4.5.0-preview2-25505-02 + 4.5.0-preview2-25506-02 2.1.0-preview1-25324-02 - 2.1.0-preview1-25413-01 + 2.1.0-preview2-25506-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25429-00 - 2.1.0-preview1-25505-01 + 2.1.0-preview1-25506-01 1.4.1 - 4.5.0-preview1-25413-01 + 4.5.0-preview1-25426-02 From 0a22fcdcb6b9e401fd4699758a816383a5109f59 Mon Sep 17 00:00:00 2001 From: Jose Perez Rodriguez Date: Thu, 6 Jul 2017 12:56:14 -0700 Subject: [PATCH 567/625] Disable WCF update till we have uap support on their packages --- dependencies.props | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/dependencies.props b/dependencies.props index 216cc393..b2b9cc54 100644 --- a/dependencies.props +++ b/dependencies.props @@ -12,7 +12,8 @@ 893c05a4163f89f9ef0bdc69b2f1debda10a05c4 893c05a4163f89f9ef0bdc69b2f1debda10a05c4 893c05a4163f89f9ef0bdc69b2f1debda10a05c4 - 893c05a4163f89f9ef0bdc69b2f1debda10a05c4 + @@ -23,7 +24,7 @@ 2.0.0-preview-25429-00 2.1.0-preview1-25506-01 1.4.1 - 4.5.0-preview1-25426-02 + 4.5.0-preview1-25413-01 @@ -75,10 +76,11 @@ NETStandardVersion NETStandard.Library + From 1bcd86d66f4bf0a294e4e0efe50f32ea403fa0a4 Mon Sep 17 00:00:00 2001 From: chcosta Date: Thu, 6 Jul 2017 22:44:16 -0700 Subject: [PATCH 568/625] Fix appx ordering so that the signed appx is included in the nupkg (#2798) * Refactor appx build * Update build definition for refactored build * Exclude Microsoft.Net.UWPCoreRuntimeSdk from non-windows and arm64 builds --- buildpipeline/Core-Setup-Windows-BT.json | 35 ++----------- signing/sign.proj | 22 ++++---- src/dir.props | 2 + .../AppxManifest.xml.template | 0 .../Microsoft.NET.CoreRuntime.builds | 0 .../Microsoft.NET.CoreRuntime.depproj | 6 +++ .../Microsoft.NET.CoreRuntime/dir.props | 0 .../Microsoft.NET.CoreRuntime/logo.png | Bin src/pkg/appx/dir.props | 4 ++ src/pkg/packages.builds | 49 +++--------------- src/src.builds | 3 +- src/uwp/build.proj | 1 - src/uwp/dir.props | 2 +- ...ToolPreReqs .cs => BuildFPMToolPreReqs.cs} | 0 14 files changed, 33 insertions(+), 91 deletions(-) rename src/pkg/{projects => appx}/Microsoft.NET.CoreRuntime/AppxManifest.xml.template (100%) rename src/pkg/{projects => appx}/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds (100%) rename src/pkg/{projects => appx}/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj (96%) rename src/pkg/{projects => appx}/Microsoft.NET.CoreRuntime/dir.props (100%) rename src/pkg/{projects => appx}/Microsoft.NET.CoreRuntime/logo.png (100%) create mode 100644 src/pkg/appx/dir.props rename tools-local/tasks/{BuildFPMToolPreReqs .cs => BuildFPMToolPreReqs.cs} (100%) diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index e69f1240..49ba0dbd 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -15,8 +15,8 @@ "scriptType": "inlineScript", "scriptName": "", "arguments": "-path $(PB_SourcesDirectory) -rootPath $(Build.SourcesDirectory)", - "workingFolder": "", "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", + "workingFolder": "", "failOnStandardError": "true" } }, @@ -245,33 +245,6 @@ "createLogFile": "false" } }, - { - "enabled": true, - "continueOnError": false, - "alwaysRun": false, - "displayName": "Sign Appx files", - "timeoutInMinutes": 0, - "task": { - "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", - "versionSpec": "1.*", - "definitionType": "task" - }, - "inputs": { - "solution": "$(PB_SourcesDirectory)\\signing\\sign.proj", - "msbuildLocationMethod": "version", - "msbuildVersion": "latest", - "msbuildArchitecture": "x64", - "msbuildLocation": "", - "platform": "$(PB_TargetArchitecture)", - "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/t:SignAppx $(PB_CommonMSBuildArgs) /v:detailed", - "clean": "false", - "maximumCpuCount": "false", - "restoreNugetPackages": "false", - "logProjectEvents": "false", - "createLogFile": "false" - } - }, { "enabled": true, "continueOnError": false, @@ -721,9 +694,7 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "3", - "checkoutNestedSubmodules": "false", - "labelSourcesFormat": "$(build.buildNumber)" + "cleanOptions": "3" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -753,7 +724,7 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097748, + "revision": 418097764, "visibility": "private" } } \ No newline at end of file diff --git a/signing/sign.proj b/signing/sign.proj index aa2a5b02..f26a1491 100644 --- a/signing/sign.proj +++ b/signing/sign.proj @@ -21,10 +21,18 @@ - + + + + + Appx + + + + @@ -78,18 +86,6 @@ - - - - - - - - Appx - - - - diff --git a/src/dir.props b/src/dir.props index cd3eb817..f1b53daf 100644 --- a/src/dir.props +++ b/src/dir.props @@ -8,6 +8,8 @@ + <_BuildUwpDependencies Condition="'$(OSGroup)' == 'Windows_NT' and '$(TargetArchitecture)' != 'arm64'">true + lib .so .dll diff --git a/src/pkg/projects/Microsoft.NET.CoreRuntime/AppxManifest.xml.template b/src/pkg/appx/Microsoft.NET.CoreRuntime/AppxManifest.xml.template similarity index 100% rename from src/pkg/projects/Microsoft.NET.CoreRuntime/AppxManifest.xml.template rename to src/pkg/appx/Microsoft.NET.CoreRuntime/AppxManifest.xml.template diff --git a/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds b/src/pkg/appx/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds similarity index 100% rename from src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds rename to src/pkg/appx/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds diff --git a/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj b/src/pkg/appx/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj similarity index 96% rename from src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj rename to src/pkg/appx/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj index 76592b66..b7bfd5c1 100644 --- a/src/pkg/projects/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj +++ b/src/pkg/appx/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj @@ -1,6 +1,12 @@ + + + true + true + + false $(UAPvNextTFMFull) diff --git a/src/pkg/projects/Microsoft.NET.CoreRuntime/dir.props b/src/pkg/appx/Microsoft.NET.CoreRuntime/dir.props similarity index 100% rename from src/pkg/projects/Microsoft.NET.CoreRuntime/dir.props rename to src/pkg/appx/Microsoft.NET.CoreRuntime/dir.props diff --git a/src/pkg/projects/Microsoft.NET.CoreRuntime/logo.png b/src/pkg/appx/Microsoft.NET.CoreRuntime/logo.png similarity index 100% rename from src/pkg/projects/Microsoft.NET.CoreRuntime/logo.png rename to src/pkg/appx/Microsoft.NET.CoreRuntime/logo.png diff --git a/src/pkg/appx/dir.props b/src/pkg/appx/dir.props new file mode 100644 index 00000000..04e9cd8b --- /dev/null +++ b/src/pkg/appx/dir.props @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/src/pkg/packages.builds b/src/pkg/packages.builds index 4c804cf6..a6a1a281 100644 --- a/src/pkg/packages.builds +++ b/src/pkg/packages.builds @@ -6,52 +6,15 @@ BuildPackageLibraryReferences=false - $(MSBuildThisFileDirectory)\projects - - - - - - true - - - - - - $(AdditionalProperties) - - - - $(AdditionalProperties) - - - - $(AdditionalProperties) - - + $(MSBuildThisFileDirectory)projects\ + - + + + $(AdditionalProperties) - - - $(AdditionalProperties) - - - - $(AdditionalProperties) - - - - $(AdditionalProperties) - - - - $(AdditionalProperties) - - - + diff --git a/src/src.builds b/src/src.builds index db8e7155..8c63428b 100644 --- a/src/src.builds +++ b/src/src.builds @@ -9,8 +9,9 @@ - + + diff --git a/src/uwp/build.proj b/src/uwp/build.proj index d6c9206d..917d471b 100644 --- a/src/uwp/build.proj +++ b/src/uwp/build.proj @@ -9,7 +9,6 @@ - diff --git a/src/uwp/dir.props b/src/uwp/dir.props index f190c359..92f17e39 100644 --- a/src/uwp/dir.props +++ b/src/uwp/dir.props @@ -1,4 +1,4 @@ - + \ No newline at end of file diff --git a/tools-local/tasks/BuildFPMToolPreReqs .cs b/tools-local/tasks/BuildFPMToolPreReqs.cs similarity index 100% rename from tools-local/tasks/BuildFPMToolPreReqs .cs rename to tools-local/tasks/BuildFPMToolPreReqs.cs From edc3d191961e8189c346ca7020c19c0d97c8c8ac Mon Sep 17 00:00:00 2001 From: John Beisner Date: Fri, 7 Jul 2017 09:16:51 -0700 Subject: [PATCH 569/625] Removing the 'pipe' characters. --- src/corehost/cli/fxr/fx_muxer.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index 6ca2ab29..8c2bbf66 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -796,7 +796,7 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal } } - pal::string_t neg_version = _X("|-1.-1.-1|"); + pal::string_t neg_version = _X("-1.-1.-1"); if ((!cli_version.empty()) && (pal::strcasecmp(cli_version.c_str(), neg_version.c_str()) != 0)) { append_path(&sdk_path, cli_version.c_str()); From 2d44a5652edf4602606024ad802da3243b87346e Mon Sep 17 00:00:00 2001 From: Jose Perez Rodriguez Date: Fri, 7 Jul 2017 09:25:38 -0700 Subject: [PATCH 570/625] Using new version of WCF in the UWP metapackage --- dependencies.props | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/dependencies.props b/dependencies.props index b2b9cc54..2704ff03 100644 --- a/dependencies.props +++ b/dependencies.props @@ -24,7 +24,7 @@ 2.0.0-preview-25429-00 2.1.0-preview1-25506-01 1.4.1 - 4.5.0-preview1-25413-01 + 4.5.0-preview2-25507-04 @@ -47,10 +47,11 @@ $(BaseDotNetBuildInfo)standard/$(DependencyBranch) $(StandardCurrentRef) + https://raw.githubusercontent.com/dotnet/versions From e7380231460ac20a925c336a88a1340fb4bd08bb Mon Sep 17 00:00:00 2001 From: Simon Nattress Date: Fri, 7 Jul 2017 12:07:31 -0700 Subject: [PATCH 571/625] Fix framework assembly deployment for CoreCLR (#2800) Before NS2.0, the framework assemblies were drawn from a variety of individual Nuget packages. Filtering was performed to not copy a Nuget package's contents if it was the CoreCLR runtime package, since that is provided by an AppX package dependency. The test for "is this a CoreCLR runtime package" was the presence of mscorlib.[ni.]dll. With NS2.0, mscorlib is just a type forwarder in the main framework assembly payload so the filter broke. Instead, use System.Private.CoreLib.[ni.]dll which is now present in the CoreCLR runtime package. CoreCLR NS2.0 runtime Nuget packages will similarly contain System.Private.CoreLib.dll. --- .../contents/identity/Microsoft.Net.CoreRuntime.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.CoreRuntime.targets b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.CoreRuntime.targets index a0126ef7..d5d6c02b 100644 --- a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.CoreRuntime.targets +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/identity/Microsoft.Net.CoreRuntime.targets @@ -214,7 +214,7 @@ Copyright (C) Microsoft Corporation. All rights reserved. - <_CoreRuntimePackageId Condition="'%(ReferenceCopyLocalPaths.FileName)%(ReferenceCopyLocalPaths.Extension)' == 'mscorlib.dll' OR '%(ReferenceCopyLocalPaths.FileName)%(ReferenceCopyLocalPaths.Extension)' == 'mscorlib.ni.dll'">%(ReferenceCopyLocalPaths.NuGetPackageId) + <_CoreRuntimePackageId Condition="'%(ReferenceCopyLocalPaths.FileName)%(ReferenceCopyLocalPaths.Extension)' == 'System.Private.CoreLib.dll' OR '%(ReferenceCopyLocalPaths.FileName)%(ReferenceCopyLocalPaths.Extension)' == 'System.Private.CoreLib.ni.dll'">%(ReferenceCopyLocalPaths.NuGetPackageId) From 6c66df0ae43fd3f016569dc723a873f8cb334640 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 7 Jul 2017 14:53:54 -0700 Subject: [PATCH 572/625] Build / sign appx separately so that you can include other signed binaries in the appx --- buildpipeline/Core-Setup-Windows-Arm-BT.json | 67 ++++++++++++++++++-- buildpipeline/Core-Setup-Windows-BT.json | 67 ++++++++++++++++++-- signing/sign.proj | 22 ++++--- src/src.builds | 2 +- 4 files changed, 137 insertions(+), 21 deletions(-) diff --git a/buildpipeline/Core-Setup-Windows-Arm-BT.json b/buildpipeline/Core-Setup-Windows-Arm-BT.json index fbd6cd1a..51dd8203 100644 --- a/buildpipeline/Core-Setup-Windows-Arm-BT.json +++ b/buildpipeline/Core-Setup-Windows-Arm-BT.json @@ -15,8 +15,8 @@ "scriptType": "inlineScript", "scriptName": "", "arguments": "-path $(PB_SourcesDirectory) -rootPath $(Build.SourcesDirectory)", - "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "workingFolder": "", + "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "failOnStandardError": "true" } }, @@ -105,7 +105,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)\\build.cmd", - "arguments": "-src-builds -- $(PB_CommonMSBuildArgs)", + "arguments": "-src-builds -- $(PB_CommonMSBuildArgs) /p:BuildAppx=false", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -137,6 +137,60 @@ "createLogFile": "false" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Appx", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\appx\\Microsoft.NET.CoreRuntime\\Microsoft.NET.CoreRuntime.builds", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\buildappx.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign Appx", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\signing\\sign.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignAppxFiles $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false" + } + }, { "enabled": true, "continueOnError": false, @@ -436,7 +490,8 @@ "isSecret": true }, "PB_Branch": { - "value": "master" + "value": "master", + "allowOverride": true }, "SourceVersion": { "value": "HEAD" @@ -497,7 +552,9 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "0" + "cleanOptions": "0", + "checkoutNestedSubmodules": "false", + "labelSourcesFormat": "$(build.buildNumber)" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -527,7 +584,7 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097676, + "revision": 418097767, "visibility": "private" } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 49ba0dbd..6f8666e9 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -15,8 +15,8 @@ "scriptType": "inlineScript", "scriptName": "", "arguments": "-path $(PB_SourcesDirectory) -rootPath $(Build.SourcesDirectory)", - "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "workingFolder": "", + "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "failOnStandardError": "true" } }, @@ -105,7 +105,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)\\build.cmd", - "arguments": "-src-builds -- $(PB_CommonMSBuildArgs)", + "arguments": "-src-builds -- $(PB_CommonMSBuildArgs) /p:BuildAppx=false", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -137,6 +137,60 @@ "createLogFile": "false" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Appx", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\appx\\Microsoft.NET.CoreRuntime\\Microsoft.NET.CoreRuntime.builds", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\buildappx.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign Appx", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\signing\\sign.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignAppxFiles $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false" + } + }, { "enabled": true, "continueOnError": false, @@ -635,8 +689,7 @@ "value": "dn-bot" }, "PB_VsoPassword": { - "value": null, - "isSecret": true + "value": "cwzvo2apfo6wdij6q3vyruzfmbbcc2wkyus6widyltfkev7vumfa" }, "PB_VsoRepoUrl": { "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" @@ -694,7 +747,9 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "3" + "cleanOptions": "3", + "checkoutNestedSubmodules": "false", + "labelSourcesFormat": "$(build.buildNumber)" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -724,7 +779,7 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097764, + "revision": 418097767, "visibility": "private" } } \ No newline at end of file diff --git a/signing/sign.proj b/signing/sign.proj index f26a1491..50d6cd62 100644 --- a/signing/sign.proj +++ b/signing/sign.proj @@ -21,18 +21,10 @@ - + - - - - Appx - - - - @@ -71,6 +63,18 @@ + + + + + + + + Appx + + + + diff --git a/src/src.builds b/src/src.builds index 8c63428b..eb2dd996 100644 --- a/src/src.builds +++ b/src/src.builds @@ -11,7 +11,7 @@ - + From 39cc3c532c1ea247d09534ecb832bc22d7b8cf9d Mon Sep 17 00:00:00 2001 From: chcosta Date: Fri, 7 Jul 2017 15:18:55 -0700 Subject: [PATCH 573/625] Build / sign appx separately so that you can include other signed binaries (#2802) in the appx --- buildpipeline/Core-Setup-Windows-Arm-BT.json | 67 ++++++++++++++++++-- buildpipeline/Core-Setup-Windows-BT.json | 67 ++++++++++++++++++-- signing/sign.proj | 22 ++++--- src/src.builds | 2 +- 4 files changed, 137 insertions(+), 21 deletions(-) diff --git a/buildpipeline/Core-Setup-Windows-Arm-BT.json b/buildpipeline/Core-Setup-Windows-Arm-BT.json index fbd6cd1a..51dd8203 100644 --- a/buildpipeline/Core-Setup-Windows-Arm-BT.json +++ b/buildpipeline/Core-Setup-Windows-Arm-BT.json @@ -15,8 +15,8 @@ "scriptType": "inlineScript", "scriptName": "", "arguments": "-path $(PB_SourcesDirectory) -rootPath $(Build.SourcesDirectory)", - "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "workingFolder": "", + "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "failOnStandardError": "true" } }, @@ -105,7 +105,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)\\build.cmd", - "arguments": "-src-builds -- $(PB_CommonMSBuildArgs)", + "arguments": "-src-builds -- $(PB_CommonMSBuildArgs) /p:BuildAppx=false", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -137,6 +137,60 @@ "createLogFile": "false" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Appx", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\appx\\Microsoft.NET.CoreRuntime\\Microsoft.NET.CoreRuntime.builds", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\buildappx.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign Appx", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\signing\\sign.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignAppxFiles $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false" + } + }, { "enabled": true, "continueOnError": false, @@ -436,7 +490,8 @@ "isSecret": true }, "PB_Branch": { - "value": "master" + "value": "master", + "allowOverride": true }, "SourceVersion": { "value": "HEAD" @@ -497,7 +552,9 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "0" + "cleanOptions": "0", + "checkoutNestedSubmodules": "false", + "labelSourcesFormat": "$(build.buildNumber)" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -527,7 +584,7 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097676, + "revision": 418097767, "visibility": "private" } } \ No newline at end of file diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 49ba0dbd..6f8666e9 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -15,8 +15,8 @@ "scriptType": "inlineScript", "scriptName": "", "arguments": "-path $(PB_SourcesDirectory) -rootPath $(Build.SourcesDirectory)", - "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "workingFolder": "", + "inlineScript": "param($path, $rootPath)\n\nif (Test-Path $path){\n Remove-Item -Recurse -Force $path\n\n if(Test-Path $path){\n $DeleteFolder = \"$rootPath\\deleteme\"\n if((Test-Path $DeleteFolder ) -eq 0) {\n New-Item -ItemType Directory -Force -Path $DeleteFolder\n }\n robocopy $DeleteFolder $path /purge\n Remove-Item -Recurse -Force $path\n }\n }", "failOnStandardError": "true" } }, @@ -105,7 +105,7 @@ }, "inputs": { "filename": "$(PB_SourcesDirectory)\\build.cmd", - "arguments": "-src-builds -- $(PB_CommonMSBuildArgs)", + "arguments": "-src-builds -- $(PB_CommonMSBuildArgs) /p:BuildAppx=false", "workingFolder": "$(PB_SourcesDirectory)", "failOnStandardError": "false" } @@ -137,6 +137,60 @@ "createLogFile": "false" } }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build Appx", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\src\\pkg\\appx\\Microsoft.NET.CoreRuntime\\Microsoft.NET.CoreRuntime.builds", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "$(PB_CommonMSBuildArgs) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\buildappx.log", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Sign Appx", + "timeoutInMinutes": 0, + "task": { + "id": "c6c4c611-aa2e-4a33-b606-5eaba2196824", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "solution": "$(PB_SourcesDirectory)\\signing\\sign.proj", + "msbuildLocationMethod": "version", + "msbuildVersion": "latest", + "msbuildArchitecture": "x64", + "msbuildLocation": "", + "platform": "$(PB_TargetArchitecture)", + "configuration": "$(BuildConfiguration)", + "msbuildArguments": "/t:SignAppxFiles $(MsbuildSigningArguments) $(PB_CommonMSBuildArgs)", + "clean": "false", + "maximumCpuCount": "false", + "restoreNugetPackages": "false", + "logProjectEvents": "false", + "createLogFile": "false" + } + }, { "enabled": true, "continueOnError": false, @@ -635,8 +689,7 @@ "value": "dn-bot" }, "PB_VsoPassword": { - "value": null, - "isSecret": true + "value": "cwzvo2apfo6wdij6q3vyruzfmbbcc2wkyus6widyltfkev7vumfa" }, "PB_VsoRepoUrl": { "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" @@ -694,7 +747,9 @@ "fetchDepth": "0", "gitLfsSupport": "false", "skipSyncSource": "true", - "cleanOptions": "3" + "cleanOptions": "3", + "checkoutNestedSubmodules": "false", + "labelSourcesFormat": "$(build.buildNumber)" }, "id": "c19ea379-feb7-4ca5-8f7f-5f2b5095ea62", "type": "TfsGit", @@ -724,7 +779,7 @@ "description": "Visual Studio and DevDiv team project for git source code repositories. Work items will be added for Adams, Dev14 work items are tracked in vstfdevdiv. ", "url": "https://devdiv.visualstudio.com/DefaultCollection/_apis/projects/0bdbc590-a062-4c3f-b0f6-9383f67865ee", "state": "wellFormed", - "revision": 418097764, + "revision": 418097767, "visibility": "private" } } \ No newline at end of file diff --git a/signing/sign.proj b/signing/sign.proj index f26a1491..50d6cd62 100644 --- a/signing/sign.proj +++ b/signing/sign.proj @@ -21,18 +21,10 @@ - + - - - - Appx - - - - @@ -71,6 +63,18 @@ + + + + + + + + Appx + + + + diff --git a/src/src.builds b/src/src.builds index 8c63428b..eb2dd996 100644 --- a/src/src.builds +++ b/src/src.builds @@ -11,7 +11,7 @@ - + From 2f3a921a625e8446bd32e80ee9d0ca786db8f415 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 7 Jul 2017 15:26:48 -0700 Subject: [PATCH 574/625] remove info --- buildpipeline/Core-Setup-Windows-BT.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 6f8666e9..304debe8 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -689,7 +689,8 @@ "value": "dn-bot" }, "PB_VsoPassword": { - "value": "cwzvo2apfo6wdij6q3vyruzfmbbcc2wkyus6widyltfkev7vumfa" + "value": null, + "isSecret": true }, "PB_VsoRepoUrl": { "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" From 58f7eb492a03b5772de16a21f271d30b28747300 Mon Sep 17 00:00:00 2001 From: Christopher Costa Date: Fri, 7 Jul 2017 22:40:06 -0700 Subject: [PATCH 575/625] Don't build appx on arm64 --- .../Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pkg/appx/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds b/src/pkg/appx/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds index f6a940a6..8049b5c9 100644 --- a/src/pkg/appx/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds +++ b/src/pkg/appx/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.builds @@ -5,7 +5,7 @@ false - + From 767d65b327aba61983bf9321d5a02adc8279e159 Mon Sep 17 00:00:00 2001 From: Vance Morrison Date: Mon, 10 Jul 2017 13:46:06 -0700 Subject: [PATCH 576/625] Propagate *.ni.pdb files generated from CoreCLR build. The CoreCLR build makes *.ni.pdb files that also need to propagate to the ultimate NetCore.app package. --- src/pkg/projects/dir.targets | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/pkg/projects/dir.targets b/src/pkg/projects/dir.targets index 37241a5f..dff3214c 100644 --- a/src/pkg/projects/dir.targets +++ b/src/pkg/projects/dir.targets @@ -18,6 +18,8 @@ + + Date: Tue, 11 Jul 2017 06:42:55 -0700 Subject: [PATCH 577/625] Update CoreClr, CoreFx, Standard to preview2-25510-01, preview2-25511-02, preview1-25511-01, respectively --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index 2704ff03..2820fcd0 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 893c05a4163f89f9ef0bdc69b2f1debda10a05c4 - 893c05a4163f89f9ef0bdc69b2f1debda10a05c4 - 893c05a4163f89f9ef0bdc69b2f1debda10a05c4 + e7e2bd1f8c78028e2a188dc15d758d4c4624989e + e7e2bd1f8c78028e2a188dc15d758d4c4624989e + e7e2bd1f8c78028e2a188dc15d758d4c4624989e - 4.5.0-preview2-25506-02 + 4.5.0-preview2-25511-02 2.1.0-preview1-25324-02 - 2.1.0-preview2-25506-02 + 2.1.0-preview2-25510-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25429-00 - 2.1.0-preview1-25506-01 + 2.1.0-preview1-25511-01 1.4.1 4.5.0-preview2-25507-04 From 945abe5f2769871a77d7da61f6d7cd274259d987 Mon Sep 17 00:00:00 2001 From: Chris Rummel Date: Tue, 11 Jul 2017 12:21:45 -0500 Subject: [PATCH 578/625] Add symbol signing to core-setup packages. (#2691) * Publish project changes for symbol signing. - Split PublishCoreHostPackagesToFeed target into download/sign/publish so we have somewhere to include the actual signing. - Add symbol signing target call and EmbedIndex call. - Update BuildTools to get symbol signing fixes. * Publish build definition changes for symbol signing. - Use MicroBuild symbol signing plugin. - Delete previous copies of tooling if present. - Clone and download symbol signing tooling. - New build variables for tooling locations and certificate to use. --- BuildToolsVersion.txt | 2 +- buildpipeline/Core-Setup-Publish.json | 136 +++++++++++++++++++++++++- publish/publish.proj | 33 +++++-- 3 files changed, 160 insertions(+), 11 deletions(-) diff --git a/BuildToolsVersion.txt b/BuildToolsVersion.txt index a52d4701..63145663 100644 --- a/BuildToolsVersion.txt +++ b/BuildToolsVersion.txt @@ -1 +1 @@ -2.0.0-prerelease-01803-02 \ No newline at end of file +2.0.0-prerelease-01805-01 diff --git a/buildpipeline/Core-Setup-Publish.json b/buildpipeline/Core-Setup-Publish.json index 0727b5c3..1e89fde8 100644 --- a/buildpipeline/Core-Setup-Publish.json +++ b/buildpipeline/Core-Setup-Publish.json @@ -1,5 +1,23 @@ { "build": [ + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Install Signing Plugin", + "timeoutInMinutes": 0, + "task": { + "id": "30666190-6959-11e5-9f96-f56098202fef", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "signType": "real", + "zipSources": "true", + "version": "", + "feedSource": "https://devdiv.pkgs.visualstudio.com/DefaultCollection/_packaging/MicroBuildToolset/nuget/v3/index.json" + } + }, { "enabled": true, "continueOnError": true, @@ -14,12 +32,109 @@ "inputs": { "scriptType": "inlineScript", "scriptName": "", - "arguments": "-path $(PB_SourcesDirectory)", + "arguments": "-path \"$(PB_SourcesDirectory)\"", "workingFolder": "", "inlineScript": "param($path)\n\nif (Test-Path $path){\n # this will print out an error each time a file can't be deleted.\n Remove-Item -Recurse -Force $path\n }\n\nif (Test-Path $path){\n # in case vbcs is still alive\n $p = Get-Process -Name \"VBCS\"\n Stop-Process -InputObject $p\n }", "failOnStandardError": "true" } }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup previous tools source if present", + "timeoutInMinutes": 0, + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "-path \"$(PB_VsoToolsDir)\"", + "workingFolder": "", + "inlineScript": "param($path)\n\nif (Test-Path $path){\n # this will print out an error each time a file can't be deleted.\n Remove-Item -Recurse -Force $path\n }\n\nif (Test-Path $path){\n # in case vbcs is still alive\n $p = Get-Process -Name \"VBCS\"\n Stop-Process -InputObject $p\n }", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": true, + "alwaysRun": false, + "displayName": "Cleanup previous tools if present", + "timeoutInMinutes": 0, + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "inlineScript", + "scriptName": "", + "arguments": "-path \"$(PB_ToolsRoot)\"", + "workingFolder": "", + "inlineScript": "param($path)\n\nif (Test-Path $path){\n # this will print out an error each time a file can't be deleted.\n Remove-Item -Recurse -Force $path\n }\n\nif (Test-Path $path){\n # in case vbcs is still alive\n $p = Get-Process -Name \"VBCS\"\n Stop-Process -InputObject $p\n }", + "failOnStandardError": "true" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Run script $(VS140COMNTOOLS)\\VsDevCmd.bat", + "timeoutInMinutes": 0, + "task": { + "id": "bfc8bf76-e7ac-4a8c-9a55-a944a9f632fd", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(VS140COMNTOOLS)\\VsDevCmd.bat", + "arguments": "", + "modifyEnvironment": "true", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Clone tools", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "git", + "arguments": "clone $(PB_VsoToolsRepo) $(PB_VsoToolsDir)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Fetch symbol signing tooling", + "timeoutInMinutes": 0, + "task": { + "id": "e213ff0f-5d5c-4791-802d-52ea3e7be1f1", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "scriptType": "filePath", + "scriptName": "$(PB_VsoToolsDir)\\scripts\\DotNet-Trusted-Publish\\Fetch-Tools.ps1", + "arguments": "$(PB_ToolsRoot)", + "workingFolder": "", + "inlineScript": "", + "failOnStandardError": "true" + } + }, { "enabled": true, "continueOnError": false, @@ -117,7 +232,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:GitHubUser=$(PB_GitHubUser) /p:GitHubEmail=$(PB_GitHubEmail) /p:GitHubAuthToken=$(GITHUB_PASSWORD) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(SourceBranch) /p:Finalize=true /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", + "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:GitHubUser=$(PB_GitHubUser) /p:GitHubEmail=$(PB_GitHubEmail) /p:GitHubAuthToken=$(GITHUB_PASSWORD) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(SourceBranch) /p:Finalize=true /p:VsoToolsDir=$(PB_VsoToolsDir) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", @@ -302,7 +417,7 @@ }, "PB_VersionsRepo": { "value": "versions" - }, + }, "PB_RepoName": { "value": "core-setup" }, @@ -314,10 +429,23 @@ }, "TeamName": { "value": "DotNetCore" + }, + "PB_VsoToolsRepo": { + "value": "https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-BuildPipeline" + }, + "PB_VsoToolsDir": { + "value": "$(Build.SourcesDirectory)\\toolsSource" + }, + "PB_ToolsRoot": { + "value": "$(Build.SourcesDirectory)\\tools" + }, + "SymbolCatalogCertificateId": { + "value": "400" } }, "demands": [ - "Agent.OS -equals Windows_NT" + "Agent.OS -equals Windows_NT", + "WindowsKit", ], "retentionRules": [ { diff --git a/publish/publish.proj b/publish/publish.proj index 302b8bbf..0a4b442d 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -112,7 +112,7 @@ ProductVersion="$(ProductVersion)" CommitHash="$(LatestCommit)" FinalizeContainer="Runtime/$(SharedFrameworkNugetVersion)" - ForcePublish="true" + ForcePublish="true" Condition="'@(_MissingBlobNames)' == ''" /> @@ -134,14 +134,17 @@ + + + - $(BinDir)ForPublishing/ + $(BinDir)PackageDownload/ + $(BinDir)ForPublishing/ + + $(DownloadDirectory) + + $(DownloadDirectory)/**/*.nupkg @@ -164,14 +173,26 @@ BlobNamePrefix="Runtime/$(SharedFrameworkNugetVersion)" DownloadDirectory="$(DownloadDirectory)" /> - <_DownloadedPackages Include="@(_CoreHostPackages->'$(DownloadDirectory)%(Filename)%(Extension)')" /> + <_DownloadedPackages Include="@(_CoreHostPackages->'$(PublishDirectory)%(Filename)%(Extension)')" /> <_DownloadedSymbolsPackages Include="%(_DownloadedPackages.Identity)" Condition="$([System.String]::new('%(_DownloadedPackages.Identity)').EndsWith('.symbols.nupkg'))" /> <_DownloadedStandardPackages Include="@(_DownloadedPackages)" Exclude="@(_DownloadedSymbolsPackages)" /> + + + + + powershell.exe + $(VsoToolsDir)\scripts\DotNet-Trusted-Publish\Embed-Index.ps1 + + + + + + - + $(DotnetToolCommand) nuget push --source $(NuGetFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) @@ -184,7 +205,7 @@ - + From 8b322f689b3c15038c50e5e9dda2f2c9a70a1945 Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Wed, 12 Jul 2017 06:26:51 -0700 Subject: [PATCH 579/625] Update CoreClr, CoreFx, Standard to preview2-25511-05, preview2-25512-01, preview1-25512-01, respectively --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index 2820fcd0..ef5c08a2 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - e7e2bd1f8c78028e2a188dc15d758d4c4624989e - e7e2bd1f8c78028e2a188dc15d758d4c4624989e - e7e2bd1f8c78028e2a188dc15d758d4c4624989e + 9114ada0abe6ec0a350612544f197aa5046ceb61 + 9114ada0abe6ec0a350612544f197aa5046ceb61 + 9114ada0abe6ec0a350612544f197aa5046ceb61 - 4.5.0-preview2-25511-02 + 4.5.0-preview2-25512-01 2.1.0-preview1-25324-02 - 2.1.0-preview2-25510-01 + 2.1.0-preview2-25511-05 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25429-00 - 2.1.0-preview1-25511-01 + 2.1.0-preview1-25512-01 1.4.1 4.5.0-preview2-25507-04 From da589227f4bd8acb6f5829a915b6f3a4d8954cc3 Mon Sep 17 00:00:00 2001 From: Simon Nattress Date: Wed, 12 Jul 2017 13:03:49 -0700 Subject: [PATCH 580/625] Update .NET Native Compiler in metapackage (#2821) Roll forward to the latest nightly build of .Net Native in the published Microsoft.NETCore.UniversalWindowsPlatform --- dependencies.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dependencies.props b/dependencies.props index ef5c08a2..75f24926 100644 --- a/dependencies.props +++ b/dependencies.props @@ -21,7 +21,7 @@ 2.1.0-preview1-25324-02 2.1.0-preview2-25511-05 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.0.0-preview-25429-00 + 2.0.0-preview-25511-00 2.1.0-preview1-25512-01 1.4.1 4.5.0-preview2-25507-04 From a047b3f107e50d4591bf97b0bf9284485abf9bf6 Mon Sep 17 00:00:00 2001 From: John Beisner Date: Wed, 12 Jul 2017 13:34:28 -0700 Subject: [PATCH 581/625] Combining methods: 'resolve_sdk_version' and 'resolve_patch_sdk_version' --- src/corehost/cli/fxr/fx_muxer.cpp | 54 ++++++++----------------------- 1 file changed, 13 insertions(+), 41 deletions(-) diff --git a/src/corehost/cli/fxr/fx_muxer.cpp b/src/corehost/cli/fxr/fx_muxer.cpp index 8c2bbf66..076905b1 100644 --- a/src/corehost/cli/fxr/fx_muxer.cpp +++ b/src/corehost/cli/fxr/fx_muxer.cpp @@ -595,48 +595,20 @@ pal::string_t fx_muxer_t::resolve_cli_version(const pal::string_t& global_json) return retval; } -pal::string_t resolve_sdk_version(pal::string_t sdk_path, bool parse_only_production) +pal::string_t resolve_sdk_version(pal::string_t sdk_path, bool parse_only_production, pal::string_t global_cli_version) { - trace::verbose(_X("--- Resolving SDK version from SDK dir [%s]"), sdk_path.c_str()); + fx_ver_t specified(-1, -1, -1); - pal::string_t retval; - std::vector versions; - - pal::readdir(sdk_path, &versions); - fx_ver_t max_ver(-1, -1, -1); - for (const auto& version : versions) + // Validate the global cli version if specified + if (!global_cli_version.empty()) { - trace::verbose(_X("Considering version... [%s]"), version.c_str()); - - fx_ver_t ver(-1, -1, -1); - if (fx_ver_t::parse(version, &ver, parse_only_production)) + if (!fx_ver_t::parse(global_cli_version, &specified, false)) { - max_ver = std::max(ver, max_ver); + trace::error(_X("The specified SDK version '%s' could not be parsed"), global_cli_version.c_str()); + return pal::string_t(); } } - pal::string_t max_ver_str = max_ver.as_str(); - append_path(&sdk_path, max_ver_str.c_str()); - - trace::verbose(_X("Checking if resolved SDK dir [%s] exists"), sdk_path.c_str()); - if (pal::directory_exists(sdk_path)) - { - trace::verbose(_X("Resolved SDK dir is [%s]"), sdk_path.c_str()); - retval = max_ver_str; - } - - return retval; -} - -pal::string_t resolve_patch_sdk_version(pal::string_t global_cli_version, pal::string_t sdk_path, bool parse_only_production) -{ - fx_ver_t specified(-1, -1, -1); - if (!fx_ver_t::parse(global_cli_version, &specified, false)) - { - trace::error(_X("The specified SDK version '%s' could not be parsed"), global_cli_version.c_str()); - return pal::string_t(); - } - trace::verbose(_X("--- Resolving SDK version from SDK dir [%s]"), sdk_path.c_str()); pal::string_t retval; @@ -651,9 +623,10 @@ pal::string_t resolve_patch_sdk_version(pal::string_t global_cli_version, pal::s fx_ver_t ver(-1, -1, -1); if (fx_ver_t::parse(version, &ver, parse_only_production)) { - if (ver.get_major() == specified.get_major() && ver.get_minor() == specified.get_minor()) + if (global_cli_version.empty() || + // Pick the greatest version that differs only in patch if a global cli version is specified. + (ver.get_major() == specified.get_major() && ver.get_minor() == specified.get_minor())) { - // Pick the greatest version that differs only in patch. max_ver = std::max(ver, max_ver); } } @@ -766,7 +739,7 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal if (global_cli_version.empty()) { - pal::string_t new_cli_version = resolve_sdk_version(current_sdk_path, parse_only_production); + pal::string_t new_cli_version = resolve_sdk_version(current_sdk_path, parse_only_production, global_cli_version); if (higher_sdk_version(new_cli_version, &cli_version, parse_only_production)) { sdk_path = current_sdk_path; @@ -787,7 +760,7 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal } else { - pal::string_t new_cli_version = resolve_patch_sdk_version(global_cli_version, current_sdk_path, parse_only_production); + pal::string_t new_cli_version = resolve_sdk_version(current_sdk_path, parse_only_production, global_cli_version); if (higher_sdk_version(new_cli_version, &cli_version, parse_only_production)) { sdk_path = current_sdk_path; @@ -796,8 +769,7 @@ bool fx_muxer_t::resolve_sdk_dotnet_path(const pal::string_t& own_dir, const pal } } - pal::string_t neg_version = _X("-1.-1.-1"); - if ((!cli_version.empty()) && (pal::strcasecmp(cli_version.c_str(), neg_version.c_str()) != 0)) + if (!cli_version.empty()) { append_path(&sdk_path, cli_version.c_str()); cli_sdk->assign(sdk_path); From 772b337316f2d74e4423bdd74b06dfb5ba39d052 Mon Sep 17 00:00:00 2001 From: Steve Harter Date: Wed, 12 Jul 2017 16:19:55 -0500 Subject: [PATCH 582/625] Place temp appx files in obj folder (#2823) --- .../Microsoft.NET.CoreRuntime.depproj | 20 +++++++++---------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/src/pkg/appx/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj b/src/pkg/appx/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj index b7bfd5c1..5bb39998 100644 --- a/src/pkg/appx/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj +++ b/src/pkg/appx/Microsoft.NET.CoreRuntime/Microsoft.NET.CoreRuntime.depproj @@ -5,21 +5,23 @@ true true - + $(IntermediateOutputPath) + /p:HasRuntimePackages=false /p:IntermediateOutputPath=$(IntermediateOutputPath) + false $(UAPvNextTFMFull) $(UAPvNextTFM) win10-$(Platform) - + $(MSBuildProjectDirectory)\AppxManifest.xml.template $(IntermediateOutputPath)AppxManifest.xml Microsoft.NET.CoreRuntime Microsoft.NET.CoreRuntime.$(MajorVersion).$(MinorVersion) Microsoft.NET.CoreRuntime.$(MajorVersion).$(MinorVersion) - + $([System.Int32]::Parse($(BuildNumberMajor))) $([System.Int32]::Parse($(BuildNumberMinor))) @@ -33,17 +35,15 @@ true true - - - + $(PlatformPackageVersion) - + $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) @@ -51,7 +51,6 @@ - @@ -63,7 +62,7 @@ - + - + - From 36b144e60498ee149bf9b87c81a5b59684445b6d Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Thu, 13 Jul 2017 06:21:42 -0700 Subject: [PATCH 583/625] Update CoreClr, CoreFx, Standard to preview2-25513-01, preview2-25513-02, preview1-25513-01, respectively --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index 75f24926..ad3db35b 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 9114ada0abe6ec0a350612544f197aa5046ceb61 - 9114ada0abe6ec0a350612544f197aa5046ceb61 - 9114ada0abe6ec0a350612544f197aa5046ceb61 + 13b7a26a412f20b32ea84971405c9a452d86b136 + 13b7a26a412f20b32ea84971405c9a452d86b136 + 13b7a26a412f20b32ea84971405c9a452d86b136 - 4.5.0-preview2-25512-01 + 4.5.0-preview2-25513-02 2.1.0-preview1-25324-02 - 2.1.0-preview2-25511-05 + 2.1.0-preview2-25513-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25511-00 - 2.1.0-preview1-25512-01 + 2.1.0-preview1-25513-01 1.4.1 4.5.0-preview2-25507-04 From df9e9eb30f1547b10853f18301ef5a04ec22d2f1 Mon Sep 17 00:00:00 2001 From: Davis Goodin Date: Thu, 13 Jul 2017 16:16:54 -0500 Subject: [PATCH 584/625] Only symbol-sign and index symbol packages (#2827) * Only sign/index symbol packages * Turn glob into items before using to create paths * Run EmbedIndex on symbol pakages, copy others * Bring package globs into the same new target This localizes changes and the new target makes it easier to test locally. * Update VsoTools properties passed to publish.proj VsoToolsDir is unused; DotNetToolDir and EmbedIndexToolDir are created by the tool initialization script. --- buildpipeline/Core-Setup-Publish.json | 2 +- publish/publish.proj | 29 +++++++++++++++++++++------ 2 files changed, 24 insertions(+), 7 deletions(-) diff --git a/buildpipeline/Core-Setup-Publish.json b/buildpipeline/Core-Setup-Publish.json index 1e89fde8..92b60838 100644 --- a/buildpipeline/Core-Setup-Publish.json +++ b/buildpipeline/Core-Setup-Publish.json @@ -232,7 +232,7 @@ "solution": "$(PB_SourcesDirectory)\\publish\\publish.proj", "platform": "$(PB_TargetArchitecture)", "configuration": "$(BuildConfiguration)", - "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:GitHubUser=$(PB_GitHubUser) /p:GitHubEmail=$(PB_GitHubEmail) /p:GitHubAuthToken=$(GITHUB_PASSWORD) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(SourceBranch) /p:Finalize=true /p:VsoToolsDir=$(PB_VsoToolsDir) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", + "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:GitHubUser=$(PB_GitHubUser) /p:GitHubEmail=$(PB_GitHubEmail) /p:GitHubAuthToken=$(GITHUB_PASSWORD) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(SourceBranch) /p:Finalize=true /p:DotNetToolDir=$(DotNetToolDir) /p:EmbedIndexToolDir=$(EmbedIndexToolDir) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log", "clean": "false", "maximumCpuCount": "false", "restoreNugetPackages": "false", diff --git a/publish/publish.proj b/publish/publish.proj index 0a4b442d..aec9e271 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -161,8 +161,6 @@ $(DownloadDirectory) - - $(DownloadDirectory)/**/*.nupkg @@ -181,13 +179,32 @@ - + - powershell.exe - $(VsoToolsDir)\scripts\DotNet-Trusted-Publish\Embed-Index.ps1 + + $(DownloadDirectory)**\*.symbols.nupkg - + + + + + + + + + + + + + + + + From ad7bd09c081a1d493559a8cb4b2e43fee851cb05 Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Mon, 17 Jul 2017 06:27:35 -0700 Subject: [PATCH 585/625] Update CoreClr, CoreFx, Standard to preview2-25517-01, preview2-25517-02, preview1-25517-01, respectively --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index ad3db35b..4c9de2c7 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 13b7a26a412f20b32ea84971405c9a452d86b136 - 13b7a26a412f20b32ea84971405c9a452d86b136 - 13b7a26a412f20b32ea84971405c9a452d86b136 + d83dc310d0da05696691e4c964c964b3bf219510 + d83dc310d0da05696691e4c964c964b3bf219510 + d83dc310d0da05696691e4c964c964b3bf219510 - 4.5.0-preview2-25513-02 + 4.5.0-preview2-25517-02 2.1.0-preview1-25324-02 - 2.1.0-preview2-25513-01 + 2.1.0-preview2-25517-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25511-00 - 2.1.0-preview1-25513-01 + 2.1.0-preview1-25517-01 1.4.1 4.5.0-preview2-25507-04 From d67f60a64d239043442440345ccaa32f7e52e90d Mon Sep 17 00:00:00 2001 From: Simon Nattress Date: Tue, 18 Jul 2017 00:21:22 -0700 Subject: [PATCH 586/625] Update .NET Native Compiler in metapackage (#2849) Roll forward to the latest nightly build of .Net Native in the published Microsoft.NETCore.UniversalWindowsPlatform package. --- dependencies.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dependencies.props b/dependencies.props index 4c9de2c7..5c35946e 100644 --- a/dependencies.props +++ b/dependencies.props @@ -21,7 +21,7 @@ 2.1.0-preview1-25324-02 2.1.0-preview2-25517-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.0.0-preview-25511-00 + 2.0.0-preview-25518-00 2.1.0-preview1-25517-01 1.4.1 4.5.0-preview2-25507-04 From 0712dd47d1c521a31571047fb9c8245e2e5457fc Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Tue, 18 Jul 2017 06:26:35 -0700 Subject: [PATCH 587/625] Update CoreClr, CoreFx, Standard to preview2-25518-01, preview2-25518-02, preview1-25518-01, respectively --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index 5c35946e..3d7c0fab 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - d83dc310d0da05696691e4c964c964b3bf219510 - d83dc310d0da05696691e4c964c964b3bf219510 - d83dc310d0da05696691e4c964c964b3bf219510 + 401c80913afdea5399e0f39376db88e465ae62c9 + 401c80913afdea5399e0f39376db88e465ae62c9 + 401c80913afdea5399e0f39376db88e465ae62c9 - 4.5.0-preview2-25517-02 + 4.5.0-preview2-25518-02 2.1.0-preview1-25324-02 - 2.1.0-preview2-25517-01 + 2.1.0-preview2-25518-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25518-00 - 2.1.0-preview1-25517-01 + 2.1.0-preview1-25518-01 1.4.1 4.5.0-preview2-25507-04 From 7aecf147dc81d8fae160a54d0a0efe55d9067471 Mon Sep 17 00:00:00 2001 From: John Beisner Date: Tue, 18 Jul 2017 09:22:50 -0700 Subject: [PATCH 588/625] Adding a mutex when selecting a directory index. --- .../GivenThatICareAboutMultilevelSDKLookup.cs | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs index 9d874482..65fd46be 100644 --- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs +++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.IO; using System.Linq; +using System.Threading; using Microsoft.DotNet.InternalAbstractions; using Xunit; @@ -9,6 +10,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup { public class GivenThatICareAboutMultilevelSDKLookup { + private static readonly Mutex id_mutex = new Mutex(); private static IDictionary s_DefaultEnvironment = new Dictionary() { {"COREHOST_TRACE", "1" }, @@ -46,8 +48,8 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup string multilevelDir = CalculateMultilevelDirectory(baseMultilevelDir); // The three tested locations will be the cwd, the user folder and the exe dir. cwd and user are no longer supported. - // Both exe and user dir will be placed inside the multilevel folder - + // All dirs will be placed inside the multilevel folder + _currentWorkingDir = Path.Combine(multilevelDir, "cwd"); _userDir = Path.Combine(multilevelDir, "user"); _executableDir = Path.Combine(multilevelDir, "exe"); @@ -120,6 +122,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) .Environment(s_DefaultEnvironment) + .EnvironmentVariable("DOTNET_MULTILEVEL_LOOKUP", "0") .CaptureStdOut() .CaptureStdErr() .Execute() @@ -140,6 +143,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) .Environment(s_DefaultEnvironment) + .EnvironmentVariable("DOTNET_MULTILEVEL_LOOKUP", "0") .CaptureStdOut() .CaptureStdErr() .Execute() @@ -160,6 +164,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) .Environment(s_DefaultEnvironment) + .EnvironmentVariable("DOTNET_MULTILEVEL_LOOKUP", "0") .CaptureStdOut() .CaptureStdErr() .Execute() @@ -180,6 +185,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .WorkingDirectory(_currentWorkingDir) .WithUserProfile(_userDir) .Environment(s_DefaultEnvironment) + .EnvironmentVariable("DOTNET_MULTILEVEL_LOOKUP", "0") .CaptureStdOut() .CaptureStdErr() .Execute() @@ -200,6 +206,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // Add a negative CLI version AddAvailableSdkVersions(_exeSdkBaseDir, "-1.-1.-1"); + // Specified CLI version: none // CWD: empty // User: empty // Exe: -1.-1.-1 @@ -220,6 +227,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // Add specified CLI version AddAvailableSdkVersions(_exeSdkBaseDir, "9999.0.4"); + // Specified CLI version: none // CWD: empty // User: empty // Exe: -1.-1.-1, 9999.0.4 @@ -308,7 +316,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup .And .HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "10000.0.0-dummy", _dotnetSdkDllMessageTerminator)); - // Add a dummy version in the user dir + // Add a dummy version in the exe dir AddAvailableSdkVersions(_exeSdkBaseDir, "10000.0.0"); // Specified CLI version: none @@ -438,6 +446,8 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup // We must locate the first non existing id. private string CalculateMultilevelDirectory(string baseMultilevelDir) { + id_mutex.WaitOne(); + int count = 0; string multilevelDir; @@ -447,6 +457,8 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup count++; } while (Directory.Exists(multilevelDir)); + id_mutex.ReleaseMutex(); + return multilevelDir; } } From afb13fc5fdd352c736ad4f34dc30cb85d34f9589 Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Wed, 19 Jul 2017 11:40:29 -0700 Subject: [PATCH 589/625] Fix local build for UWPHost by adding header files from CoreCLR repo. This is where mscoree.h originated from, so additional header files should be fine. (#2856) --- src/uwp/Host/UWPHost/corerror.h | 1250 +++++++++++++++++++++++++++++ src/uwp/Host/UWPHost/gchost.h | 166 ++++ src/uwp/Host/UWPHost/ivalidator.h | 333 ++++++++ src/uwp/Host/UWPHost/ivehandler.h | 220 +++++ 4 files changed, 1969 insertions(+) create mode 100644 src/uwp/Host/UWPHost/corerror.h create mode 100644 src/uwp/Host/UWPHost/gchost.h create mode 100644 src/uwp/Host/UWPHost/ivalidator.h create mode 100644 src/uwp/Host/UWPHost/ivehandler.h diff --git a/src/uwp/Host/UWPHost/corerror.h b/src/uwp/Host/UWPHost/corerror.h new file mode 100644 index 00000000..d4d44952 --- /dev/null +++ b/src/uwp/Host/UWPHost/corerror.h @@ -0,0 +1,1250 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +#ifndef __COMMON_LANGUAGE_RUNTIME_HRESULTS__ +#define __COMMON_LANGUAGE_RUNTIME_HRESULTS__ + +#include + + +// +//This file is AutoGenerated -- Do Not Edit by hand!!! +// +//Add new HRESULTS along with their corresponding error messages to +//corerror.xml +// + +#ifndef FACILITY_URT +#define FACILITY_URT 0x13 +#endif +#ifndef EMAKEHR +#define SMAKEHR(val) MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_URT, val) +#define EMAKEHR(val) MAKE_HRESULT(SEVERITY_ERROR, FACILITY_URT, val) +#endif + +#define CLDB_S_TRUNCATION SMAKEHR(0x1106) +#define CLDB_S_NULL SMAKEHR(0x1109) +#define CLDB_S_INDEX_TABLESCANREQUIRED SMAKEHR(0x1125) +#define TLBX_I_TYPEINFO_IMPORTED SMAKEHR(0x116c) +#define TLBX_I_PIA_REGISTERED_FOR_TLB SMAKEHR(0x116d) +#define TLBX_I_AGNOSTIC_ASSEMBLY SMAKEHR(0x116e) +#define TLBX_I_USEIUNKNOWN SMAKEHR(0x116f) +#define TLBX_I_UNCONVERTABLE_ARGS SMAKEHR(0x1170) +#define TLBX_I_UNCONVERTABLE_FIELD SMAKEHR(0x1171) +#define TLBX_W_WARNING_MESSAGE SMAKEHR(0x1173) +#define TLBX_W_ASSEMBLY_HAS_EMBEDDED_TLB SMAKEHR(0x1174) +#define TLBX_W_CROSS_COMPILE_NO_REFS SMAKEHR(0x1175) +#define TLBX_W_PURE_CROSS_COMPILE SMAKEHR(0x1176) +#define TLBX_I_TYPE_EXPORTED SMAKEHR(0x1179) +#define TLBX_I_DUPLICATE_DISPID SMAKEHR(0x117a) +#define TLBX_I_REF_TYPE_AS_STRUCT SMAKEHR(0x117c) +#define TLBX_I_GENERIC_TYPE SMAKEHR(0x117f) +#define TLBX_W_NON_INTEGRAL_CA_TYPE SMAKEHR(0x1184) +#define TLBX_W_IENUM_CA_ON_IUNK SMAKEHR(0x1185) +#define META_S_PARAM_MISMATCH SMAKEHR(0x1189) +#define META_S_DUPLICATE SMAKEHR(0x1197) +#define TLBX_S_REFERENCED_TYPELIB SMAKEHR(0x11ac) +#define TLBX_S_NOSTDINTERFACE SMAKEHR(0x11b3) +#define TLBX_S_DUPLICATE_DISPID SMAKEHR(0x11b4) +#define TLBX_W_ENUM_VALUE_TOOBIG SMAKEHR(0x11d5) +#define TLBX_W_EXPORTING_AUTO_LAYOUT SMAKEHR(0x11d9) +#define TLBX_W_DEFAULT_INTF_NOT_VISIBLE SMAKEHR(0x11db) +#define TLBX_W_BAD_SAFEARRAYFIELD_NO_ELEMENTVT SMAKEHR(0x11de) +#define TLBX_W_LAYOUTCLASS_AS_INTERFACE SMAKEHR(0x11df) +#define TLBX_I_GENERIC_BASE_TYPE SMAKEHR(0x11e0) +#define VLDTR_S_WRN SMAKEHR(0x1200) +#define VLDTR_S_ERR SMAKEHR(0x1201) +#define VLDTR_S_WRNERR SMAKEHR(0x1202) +#define CORDBG_S_BAD_START_SEQUENCE_POINT SMAKEHR(0x130b) +#define CORDBG_S_BAD_END_SEQUENCE_POINT SMAKEHR(0x130c) +#define CORDBG_S_INSUFFICIENT_INFO_FOR_SET_IP SMAKEHR(0x130d) +#define CORDBG_S_FUNC_EVAL_HAS_NO_RESULT SMAKEHR(0x1316) +#define CORDBG_S_VALUE_POINTS_TO_VOID SMAKEHR(0x1317) +#define CORDBG_S_FUNC_EVAL_ABORTED SMAKEHR(0x1319) +#define CORDBG_S_AT_END_OF_STACK SMAKEHR(0x1324) +#define CORDBG_S_NOT_ALL_BITS_SET SMAKEHR(0x1c13) +#define CEE_E_ENTRYPOINT EMAKEHR(0x1000) +#define CEE_E_CVTRES_NOT_FOUND EMAKEHR(0x1001) +#define MSEE_E_LOADLIBFAILED EMAKEHR(0x1010) +#define MSEE_E_GETPROCFAILED EMAKEHR(0x1011) +#define MSEE_E_MULTCOPIESLOADED EMAKEHR(0x1012) +#define COR_E_TYPEUNLOADED EMAKEHR(0x1013) +#define COR_E_APPDOMAINUNLOADED EMAKEHR(0x1014) +#define COR_E_CANNOTUNLOADAPPDOMAIN EMAKEHR(0x1015) +#define MSEE_E_ASSEMBLYLOADINPROGRESS EMAKEHR(0x1016) +#define MSEE_E_CANNOTCREATEAPPDOMAIN EMAKEHR(0x1017) +#define COR_E_ASSEMBLYEXPECTED EMAKEHR(0x1018) +#define COR_E_FIXUPSINEXE EMAKEHR(0x1019) +#define COR_E_NO_LOADLIBRARY_ALLOWED EMAKEHR(0x101a) +#define COR_E_NEWER_RUNTIME EMAKEHR(0x101b) +#define COR_E_CANNOT_SET_POLICY EMAKEHR(0x101c) +#define COR_E_CANNOT_SPECIFY_EVIDENCE EMAKEHR(0x101d) +#define COR_E_MULTIMODULEASSEMBLIESDIALLOWED EMAKEHR(0x101e) +#define HOST_E_DEADLOCK EMAKEHR(0x1020) +#define HOST_E_INTERRUPTED EMAKEHR(0x1021) +#define HOST_E_INVALIDOPERATION EMAKEHR(0x1022) +#define HOST_E_CLRNOTAVAILABLE EMAKEHR(0x1023) +#define HOST_E_TIMEOUT EMAKEHR(0x1024) +#define HOST_E_NOT_OWNER EMAKEHR(0x1025) +#define HOST_E_ABANDONED EMAKEHR(0x1026) +#define HOST_E_EXITPROCESS_THREADABORT EMAKEHR(0x1027) +#define HOST_E_EXITPROCESS_ADUNLOAD EMAKEHR(0x1028) +#define HOST_E_EXITPROCESS_TIMEOUT EMAKEHR(0x1029) +#define HOST_E_EXITPROCESS_OUTOFMEMORY EMAKEHR(0x102a) +#define HOST_E_EXITPROCESS_STACKOVERFLOW EMAKEHR(0x102b) +#define COR_E_MODULE_HASH_CHECK_FAILED EMAKEHR(0x1039) +#define FUSION_E_REF_DEF_MISMATCH EMAKEHR(0x1040) +#define FUSION_E_INVALID_PRIVATE_ASM_LOCATION EMAKEHR(0x1041) +#define FUSION_E_ASM_MODULE_MISSING EMAKEHR(0x1042) +#define FUSION_E_UNEXPECTED_MODULE_FOUND EMAKEHR(0x1043) +#define FUSION_E_PRIVATE_ASM_DISALLOWED EMAKEHR(0x1044) +#define FUSION_E_SIGNATURE_CHECK_FAILED EMAKEHR(0x1045) +#define FUSION_E_DATABASE_ERROR EMAKEHR(0x1046) +#define FUSION_E_INVALID_NAME EMAKEHR(0x1047) +#define FUSION_E_CODE_DOWNLOAD_DISABLED EMAKEHR(0x1048) +#define FUSION_E_UNINSTALL_DISALLOWED EMAKEHR(0x1049) +#define CLR_E_APP_CONFIG_NOT_ALLOWED_IN_APPX_PROCESS EMAKEHR(0x104a) +#define FUSION_E_HOST_GAC_ASM_MISMATCH EMAKEHR(0x1050) +#define FUSION_E_LOADFROM_BLOCKED EMAKEHR(0x1051) +#define FUSION_E_CACHEFILE_FAILED EMAKEHR(0x1052) +#define FUSION_E_APP_DOMAIN_LOCKED EMAKEHR(0x1053) +#define FUSION_E_CONFIGURATION_ERROR EMAKEHR(0x1054) +#define FUSION_E_MANIFEST_PARSE_ERROR EMAKEHR(0x1055) +#define FUSION_E_INVALID_ASSEMBLY_REFERENCE EMAKEHR(0x1056) +#define COR_E_ASSEMBLY_NOT_EXPECTED EMAKEHR(0x1057) +#define COR_E_LOADING_REFERENCE_ASSEMBLY EMAKEHR(0x1058) +#define COR_E_NI_AND_RUNTIME_VERSION_MISMATCH EMAKEHR(0x1059) +#define COR_E_LOADING_WINMD_REFERENCE_ASSEMBLY EMAKEHR(0x1069) +#define CLDB_E_FILE_BADREAD EMAKEHR(0x1100) +#define CLDB_E_FILE_BADWRITE EMAKEHR(0x1101) +#define CLDB_E_FILE_READONLY EMAKEHR(0x1103) +#define CLDB_E_NAME_ERROR EMAKEHR(0x1105) +#define CLDB_E_TRUNCATION EMAKEHR(0x1106) +#define CLDB_E_FILE_OLDVER EMAKEHR(0x1107) +#define CLDB_E_RELOCATED EMAKEHR(0x1108) +#define CLDB_E_SMDUPLICATE EMAKEHR(0x110a) +#define CLDB_E_NO_DATA EMAKEHR(0x110b) +#define CLDB_E_READONLY EMAKEHR(0x110c) +#define CLDB_E_INCOMPATIBLE EMAKEHR(0x110d) +#define CLDB_E_FILE_CORRUPT EMAKEHR(0x110e) +#define CLDB_E_SCHEMA_VERNOTFOUND EMAKEHR(0x110f) +#define CLDB_E_BADUPDATEMODE EMAKEHR(0x1110) +#define CLDB_E_INDEX_NONULLKEYS EMAKEHR(0x1121) +#define CLDB_E_INDEX_DUPLICATE EMAKEHR(0x1122) +#define CLDB_E_INDEX_BADTYPE EMAKEHR(0x1123) +#define CLDB_E_INDEX_NOTFOUND EMAKEHR(0x1124) +#define CLDB_E_RECORD_NOTFOUND EMAKEHR(0x1130) +#define CLDB_E_RECORD_OVERFLOW EMAKEHR(0x1131) +#define CLDB_E_RECORD_DUPLICATE EMAKEHR(0x1132) +#define CLDB_E_RECORD_PKREQUIRED EMAKEHR(0x1133) +#define CLDB_E_RECORD_DELETED EMAKEHR(0x1134) +#define CLDB_E_RECORD_OUTOFORDER EMAKEHR(0x1135) +#define CLDB_E_COLUMN_OVERFLOW EMAKEHR(0x1140) +#define CLDB_E_COLUMN_READONLY EMAKEHR(0x1141) +#define CLDB_E_COLUMN_SPECIALCOL EMAKEHR(0x1142) +#define CLDB_E_COLUMN_PKNONULLS EMAKEHR(0x1143) +#define CLDB_E_TABLE_CANTDROP EMAKEHR(0x1150) +#define CLDB_E_OBJECT_NOTFOUND EMAKEHR(0x1151) +#define CLDB_E_OBJECT_COLNOTFOUND EMAKEHR(0x1152) +#define CLDB_E_VECTOR_BADINDEX EMAKEHR(0x1153) +#define CLDB_E_TOO_BIG EMAKEHR(0x1154) +#define META_E_INVALID_TOKEN_TYPE EMAKEHR(0x115f) +#define TLBX_E_INVALID_TYPEINFO EMAKEHR(0x1160) +#define TLBX_E_INVALID_TYPEINFO_UNNAMED EMAKEHR(0x1161) +#define TLBX_E_CTX_NESTED EMAKEHR(0x1162) +#define TLBX_E_ERROR_MESSAGE EMAKEHR(0x1163) +#define TLBX_E_CANT_SAVE EMAKEHR(0x1164) +#define TLBX_W_LIBNOTREGISTERED EMAKEHR(0x1165) +#define TLBX_E_CANTLOADLIBRARY EMAKEHR(0x1166) +#define TLBX_E_BAD_VT_TYPE EMAKEHR(0x1167) +#define TLBX_E_NO_MSCOREE_TLB EMAKEHR(0x1168) +#define TLBX_E_BAD_MSCOREE_TLB EMAKEHR(0x1169) +#define TLBX_E_TLB_EXCEPTION EMAKEHR(0x116a) +#define TLBX_E_MULTIPLE_LCIDS EMAKEHR(0x116b) +#define TLBX_E_AMBIGUOUS_RETURN EMAKEHR(0x116d) +#define TLBX_E_DUPLICATE_TYPE_NAME EMAKEHR(0x116e) +#define TLBX_I_NONSEQUENTIALSTRUCT EMAKEHR(0x1172) +#define TLBX_I_RESOLVEREFFAILED EMAKEHR(0x1174) +#define TLBX_E_ASANY EMAKEHR(0x1175) +#define TLBX_E_INVALIDLCIDPARAM EMAKEHR(0x1176) +#define TLBX_E_LCIDONDISPONLYITF EMAKEHR(0x1177) +#define TLBX_E_NONPUBLIC_FIELD EMAKEHR(0x1178) +#define TLBX_E_BAD_NAMES EMAKEHR(0x117b) +#define TLBX_E_GENERICINST_SIGNATURE EMAKEHR(0x117d) +#define TLBX_E_GENERICPAR_SIGNATURE EMAKEHR(0x117e) +#define META_E_DUPLICATE EMAKEHR(0x1180) +#define META_E_GUID_REQUIRED EMAKEHR(0x1181) +#define META_E_TYPEDEF_MISMATCH EMAKEHR(0x1182) +#define META_E_MERGE_COLLISION EMAKEHR(0x1183) +#define TLBX_E_NO_SAFEHANDLE_ARRAYS EMAKEHR(0x1186) +#define META_E_METHD_NOT_FOUND EMAKEHR(0x1187) +#define META_E_FIELD_NOT_FOUND EMAKEHR(0x1188) +#define META_E_PARAM_MISMATCH EMAKEHR(0x1189) +#define META_E_BADMETADATA EMAKEHR(0x118a) +#define META_E_INTFCEIMPL_NOT_FOUND EMAKEHR(0x118b) +#define TLBX_E_NO_CRITICALHANDLE_ARRAYS EMAKEHR(0x118c) +#define META_E_CLASS_LAYOUT_INCONSISTENT EMAKEHR(0x118d) +#define META_E_FIELD_MARSHAL_NOT_FOUND EMAKEHR(0x118e) +#define META_E_METHODSEM_NOT_FOUND EMAKEHR(0x118f) +#define META_E_EVENT_NOT_FOUND EMAKEHR(0x1190) +#define META_E_PROP_NOT_FOUND EMAKEHR(0x1191) +#define META_E_BAD_SIGNATURE EMAKEHR(0x1192) +#define META_E_BAD_INPUT_PARAMETER EMAKEHR(0x1193) +#define META_E_METHDIMPL_INCONSISTENT EMAKEHR(0x1194) +#define META_E_MD_INCONSISTENCY EMAKEHR(0x1195) +#define META_E_CANNOTRESOLVETYPEREF EMAKEHR(0x1196) +#define META_E_STRINGSPACE_FULL EMAKEHR(0x1198) +#define META_E_UNEXPECTED_REMAP EMAKEHR(0x1199) +#define META_E_HAS_UNMARKALL EMAKEHR(0x119a) +#define META_E_MUST_CALL_UNMARKALL EMAKEHR(0x119b) +#define META_E_GENERICPARAM_INCONSISTENT EMAKEHR(0x119c) +#define META_E_EVENT_COUNTS EMAKEHR(0x119d) +#define META_E_PROPERTY_COUNTS EMAKEHR(0x119e) +#define META_E_TYPEDEF_MISSING EMAKEHR(0x119f) +#define TLBX_E_CANT_LOAD_MODULE EMAKEHR(0x11a0) +#define TLBX_E_CANT_LOAD_CLASS EMAKEHR(0x11a1) +#define TLBX_E_NULL_MODULE EMAKEHR(0x11a2) +#define TLBX_E_NO_CLSID_KEY EMAKEHR(0x11a3) +#define TLBX_E_CIRCULAR_EXPORT EMAKEHR(0x11a4) +#define TLBX_E_CIRCULAR_IMPORT EMAKEHR(0x11a5) +#define TLBX_E_BAD_NATIVETYPE EMAKEHR(0x11a6) +#define TLBX_E_BAD_VTABLE EMAKEHR(0x11a7) +#define TLBX_E_CRM_NON_STATIC EMAKEHR(0x11a8) +#define TLBX_E_CRM_INVALID_SIG EMAKEHR(0x11a9) +#define TLBX_E_CLASS_LOAD_EXCEPTION EMAKEHR(0x11aa) +#define TLBX_E_UNKNOWN_SIGNATURE EMAKEHR(0x11ab) +#define TLBX_E_REFERENCED_TYPELIB EMAKEHR(0x11ac) +#define TLBX_E_INVALID_NAMESPACE EMAKEHR(0x11ad) +#define TLBX_E_LAYOUT_ERROR EMAKEHR(0x11ae) +#define TLBX_E_NOTIUNKNOWN EMAKEHR(0x11af) +#define TLBX_E_NONVISIBLEVALUECLASS EMAKEHR(0x11b0) +#define TLBX_E_LPTSTR_NOT_ALLOWED EMAKEHR(0x11b1) +#define TLBX_E_AUTO_CS_NOT_ALLOWED EMAKEHR(0x11b2) +#define TLBX_E_ENUM_VALUE_INVALID EMAKEHR(0x11b5) +#define TLBX_E_DUPLICATE_IID EMAKEHR(0x11b6) +#define TLBX_E_NO_NESTED_ARRAYS EMAKEHR(0x11b7) +#define TLBX_E_PARAM_ERROR_NAMED EMAKEHR(0x11b8) +#define TLBX_E_PARAM_ERROR_UNNAMED EMAKEHR(0x11b9) +#define TLBX_E_AGNOST_SIGNATURE EMAKEHR(0x11ba) +#define TLBX_E_CONVERT_FAIL EMAKEHR(0x11bb) +#define TLBX_W_DUAL_NOT_DISPATCH EMAKEHR(0x11bc) +#define TLBX_E_BAD_SIGNATURE EMAKEHR(0x11bd) +#define TLBX_E_ARRAY_NEEDS_NT_FIXED EMAKEHR(0x11be) +#define TLBX_E_CLASS_NEEDS_NT_INTF EMAKEHR(0x11bf) +#define META_E_CA_INVALID_TARGET EMAKEHR(0x11c0) +#define META_E_CA_INVALID_VALUE EMAKEHR(0x11c1) +#define META_E_CA_INVALID_BLOB EMAKEHR(0x11c2) +#define META_E_CA_REPEATED_ARG EMAKEHR(0x11c3) +#define META_E_CA_UNKNOWN_ARGUMENT EMAKEHR(0x11c4) +#define META_E_CA_VARIANT_NYI EMAKEHR(0x11c5) +#define META_E_CA_ARRAY_NYI EMAKEHR(0x11c6) +#define META_E_CA_UNEXPECTED_TYPE EMAKEHR(0x11c7) +#define META_E_CA_INVALID_ARGTYPE EMAKEHR(0x11c8) +#define META_E_CA_INVALID_ARG_FOR_TYPE EMAKEHR(0x11c9) +#define META_E_CA_INVALID_UUID EMAKEHR(0x11ca) +#define META_E_CA_INVALID_MARSHALAS_FIELDS EMAKEHR(0x11cb) +#define META_E_CA_NT_FIELDONLY EMAKEHR(0x11cc) +#define META_E_CA_NEGATIVE_PARAMINDEX EMAKEHR(0x11cd) +#define META_E_CA_NEGATIVE_MULTIPLIER EMAKEHR(0x11ce) +#define META_E_CA_NEGATIVE_CONSTSIZE EMAKEHR(0x11cf) +#define META_E_CA_FIXEDSTR_SIZE_REQUIRED EMAKEHR(0x11d0) +#define META_E_CA_CUSTMARSH_TYPE_REQUIRED EMAKEHR(0x11d1) +#define META_E_CA_FILENAME_REQUIRED EMAKEHR(0x11d2) +#define TLBX_W_NO_PROPS_IN_EVENTS EMAKEHR(0x11d3) +#define META_E_NOT_IN_ENC_MODE EMAKEHR(0x11d4) +#define META_E_METHOD_COUNTS EMAKEHR(0x11d6) +#define META_E_FIELD_COUNTS EMAKEHR(0x11d7) +#define META_E_PARAM_COUNTS EMAKEHR(0x11d8) +#define TLBX_E_TYPED_REF EMAKEHR(0x11da) +#define TLBX_E_BITNESS_MISMATCH EMAKEHR(0x11e1) +#define TLBX_E_EVENT_WITH_NEWENUM EMAKEHR(0x11e2) +#define TLBX_E_PROPGET_WITHOUT_RETURN EMAKEHR(0x11e3) +#define META_E_MISMATCHED_VISIBLITY EMAKEHR(0x11e4) +#define META_E_CA_BAD_FRIENDS_ARGS EMAKEHR(0x11e5) +#define META_E_CA_FRIENDS_SN_REQUIRED EMAKEHR(0x11e6) +#define VLDTR_E_RID_OUTOFRANGE EMAKEHR(0x1203) +#define VLDTR_E_CDTKN_OUTOFRANGE EMAKEHR(0x1204) +#define VLDTR_E_CDRID_OUTOFRANGE EMAKEHR(0x1205) +#define VLDTR_E_STRING_INVALID EMAKEHR(0x1206) +#define VLDTR_E_GUID_INVALID EMAKEHR(0x1207) +#define VLDTR_E_BLOB_INVALID EMAKEHR(0x1208) +#define VLDTR_E_MOD_MULTI EMAKEHR(0x1209) +#define VLDTR_E_MOD_NULLMVID EMAKEHR(0x120a) +#define VLDTR_E_TR_NAMENULL EMAKEHR(0x120b) +#define VLDTR_E_TR_DUP EMAKEHR(0x120c) +#define VLDTR_E_TD_NAMENULL EMAKEHR(0x120d) +#define VLDTR_E_TD_DUPNAME EMAKEHR(0x120e) +#define VLDTR_E_TD_DUPGUID EMAKEHR(0x120f) +#define VLDTR_E_TD_NOTIFACEOBJEXTNULL EMAKEHR(0x1210) +#define VLDTR_E_TD_OBJEXTENDSNONNULL EMAKEHR(0x1211) +#define VLDTR_E_TD_EXTENDSSEALED EMAKEHR(0x1212) +#define VLDTR_E_TD_DLTNORTSPCL EMAKEHR(0x1213) +#define VLDTR_E_TD_RTSPCLNOTDLT EMAKEHR(0x1214) +#define VLDTR_E_MI_DECLPRIV EMAKEHR(0x1215) +#define VLDTR_E_AS_BADNAME EMAKEHR(0x1216) +#define VLDTR_E_FILE_SYSNAME EMAKEHR(0x1217) +#define VLDTR_E_MI_BODYSTATIC EMAKEHR(0x1218) +#define VLDTR_E_TD_IFACENOTABS EMAKEHR(0x1219) +#define VLDTR_E_TD_IFACEPARNOTNIL EMAKEHR(0x121a) +#define VLDTR_E_TD_IFACEGUIDNULL EMAKEHR(0x121b) +#define VLDTR_E_MI_DECLFINAL EMAKEHR(0x121c) +#define VLDTR_E_TD_VTNOTSEAL EMAKEHR(0x121d) +#define VLDTR_E_PD_BADFLAGS EMAKEHR(0x121e) +#define VLDTR_E_IFACE_DUP EMAKEHR(0x121f) +#define VLDTR_E_MR_NAMENULL EMAKEHR(0x1220) +#define VLDTR_E_MR_VTBLNAME EMAKEHR(0x1221) +#define VLDTR_E_MR_DELNAME EMAKEHR(0x1222) +#define VLDTR_E_MR_PARNIL EMAKEHR(0x1223) +#define VLDTR_E_MR_BADCALLINGCONV EMAKEHR(0x1224) +#define VLDTR_E_MR_NOTVARARG EMAKEHR(0x1225) +#define VLDTR_E_MR_NAMEDIFF EMAKEHR(0x1226) +#define VLDTR_E_MR_SIGDIFF EMAKEHR(0x1227) +#define VLDTR_E_MR_DUP EMAKEHR(0x1228) +#define VLDTR_E_CL_TDAUTO EMAKEHR(0x1229) +#define VLDTR_E_CL_BADPCKSZ EMAKEHR(0x122a) +#define VLDTR_E_CL_DUP EMAKEHR(0x122b) +#define VLDTR_E_FL_BADOFFSET EMAKEHR(0x122c) +#define VLDTR_E_FL_TDNIL EMAKEHR(0x122d) +#define VLDTR_E_FL_NOCL EMAKEHR(0x122e) +#define VLDTR_E_FL_TDNOTEXPLCT EMAKEHR(0x122f) +#define VLDTR_E_FL_FLDSTATIC EMAKEHR(0x1230) +#define VLDTR_E_FL_DUP EMAKEHR(0x1231) +#define VLDTR_E_MODREF_NAMENULL EMAKEHR(0x1232) +#define VLDTR_E_MODREF_DUP EMAKEHR(0x1233) +#define VLDTR_E_TR_BADSCOPE EMAKEHR(0x1234) +#define VLDTR_E_TD_NESTEDNOENCL EMAKEHR(0x1235) +#define VLDTR_E_TD_EXTTRRES EMAKEHR(0x1236) +#define VLDTR_E_SIGNULL EMAKEHR(0x1237) +#define VLDTR_E_SIGNODATA EMAKEHR(0x1238) +#define VLDTR_E_MD_BADCALLINGCONV EMAKEHR(0x1239) +#define VLDTR_E_MD_THISSTATIC EMAKEHR(0x123a) +#define VLDTR_E_MD_NOTTHISNOTSTATIC EMAKEHR(0x123b) +#define VLDTR_E_MD_NOARGCNT EMAKEHR(0x123c) +#define VLDTR_E_SIG_MISSELTYPE EMAKEHR(0x123d) +#define VLDTR_E_SIG_MISSTKN EMAKEHR(0x123e) +#define VLDTR_E_SIG_TKNBAD EMAKEHR(0x123f) +#define VLDTR_E_SIG_MISSFPTR EMAKEHR(0x1240) +#define VLDTR_E_SIG_MISSFPTRARGCNT EMAKEHR(0x1241) +#define VLDTR_E_SIG_MISSRANK EMAKEHR(0x1242) +#define VLDTR_E_SIG_MISSNSIZE EMAKEHR(0x1243) +#define VLDTR_E_SIG_MISSSIZE EMAKEHR(0x1244) +#define VLDTR_E_SIG_MISSNLBND EMAKEHR(0x1245) +#define VLDTR_E_SIG_MISSLBND EMAKEHR(0x1246) +#define VLDTR_E_SIG_BADELTYPE EMAKEHR(0x1247) +#define VLDTR_E_SIG_MISSVASIZE EMAKEHR(0x1248) +#define VLDTR_E_FD_BADCALLINGCONV EMAKEHR(0x1249) +#define VLDTR_E_MD_NAMENULL EMAKEHR(0x124a) +#define VLDTR_E_MD_PARNIL EMAKEHR(0x124b) +#define VLDTR_E_MD_DUP EMAKEHR(0x124c) +#define VLDTR_E_FD_NAMENULL EMAKEHR(0x124d) +#define VLDTR_E_FD_PARNIL EMAKEHR(0x124e) +#define VLDTR_E_FD_DUP EMAKEHR(0x124f) +#define VLDTR_E_AS_MULTI EMAKEHR(0x1250) +#define VLDTR_E_AS_NAMENULL EMAKEHR(0x1251) +#define VLDTR_E_SIG_TOKTYPEMISMATCH EMAKEHR(0x1252) +#define VLDTR_E_CL_TDINTF EMAKEHR(0x1253) +#define VLDTR_E_ASOS_OSPLTFRMIDINVAL EMAKEHR(0x1254) +#define VLDTR_E_AR_NAMENULL EMAKEHR(0x1255) +#define VLDTR_E_TD_ENCLNOTNESTED EMAKEHR(0x1256) +#define VLDTR_E_AROS_OSPLTFRMIDINVAL EMAKEHR(0x1257) +#define VLDTR_E_FILE_NAMENULL EMAKEHR(0x1258) +#define VLDTR_E_CT_NAMENULL EMAKEHR(0x1259) +#define VLDTR_E_TD_EXTENDSCHILD EMAKEHR(0x125a) +#define VLDTR_E_MAR_NAMENULL EMAKEHR(0x125b) +#define VLDTR_E_FILE_DUP EMAKEHR(0x125c) +#define VLDTR_E_FILE_NAMEFULLQLFD EMAKEHR(0x125d) +#define VLDTR_E_CT_DUP EMAKEHR(0x125e) +#define VLDTR_E_MAR_DUP EMAKEHR(0x125f) +#define VLDTR_E_MAR_NOTPUBPRIV EMAKEHR(0x1260) +#define VLDTR_E_TD_ENUMNOVALUE EMAKEHR(0x1261) +#define VLDTR_E_TD_ENUMVALSTATIC EMAKEHR(0x1262) +#define VLDTR_E_TD_ENUMVALNOTSN EMAKEHR(0x1263) +#define VLDTR_E_TD_ENUMFLDNOTST EMAKEHR(0x1264) +#define VLDTR_E_TD_ENUMFLDNOTLIT EMAKEHR(0x1265) +#define VLDTR_E_TD_ENUMNOLITFLDS EMAKEHR(0x1266) +#define VLDTR_E_TD_ENUMFLDSIGMISMATCH EMAKEHR(0x1267) +#define VLDTR_E_TD_ENUMVALNOT1ST EMAKEHR(0x1268) +#define VLDTR_E_FD_NOTVALUERTSN EMAKEHR(0x1269) +#define VLDTR_E_FD_VALUEPARNOTENUM EMAKEHR(0x126a) +#define VLDTR_E_FD_INSTINIFACE EMAKEHR(0x126b) +#define VLDTR_E_FD_NOTPUBINIFACE EMAKEHR(0x126c) +#define VLDTR_E_FMD_GLOBALNOTPUBPRIVSC EMAKEHR(0x126d) +#define VLDTR_E_FMD_GLOBALNOTSTATIC EMAKEHR(0x126e) +#define VLDTR_E_FD_GLOBALNORVA EMAKEHR(0x126f) +#define VLDTR_E_MD_CTORZERORVA EMAKEHR(0x1270) +#define VLDTR_E_FD_MARKEDNOMARSHAL EMAKEHR(0x1271) +#define VLDTR_E_FD_MARSHALNOTMARKED EMAKEHR(0x1272) +#define VLDTR_E_FD_MARKEDNODEFLT EMAKEHR(0x1273) +#define VLDTR_E_FD_DEFLTNOTMARKED EMAKEHR(0x1274) +#define VLDTR_E_FMD_MARKEDNOSECUR EMAKEHR(0x1275) +#define VLDTR_E_FMD_SECURNOTMARKED EMAKEHR(0x1276) +#define VLDTR_E_FMD_PINVOKENOTSTATIC EMAKEHR(0x1277) +#define VLDTR_E_FMD_MARKEDNOPINVOKE EMAKEHR(0x1278) +#define VLDTR_E_FMD_PINVOKENOTMARKED EMAKEHR(0x1279) +#define VLDTR_E_FMD_BADIMPLMAP EMAKEHR(0x127a) +#define VLDTR_E_IMAP_BADMODREF EMAKEHR(0x127b) +#define VLDTR_E_IMAP_BADMEMBER EMAKEHR(0x127c) +#define VLDTR_E_IMAP_BADIMPORTNAME EMAKEHR(0x127d) +#define VLDTR_E_IMAP_BADCALLCONV EMAKEHR(0x127e) +#define VLDTR_E_FMD_BADACCESSFLAG EMAKEHR(0x127f) +#define VLDTR_E_FD_INITONLYANDLITERAL EMAKEHR(0x1280) +#define VLDTR_E_FD_LITERALNOTSTATIC EMAKEHR(0x1281) +#define VLDTR_E_FMD_RTSNNOTSN EMAKEHR(0x1282) +#define VLDTR_E_MD_ABSTPARNOTABST EMAKEHR(0x1283) +#define VLDTR_E_MD_NOTSTATABSTININTF EMAKEHR(0x1284) +#define VLDTR_E_MD_NOTPUBININTF EMAKEHR(0x1285) +#define VLDTR_E_MD_CTORININTF EMAKEHR(0x1286) +#define VLDTR_E_MD_GLOBALCTORCCTOR EMAKEHR(0x1287) +#define VLDTR_E_MD_CTORSTATIC EMAKEHR(0x1288) +#define VLDTR_E_MD_CTORNOTSNRTSN EMAKEHR(0x1289) +#define VLDTR_E_MD_CTORVIRT EMAKEHR(0x128a) +#define VLDTR_E_MD_CTORABST EMAKEHR(0x128b) +#define VLDTR_E_MD_CCTORNOTSTATIC EMAKEHR(0x128c) +#define VLDTR_E_MD_ZERORVA EMAKEHR(0x128d) +#define VLDTR_E_MD_FINNOTVIRT EMAKEHR(0x128e) +#define VLDTR_E_MD_STATANDFINORVIRT EMAKEHR(0x128f) +#define VLDTR_E_MD_ABSTANDFINAL EMAKEHR(0x1290) +#define VLDTR_E_MD_ABSTANDIMPL EMAKEHR(0x1291) +#define VLDTR_E_MD_ABSTANDPINVOKE EMAKEHR(0x1292) +#define VLDTR_E_MD_ABSTNOTVIRT EMAKEHR(0x1293) +#define VLDTR_E_MD_NOTABSTNOTIMPL EMAKEHR(0x1294) +#define VLDTR_E_MD_NOTABSTBADFLAGSRVA EMAKEHR(0x1295) +#define VLDTR_E_MD_PRIVSCOPENORVA EMAKEHR(0x1296) +#define VLDTR_E_MD_GLOBALABSTORVIRT EMAKEHR(0x1297) +#define VLDTR_E_SIG_LONGFORM EMAKEHR(0x1298) +#define VLDTR_E_MD_MULTIPLESEMANTICS EMAKEHR(0x1299) +#define VLDTR_E_MD_INVALIDSEMANTICS EMAKEHR(0x129a) +#define VLDTR_E_MD_SEMANTICSNOTEXIST EMAKEHR(0x129b) +#define VLDTR_E_MI_DECLNOTVIRT EMAKEHR(0x129c) +#define VLDTR_E_FMD_GLOBALITEM EMAKEHR(0x129d) +#define VLDTR_E_MD_MULTSEMANTICFLAGS EMAKEHR(0x129e) +#define VLDTR_E_MD_NOSEMANTICFLAGS EMAKEHR(0x129f) +#define VLDTR_E_FD_FLDINIFACE EMAKEHR(0x12a0) +#define VLDTR_E_AS_HASHALGID EMAKEHR(0x12a1) +#define VLDTR_E_AS_PROCID EMAKEHR(0x12a2) +#define VLDTR_E_AR_PROCID EMAKEHR(0x12a3) +#define VLDTR_E_CN_PARENTRANGE EMAKEHR(0x12a4) +#define VLDTR_E_AS_BADFLAGS EMAKEHR(0x12a5) +#define VLDTR_E_TR_HASTYPEDEF EMAKEHR(0x12a6) +#define VLDTR_E_IFACE_BADIMPL EMAKEHR(0x12a7) +#define VLDTR_E_IFACE_BADIFACE EMAKEHR(0x12a8) +#define VLDTR_E_TD_SECURNOTMARKED EMAKEHR(0x12a9) +#define VLDTR_E_TD_MARKEDNOSECUR EMAKEHR(0x12aa) +#define VLDTR_E_MD_CCTORHASARGS EMAKEHR(0x12ab) +#define VLDTR_E_CT_BADIMPL EMAKEHR(0x12ac) +#define VLDTR_E_MI_ALIENBODY EMAKEHR(0x12ad) +#define VLDTR_E_MD_CCTORCALLCONV EMAKEHR(0x12ae) +#define VLDTR_E_MI_BADCLASS EMAKEHR(0x12af) +#define VLDTR_E_MI_CLASSISINTF EMAKEHR(0x12b0) +#define VLDTR_E_MI_BADDECL EMAKEHR(0x12b1) +#define VLDTR_E_MI_BADBODY EMAKEHR(0x12b2) +#define VLDTR_E_MI_DUP EMAKEHR(0x12b3) +#define VLDTR_E_FD_BADPARENT EMAKEHR(0x12b4) +#define VLDTR_E_MD_PARAMOUTOFSEQ EMAKEHR(0x12b5) +#define VLDTR_E_MD_PARASEQTOOBIG EMAKEHR(0x12b6) +#define VLDTR_E_MD_PARMMARKEDNOMARSHAL EMAKEHR(0x12b7) +#define VLDTR_E_MD_PARMMARSHALNOTMARKED EMAKEHR(0x12b8) +#define VLDTR_E_MD_PARMMARKEDNODEFLT EMAKEHR(0x12ba) +#define VLDTR_E_MD_PARMDEFLTNOTMARKED EMAKEHR(0x12bb) +#define VLDTR_E_PR_BADSCOPE EMAKEHR(0x12bc) +#define VLDTR_E_PR_NONAME EMAKEHR(0x12bd) +#define VLDTR_E_PR_NOSIG EMAKEHR(0x12be) +#define VLDTR_E_PR_DUP EMAKEHR(0x12bf) +#define VLDTR_E_PR_BADCALLINGCONV EMAKEHR(0x12c0) +#define VLDTR_E_PR_MARKEDNODEFLT EMAKEHR(0x12c1) +#define VLDTR_E_PR_DEFLTNOTMARKED EMAKEHR(0x12c2) +#define VLDTR_E_PR_BADSEMANTICS EMAKEHR(0x12c3) +#define VLDTR_E_PR_BADMETHOD EMAKEHR(0x12c4) +#define VLDTR_E_PR_ALIENMETHOD EMAKEHR(0x12c5) +#define VLDTR_E_CN_BLOBNOTNULL EMAKEHR(0x12c6) +#define VLDTR_E_CN_BLOBNULL EMAKEHR(0x12c7) +#define VLDTR_E_EV_BADSCOPE EMAKEHR(0x12c8) +#define VLDTR_E_EV_NONAME EMAKEHR(0x12ca) +#define VLDTR_E_EV_DUP EMAKEHR(0x12cb) +#define VLDTR_E_EV_BADEVTYPE EMAKEHR(0x12cc) +#define VLDTR_E_EV_EVTYPENOTCLASS EMAKEHR(0x12cd) +#define VLDTR_E_EV_BADSEMANTICS EMAKEHR(0x12ce) +#define VLDTR_E_EV_BADMETHOD EMAKEHR(0x12cf) +#define VLDTR_E_EV_ALIENMETHOD EMAKEHR(0x12d0) +#define VLDTR_E_EV_NOADDON EMAKEHR(0x12d1) +#define VLDTR_E_EV_NOREMOVEON EMAKEHR(0x12d2) +#define VLDTR_E_CT_DUPTDNAME EMAKEHR(0x12d3) +#define VLDTR_E_MAR_BADOFFSET EMAKEHR(0x12d4) +#define VLDTR_E_DS_BADOWNER EMAKEHR(0x12d5) +#define VLDTR_E_DS_BADFLAGS EMAKEHR(0x12d6) +#define VLDTR_E_DS_NOBLOB EMAKEHR(0x12d7) +#define VLDTR_E_MAR_BADIMPL EMAKEHR(0x12d8) +#define VLDTR_E_MR_VARARGCALLINGCONV EMAKEHR(0x12da) +#define VLDTR_E_MD_CTORNOTVOID EMAKEHR(0x12db) +#define VLDTR_E_EV_FIRENOTVOID EMAKEHR(0x12dc) +#define VLDTR_E_AS_BADLOCALE EMAKEHR(0x12dd) +#define VLDTR_E_CN_PARENTTYPE EMAKEHR(0x12de) +#define VLDTR_E_SIG_SENTINMETHODDEF EMAKEHR(0x12df) +#define VLDTR_E_SIG_SENTMUSTVARARG EMAKEHR(0x12e0) +#define VLDTR_E_SIG_MULTSENTINELS EMAKEHR(0x12e1) +#define VLDTR_E_SIG_LASTSENTINEL EMAKEHR(0x12e2) +#define VLDTR_E_SIG_MISSARG EMAKEHR(0x12e3) +#define VLDTR_E_SIG_BYREFINFIELD EMAKEHR(0x12e4) +#define VLDTR_E_MD_SYNCMETHODINVTYPE EMAKEHR(0x12e5) +#define VLDTR_E_TD_NAMETOOLONG EMAKEHR(0x12e6) +#define VLDTR_E_AS_PROCDUP EMAKEHR(0x12e7) +#define VLDTR_E_ASOS_DUP EMAKEHR(0x12e8) +#define VLDTR_E_MAR_BADFLAGS EMAKEHR(0x12e9) +#define VLDTR_E_CT_NOTYPEDEFID EMAKEHR(0x12ea) +#define VLDTR_E_FILE_BADFLAGS EMAKEHR(0x12eb) +#define VLDTR_E_FILE_NULLHASH EMAKEHR(0x12ec) +#define VLDTR_E_MOD_NONAME EMAKEHR(0x12ed) +#define VLDTR_E_MOD_NAMEFULLQLFD EMAKEHR(0x12ee) +#define VLDTR_E_TD_RTSPCLNOTSPCL EMAKEHR(0x12ef) +#define VLDTR_E_TD_EXTENDSIFACE EMAKEHR(0x12f0) +#define VLDTR_E_MD_CTORPINVOKE EMAKEHR(0x12f1) +#define VLDTR_E_TD_SYSENUMNOTCLASS EMAKEHR(0x12f2) +#define VLDTR_E_TD_SYSENUMNOTEXTVTYPE EMAKEHR(0x12f3) +#define VLDTR_E_MI_SIGMISMATCH EMAKEHR(0x12f4) +#define VLDTR_E_TD_ENUMHASMETHODS EMAKEHR(0x12f5) +#define VLDTR_E_TD_ENUMIMPLIFACE EMAKEHR(0x12f6) +#define VLDTR_E_TD_ENUMHASPROP EMAKEHR(0x12f7) +#define VLDTR_E_TD_ENUMHASEVENT EMAKEHR(0x12f8) +#define VLDTR_E_TD_BADMETHODLST EMAKEHR(0x12f9) +#define VLDTR_E_TD_BADFIELDLST EMAKEHR(0x12fa) +#define VLDTR_E_CN_BADTYPE EMAKEHR(0x12fb) +#define VLDTR_E_TD_ENUMNOINSTFLD EMAKEHR(0x12fc) +#define VLDTR_E_TD_ENUMMULINSTFLD EMAKEHR(0x12fd) +#define VLDTR_E_INTERRUPTED EMAKEHR(0x12fe) +#define VLDTR_E_NOTINIT EMAKEHR(0x12ff) +#define CORDBG_E_UNRECOVERABLE_ERROR EMAKEHR(0x1300) +#define CORDBG_E_PROCESS_TERMINATED EMAKEHR(0x1301) +#define CORDBG_E_PROCESS_NOT_SYNCHRONIZED EMAKEHR(0x1302) +#define CORDBG_E_CLASS_NOT_LOADED EMAKEHR(0x1303) +#define CORDBG_E_IL_VAR_NOT_AVAILABLE EMAKEHR(0x1304) +#define CORDBG_E_BAD_REFERENCE_VALUE EMAKEHR(0x1305) +#define CORDBG_E_FIELD_NOT_AVAILABLE EMAKEHR(0x1306) +#define CORDBG_E_NON_NATIVE_FRAME EMAKEHR(0x1307) +#define CORDBG_E_NONCONTINUABLE_EXCEPTION EMAKEHR(0x1308) +#define CORDBG_E_CODE_NOT_AVAILABLE EMAKEHR(0x1309) +#define CORDBG_E_FUNCTION_NOT_IL EMAKEHR(0x130a) +#define CORDBG_E_CANT_SET_IP_INTO_FINALLY EMAKEHR(0x130e) +#define CORDBG_E_CANT_SET_IP_OUT_OF_FINALLY EMAKEHR(0x130f) +#define CORDBG_E_CANT_SET_IP_INTO_CATCH EMAKEHR(0x1310) +#define CORDBG_E_SET_IP_NOT_ALLOWED_ON_NONLEAF_FRAME EMAKEHR(0x1311) +#define CORDBG_E_SET_IP_IMPOSSIBLE EMAKEHR(0x1312) +#define CORDBG_E_FUNC_EVAL_BAD_START_POINT EMAKEHR(0x1313) +#define CORDBG_E_INVALID_OBJECT EMAKEHR(0x1314) +#define CORDBG_E_FUNC_EVAL_NOT_COMPLETE EMAKEHR(0x1315) +#define CORDBG_E_INPROC_NOT_IMPL EMAKEHR(0x1318) +#define CORDBG_E_STATIC_VAR_NOT_AVAILABLE EMAKEHR(0x131a) +#define CORDBG_E_OBJECT_IS_NOT_COPYABLE_VALUE_CLASS EMAKEHR(0x131b) +#define CORDBG_E_CANT_SETIP_INTO_OR_OUT_OF_FILTER EMAKEHR(0x131c) +#define CORDBG_E_CANT_CHANGE_JIT_SETTING_FOR_ZAP_MODULE EMAKEHR(0x131d) +#define CORDBG_E_CANT_SET_IP_OUT_OF_FINALLY_ON_WIN64 EMAKEHR(0x131e) +#define CORDBG_E_CANT_SET_IP_OUT_OF_CATCH_ON_WIN64 EMAKEHR(0x131f) +#define CORDBG_E_REMOTE_CONNECTION_CONN_RESET EMAKEHR(0x1320) +#define CORDBG_E_REMOTE_CONNECTION_KEEP_ALIVE EMAKEHR(0x1321) +#define CORDBG_E_REMOTE_CONNECTION_FATAL_ERROR EMAKEHR(0x1322) +#define CORDBG_E_CANT_SET_TO_JMC EMAKEHR(0x1323) +#define CORDBG_E_NO_CONTEXT_FOR_INTERNAL_FRAME EMAKEHR(0x1325) +#define CORDBG_E_NOT_CHILD_FRAME EMAKEHR(0x1326) +#define CORDBG_E_NON_MATCHING_CONTEXT EMAKEHR(0x1327) +#define CORDBG_E_PAST_END_OF_STACK EMAKEHR(0x1328) +#define CORDBG_E_FUNC_EVAL_CANNOT_UPDATE_REGISTER_IN_NONLEAF_FRAME EMAKEHR(0x1329) +#define CORDBG_E_BAD_THREAD_STATE EMAKEHR(0x132d) +#define CORDBG_E_DEBUGGER_ALREADY_ATTACHED EMAKEHR(0x132e) +#define CORDBG_E_SUPERFLOUS_CONTINUE EMAKEHR(0x132f) +#define CORDBG_E_SET_VALUE_NOT_ALLOWED_ON_NONLEAF_FRAME EMAKEHR(0x1330) +#define CORDBG_E_ENC_EH_MAX_NESTING_LEVEL_CANT_INCREASE EMAKEHR(0x1331) +#define CORDBG_E_ENC_MODULE_NOT_ENC_ENABLED EMAKEHR(0x1332) +#define CORDBG_E_SET_IP_NOT_ALLOWED_ON_EXCEPTION EMAKEHR(0x1333) +#define CORDBG_E_VARIABLE_IS_ACTUALLY_LITERAL EMAKEHR(0x1334) +#define CORDBG_E_PROCESS_DETACHED EMAKEHR(0x1335) +#define CORDBG_E_ENC_METHOD_SIG_CHANGED EMAKEHR(0x1336) +#define CORDBG_E_ENC_METHOD_NO_LOCAL_SIG EMAKEHR(0x1337) +#define CORDBG_E_ENC_CANT_ADD_FIELD_TO_VALUE_OR_LAYOUT_CLASS EMAKEHR(0x1338) +#define CORDBG_E_ENC_CANT_CHANGE_FIELD EMAKEHR(0x1339) +#define CORDBG_E_ENC_CANT_ADD_NON_PRIVATE_MEMBER EMAKEHR(0x133a) +#define CORDBG_E_FIELD_NOT_STATIC EMAKEHR(0x133b) +#define CORDBG_E_FIELD_NOT_INSTANCE EMAKEHR(0x133c) +#define CORDBG_E_ENC_ZAPPED_WITHOUT_ENC EMAKEHR(0x133d) +#define CORDBG_E_ENC_BAD_METHOD_INFO EMAKEHR(0x133e) +#define CORDBG_E_ENC_JIT_CANT_UPDATE EMAKEHR(0x133f) +#define CORDBG_E_ENC_MISSING_CLASS EMAKEHR(0x1340) +#define CORDBG_E_ENC_INTERNAL_ERROR EMAKEHR(0x1341) +#define CORDBG_E_ENC_HANGING_FIELD EMAKEHR(0x1342) +#define CORDBG_E_MODULE_NOT_LOADED EMAKEHR(0x1343) +#define CORDBG_E_ENC_CANT_CHANGE_SUPERCLASS EMAKEHR(0x1344) +#define CORDBG_E_UNABLE_TO_SET_BREAKPOINT EMAKEHR(0x1345) +#define CORDBG_E_DEBUGGING_NOT_POSSIBLE EMAKEHR(0x1346) +#define CORDBG_E_KERNEL_DEBUGGER_ENABLED EMAKEHR(0x1347) +#define CORDBG_E_KERNEL_DEBUGGER_PRESENT EMAKEHR(0x1348) +#define CORDBG_E_HELPER_THREAD_DEAD EMAKEHR(0x1349) +#define CORDBG_E_INTERFACE_INHERITANCE_CANT_CHANGE EMAKEHR(0x134a) +#define CORDBG_E_INCOMPATIBLE_PROTOCOL EMAKEHR(0x134b) +#define CORDBG_E_TOO_MANY_PROCESSES EMAKEHR(0x134c) +#define CORDBG_E_INTEROP_NOT_SUPPORTED EMAKEHR(0x134d) +#define CORDBG_E_NO_REMAP_BREAKPIONT EMAKEHR(0x134e) +#define CORDBG_E_OBJECT_NEUTERED EMAKEHR(0x134f) +#define CORPROF_E_FUNCTION_NOT_COMPILED EMAKEHR(0x1350) +#define CORPROF_E_DATAINCOMPLETE EMAKEHR(0x1351) +#define CORPROF_E_NOT_REJITABLE_METHODS EMAKEHR(0x1352) +#define CORPROF_E_CANNOT_UPDATE_METHOD EMAKEHR(0x1353) +#define CORPROF_E_FUNCTION_NOT_IL EMAKEHR(0x1354) +#define CORPROF_E_NOT_MANAGED_THREAD EMAKEHR(0x1355) +#define CORPROF_E_CALL_ONLY_FROM_INIT EMAKEHR(0x1356) +#define CORPROF_E_INPROC_NOT_ENABLED EMAKEHR(0x1357) +#define CORPROF_E_JITMAPS_NOT_ENABLED EMAKEHR(0x1358) +#define CORPROF_E_INPROC_ALREADY_BEGUN EMAKEHR(0x1359) +#define CORPROF_E_INPROC_NOT_AVAILABLE EMAKEHR(0x135a) +#define CORPROF_E_NOT_YET_AVAILABLE EMAKEHR(0x135b) +#define CORPROF_E_TYPE_IS_PARAMETERIZED EMAKEHR(0x135c) +#define CORPROF_E_FUNCTION_IS_PARAMETERIZED EMAKEHR(0x135d) +#define CORPROF_E_STACKSNAPSHOT_INVALID_TGT_THREAD EMAKEHR(0x135e) +#define CORPROF_E_STACKSNAPSHOT_UNMANAGED_CTX EMAKEHR(0x135f) +#define CORPROF_E_STACKSNAPSHOT_UNSAFE EMAKEHR(0x1360) +#define CORPROF_E_STACKSNAPSHOT_ABORTED EMAKEHR(0x1361) +#define CORPROF_E_LITERALS_HAVE_NO_ADDRESS EMAKEHR(0x1362) +#define CORPROF_E_UNSUPPORTED_CALL_SEQUENCE EMAKEHR(0x1363) +#define CORPROF_E_ASYNCHRONOUS_UNSAFE EMAKEHR(0x1364) +#define CORPROF_E_CLASSID_IS_ARRAY EMAKEHR(0x1365) +#define CORPROF_E_CLASSID_IS_COMPOSITE EMAKEHR(0x1366) +#define CORPROF_E_PROFILER_DETACHING EMAKEHR(0x1367) +#define CORPROF_E_PROFILER_NOT_ATTACHABLE EMAKEHR(0x1368) +#define CORPROF_E_UNRECOGNIZED_PIPE_MSG_FORMAT EMAKEHR(0x1369) +#define CORPROF_E_PROFILER_ALREADY_ACTIVE EMAKEHR(0x136a) +#define CORPROF_E_PROFILEE_INCOMPATIBLE_WITH_TRIGGER EMAKEHR(0x136b) +#define CORPROF_E_IPC_FAILED EMAKEHR(0x136c) +#define CORPROF_E_PROFILEE_PROCESS_NOT_FOUND EMAKEHR(0x136d) +#define CORPROF_E_CALLBACK3_REQUIRED EMAKEHR(0x136e) +#define CORPROF_E_UNSUPPORTED_FOR_ATTACHING_PROFILER EMAKEHR(0x136f) +#define CORPROF_E_IRREVERSIBLE_INSTRUMENTATION_PRESENT EMAKEHR(0x1370) +#define CORPROF_E_RUNTIME_UNINITIALIZED EMAKEHR(0x1371) +#define CORPROF_E_IMMUTABLE_FLAGS_SET EMAKEHR(0x1372) +#define CORPROF_E_PROFILER_NOT_YET_INITIALIZED EMAKEHR(0x1373) +#define CORPROF_E_INCONSISTENT_WITH_FLAGS EMAKEHR(0x1374) +#define CORPROF_E_PROFILER_CANCEL_ACTIVATION EMAKEHR(0x1375) +#define CORPROF_E_CONCURRENT_GC_NOT_PROFILABLE EMAKEHR(0x1376) +#define CORPROF_E_INCONSISTENT_FLAGS_WITH_HOST_PROTECTION_SETTING EMAKEHR(0x1377) +#define CORPROF_E_DEBUGGING_DISABLED EMAKEHR(0x1378) +#define CORPROF_E_TIMEOUT_WAITING_FOR_CONCURRENT_GC EMAKEHR(0x1379) +#define CORPROF_E_MODULE_IS_DYNAMIC EMAKEHR(0x137a) +#define CORPROF_E_CALLBACK4_REQUIRED EMAKEHR(0x137b) +#define CORPROF_E_REJIT_NOT_ENABLED EMAKEHR(0x137c) +#define CORPROF_E_ACTIVE_REJIT_REQUEST_NOT_FOUND EMAKEHR(0x137d) +#define CORPROF_E_FUNCTION_IS_COLLECTIBLE EMAKEHR(0x137e) +#define CORPROF_E_REJIT_REQUIRES_DISABLE_NGEN EMAKEHR(0x137f) +#define CORPROF_E_CALLBACK6_REQUIRED EMAKEHR(0x1380) +#define CORPROF_E_CALLBACK7_REQUIRED EMAKEHR(0x1382) +#define SECURITY_E_XML_TO_ASN_ENCODING EMAKEHR(0x1400) +#define SECURITY_E_INCOMPATIBLE_SHARE EMAKEHR(0x1401) +#define SECURITY_E_UNVERIFIABLE EMAKEHR(0x1402) +#define SECURITY_E_INCOMPATIBLE_EVIDENCE EMAKEHR(0x1403) +#define CORSEC_E_DECODE_SET EMAKEHR(0x1410) +#define CORSEC_E_ENCODE_SET EMAKEHR(0x1411) +#define CORSEC_E_UNSUPPORTED_FORMAT EMAKEHR(0x1412) +#define SN_CRYPTOAPI_CALL_FAILED EMAKEHR(0x1413) +#define CORSEC_E_CRYPTOAPI_CALL_FAILED EMAKEHR(0x1413) +#define SN_NO_SUITABLE_CSP EMAKEHR(0x1414) +#define CORSEC_E_NO_SUITABLE_CSP EMAKEHR(0x1414) +#define CORSEC_E_INVALID_ATTR EMAKEHR(0x1415) +#define CORSEC_E_POLICY_EXCEPTION EMAKEHR(0x1416) +#define CORSEC_E_MIN_GRANT_FAIL EMAKEHR(0x1417) +#define CORSEC_E_NO_EXEC_PERM EMAKEHR(0x1418) +#define CORSEC_E_XMLSYNTAX EMAKEHR(0x1419) +#define CORSEC_E_INVALID_STRONGNAME EMAKEHR(0x141a) +#define CORSEC_E_MISSING_STRONGNAME EMAKEHR(0x141b) +#define CORSEC_E_CONTAINER_NOT_FOUND EMAKEHR(0x141c) +#define CORSEC_E_INVALID_IMAGE_FORMAT EMAKEHR(0x141d) +#define CORSEC_E_INVALID_PUBLICKEY EMAKEHR(0x141e) +#define CORSEC_E_SIGNATURE_MISMATCH EMAKEHR(0x1420) +#define SN_E_PUBLICKEY_MISMATCH EMAKEHR(0x1421) +#define CORSEC_E_INVALID_SIGNATUREKEY EMAKEHR(0x1422) +#define CORSEC_E_INVALID_COUNTERSIGNATURE EMAKEHR(0x1423) +#define CORSEC_E_CRYPTO EMAKEHR(0x1430) +#define CORSEC_E_CRYPTO_UNEX_OPER EMAKEHR(0x1431) +#define CORSECATTR_E_BAD_ATTRIBUTE EMAKEHR(0x143a) +#define CORSECATTR_E_MISSING_CONSTRUCTOR EMAKEHR(0x143b) +#define CORSECATTR_E_FAILED_TO_CREATE_PERM EMAKEHR(0x143c) +#define CORSECATTR_E_BAD_ACTION_ASM EMAKEHR(0x143d) +#define CORSECATTR_E_BAD_ACTION_OTHER EMAKEHR(0x143e) +#define CORSECATTR_E_BAD_PARENT EMAKEHR(0x143f) +#define CORSECATTR_E_TRUNCATED EMAKEHR(0x1440) +#define CORSECATTR_E_BAD_VERSION EMAKEHR(0x1441) +#define CORSECATTR_E_BAD_ACTION EMAKEHR(0x1442) +#define CORSECATTR_E_NO_SELF_REF EMAKEHR(0x1443) +#define CORSECATTR_E_BAD_NONCAS EMAKEHR(0x1444) +#define CORSECATTR_E_ASSEMBLY_LOAD_FAILED EMAKEHR(0x1445) +#define CORSECATTR_E_ASSEMBLY_LOAD_FAILED_EX EMAKEHR(0x1446) +#define CORSECATTR_E_TYPE_LOAD_FAILED EMAKEHR(0x1447) +#define CORSECATTR_E_TYPE_LOAD_FAILED_EX EMAKEHR(0x1448) +#define CORSECATTR_E_ABSTRACT EMAKEHR(0x1449) +#define CORSECATTR_E_UNSUPPORTED_TYPE EMAKEHR(0x144a) +#define CORSECATTR_E_UNSUPPORTED_ENUM_TYPE EMAKEHR(0x144b) +#define CORSECATTR_E_NO_FIELD EMAKEHR(0x144c) +#define CORSECATTR_E_NO_PROPERTY EMAKEHR(0x144d) +#define CORSECATTR_E_EXCEPTION EMAKEHR(0x144e) +#define CORSECATTR_E_EXCEPTION_HR EMAKEHR(0x144f) +#define ISS_E_ISOSTORE_START EMAKEHR(0x1450) +#define ISS_E_ISOSTORE EMAKEHR(0x1450) +#define ISS_E_OPEN_STORE_FILE EMAKEHR(0x1460) +#define ISS_E_OPEN_FILE_MAPPING EMAKEHR(0x1461) +#define ISS_E_MAP_VIEW_OF_FILE EMAKEHR(0x1462) +#define ISS_E_GET_FILE_SIZE EMAKEHR(0x1463) +#define ISS_E_CREATE_MUTEX EMAKEHR(0x1464) +#define ISS_E_LOCK_FAILED EMAKEHR(0x1465) +#define ISS_E_FILE_WRITE EMAKEHR(0x1466) +#define ISS_E_SET_FILE_POINTER EMAKEHR(0x1467) +#define ISS_E_CREATE_DIR EMAKEHR(0x1468) +#define ISS_E_STORE_NOT_OPEN EMAKEHR(0x1469) +#define ISS_E_CORRUPTED_STORE_FILE EMAKEHR(0x1480) +#define ISS_E_STORE_VERSION EMAKEHR(0x1481) +#define ISS_E_FILE_NOT_MAPPED EMAKEHR(0x1482) +#define ISS_E_BLOCK_SIZE_TOO_SMALL EMAKEHR(0x1483) +#define ISS_E_ALLOC_TOO_LARGE EMAKEHR(0x1484) +#define ISS_E_USAGE_WILL_EXCEED_QUOTA EMAKEHR(0x1485) +#define ISS_E_TABLE_ROW_NOT_FOUND EMAKEHR(0x1486) +#define ISS_E_DEPRECATE EMAKEHR(0x14a0) +#define ISS_E_CALLER EMAKEHR(0x14a1) +#define ISS_E_PATH_LENGTH EMAKEHR(0x14a2) +#define ISS_E_MACHINE EMAKEHR(0x14a3) +#define ISS_E_MACHINE_DACL EMAKEHR(0x14a4) +#define ISS_E_ISOSTORE_END EMAKEHR(0x14ff) +#define COR_E_EXCEPTION EMAKEHR(0x1500) +#define COR_E_SYSTEM EMAKEHR(0x1501) +#define COR_E_ARGUMENTOUTOFRANGE EMAKEHR(0x1502) +#define COR_E_ARRAYTYPEMISMATCH EMAKEHR(0x1503) +#define COR_E_CONTEXTMARSHAL EMAKEHR(0x1504) +#define COR_E_TIMEOUT EMAKEHR(0x1505) +#define COR_E_EXECUTIONENGINE EMAKEHR(0x1506) +#define COR_E_FIELDACCESS EMAKEHR(0x1507) +#define COR_E_INDEXOUTOFRANGE EMAKEHR(0x1508) +#define COR_E_INVALIDOPERATION EMAKEHR(0x1509) +#define COR_E_SECURITY EMAKEHR(0x150a) +#define COR_E_REMOTING EMAKEHR(0x150b) +#define COR_E_SERIALIZATION EMAKEHR(0x150c) +#define COR_E_VERIFICATION EMAKEHR(0x150d) +#define COR_E_SERVER EMAKEHR(0x150e) +#define COR_E_SERVICEDCOMPONENT EMAKEHR(0x150f) +#define COR_E_METHODACCESS EMAKEHR(0x1510) +#define COR_E_MISSINGFIELD EMAKEHR(0x1511) +#define COR_E_MISSINGMEMBER EMAKEHR(0x1512) +#define COR_E_MISSINGMETHOD EMAKEHR(0x1513) +#define COR_E_MULTICASTNOTSUPPORTED EMAKEHR(0x1514) +#define COR_E_NOTSUPPORTED EMAKEHR(0x1515) +#define COR_E_OVERFLOW EMAKEHR(0x1516) +#define COR_E_RANK EMAKEHR(0x1517) +#define COR_E_SYNCHRONIZATIONLOCK EMAKEHR(0x1518) +#define COR_E_THREADINTERRUPTED EMAKEHR(0x1519) +#define COR_E_MEMBERACCESS EMAKEHR(0x151a) +#define COR_E_THREADSTATE EMAKEHR(0x1520) +#define COR_E_THREADSTOP EMAKEHR(0x1521) +#define COR_E_TYPELOAD EMAKEHR(0x1522) +#define COR_E_ENTRYPOINTNOTFOUND EMAKEHR(0x1523) +#define COR_E_DLLNOTFOUND EMAKEHR(0x1524) +#define COR_E_THREADSTART EMAKEHR(0x1525) +#define COR_E_INVALIDCOMOBJECT EMAKEHR(0x1527) +#define COR_E_NOTFINITENUMBER EMAKEHR(0x1528) +#define COR_E_DUPLICATEWAITOBJECT EMAKEHR(0x1529) +#define COR_E_SEMAPHOREFULL EMAKEHR(0x152b) +#define COR_E_WAITHANDLECANNOTBEOPENED EMAKEHR(0x152c) +#define COR_E_ABANDONEDMUTEX EMAKEHR(0x152d) +#define COR_E_THREADABORTED EMAKEHR(0x1530) +#define COR_E_INVALIDOLEVARIANTTYPE EMAKEHR(0x1531) +#define COR_E_MISSINGMANIFESTRESOURCE EMAKEHR(0x1532) +#define COR_E_SAFEARRAYTYPEMISMATCH EMAKEHR(0x1533) +#define COR_E_TYPEINITIALIZATION EMAKEHR(0x1534) +#define COR_E_MARSHALDIRECTIVE EMAKEHR(0x1535) +#define COR_E_MISSINGSATELLITEASSEMBLY EMAKEHR(0x1536) +#define COR_E_FORMAT EMAKEHR(0x1537) +#define COR_E_SAFEARRAYRANKMISMATCH EMAKEHR(0x1538) +#define COR_E_PLATFORMNOTSUPPORTED EMAKEHR(0x1539) +#define COR_E_INVALIDPROGRAM EMAKEHR(0x153a) +#define COR_E_OPERATIONCANCELED EMAKEHR(0x153b) +#define COR_E_INSUFFICIENTMEMORY EMAKEHR(0x153d) +#define COR_E_RUNTIMEWRAPPED EMAKEHR(0x153e) +#define COR_E_DEVICESNOTSUPPORTED EMAKEHR(0x1540) +#define COR_E_DATAMISALIGNED EMAKEHR(0x1541) +#define COR_E_CODECONTRACTFAILED EMAKEHR(0x1542) +#define COR_E_TYPEACCESS EMAKEHR(0x1543) +#define COR_E_ACCESSING_CCW EMAKEHR(0x1544) +#define COR_E_MAXMETHODSIZE EMAKEHR(0x1545) +#define COR_E_KEYNOTFOUND EMAKEHR(0x1577) +#define COR_E_INSUFFICIENTEXECUTIONSTACK EMAKEHR(0x1578) +#define COR_E_APPLICATION EMAKEHR(0x1600) +#define COR_E_INVALIDFILTERCRITERIA EMAKEHR(0x1601) +#define COR_E_REFLECTIONTYPELOAD EMAKEHR(0x1602) +#define COR_E_TARGET EMAKEHR(0x1603) +#define COR_E_TARGETINVOCATION EMAKEHR(0x1604) +#define COR_E_CUSTOMATTRIBUTEFORMAT EMAKEHR(0x1605) +#define COR_E_IO EMAKEHR(0x1620) +#define COR_E_FILELOAD EMAKEHR(0x1621) +#define COR_E_OBJECTDISPOSED EMAKEHR(0x1622) +#define COR_E_FAILFAST EMAKEHR(0x1623) +#define COR_E_HOSTPROTECTION EMAKEHR(0x1640) +#define COR_E_ILLEGAL_REENTRANCY EMAKEHR(0x1641) +#define CLR_E_SHIM_RUNTIMELOAD EMAKEHR(0x1700) +#define CLR_E_SHIM_RUNTIMEEXPORT EMAKEHR(0x1701) +#define CLR_E_SHIM_INSTALLROOT EMAKEHR(0x1702) +#define CLR_E_SHIM_INSTALLCOMP EMAKEHR(0x1703) +#define CLR_E_SHIM_LEGACYRUNTIMEALREADYBOUND EMAKEHR(0x1704) +#define CLR_E_SHIM_SHUTDOWNINPROGRESS EMAKEHR(0x1705) +#define VER_E_HRESULT EMAKEHR(0x1801) +#define VER_E_OFFSET EMAKEHR(0x1802) +#define VER_E_OPCODE EMAKEHR(0x1803) +#define VER_E_OPERAND EMAKEHR(0x1804) +#define VER_E_TOKEN EMAKEHR(0x1805) +#define VER_E_EXCEPT EMAKEHR(0x1806) +#define VER_E_STACK_SLOT EMAKEHR(0x1807) +#define VER_E_LOC EMAKEHR(0x1808) +#define VER_E_ARG EMAKEHR(0x1809) +#define VER_E_FOUND EMAKEHR(0x180a) +#define VER_E_EXPECTED EMAKEHR(0x180b) +#define VER_E_LOC_BYNAME EMAKEHR(0x180c) +#define VER_E_UNKNOWN_OPCODE EMAKEHR(0x1810) +#define VER_E_SIG_CALLCONV EMAKEHR(0x1811) +#define VER_E_SIG_ELEMTYPE EMAKEHR(0x1812) +#define VER_E_RET_SIG EMAKEHR(0x1814) +#define VER_E_FIELD_SIG EMAKEHR(0x1815) +#define VER_E_OPEN_DLGT_PROT_ACC EMAKEHR(0x1816) +#define VER_E_INTERNAL EMAKEHR(0x1818) +#define VER_E_STACK_TOO_LARGE EMAKEHR(0x1819) +#define VER_E_ARRAY_NAME_LONG EMAKEHR(0x181a) +#define VER_E_FALLTHRU EMAKEHR(0x1820) +#define VER_E_TRY_GTEQ_END EMAKEHR(0x1821) +#define VER_E_TRYEND_GT_CS EMAKEHR(0x1822) +#define VER_E_HND_GTEQ_END EMAKEHR(0x1823) +#define VER_E_HNDEND_GT_CS EMAKEHR(0x1824) +#define VER_E_FLT_GTEQ_CS EMAKEHR(0x1825) +#define VER_E_TRY_START EMAKEHR(0x1826) +#define VER_E_HND_START EMAKEHR(0x1827) +#define VER_E_FLT_START EMAKEHR(0x1828) +#define VER_E_TRY_OVERLAP EMAKEHR(0x1829) +#define VER_E_TRY_EQ_HND_FIL EMAKEHR(0x182a) +#define VER_E_TRY_SHARE_FIN_FAL EMAKEHR(0x182b) +#define VER_E_HND_OVERLAP EMAKEHR(0x182c) +#define VER_E_HND_EQ EMAKEHR(0x182d) +#define VER_E_FIL_OVERLAP EMAKEHR(0x182e) +#define VER_E_FIL_EQ EMAKEHR(0x182f) +#define VER_E_FIL_CONT_TRY EMAKEHR(0x1830) +#define VER_E_FIL_CONT_HND EMAKEHR(0x1831) +#define VER_E_FIL_CONT_FIL EMAKEHR(0x1832) +#define VER_E_FIL_GTEQ_CS EMAKEHR(0x1833) +#define VER_E_FIL_START EMAKEHR(0x1834) +#define VER_E_FALLTHRU_EXCEP EMAKEHR(0x1835) +#define VER_E_FALLTHRU_INTO_HND EMAKEHR(0x1836) +#define VER_E_FALLTHRU_INTO_FIL EMAKEHR(0x1837) +#define VER_E_LEAVE EMAKEHR(0x1838) +#define VER_E_RETHROW EMAKEHR(0x1839) +#define VER_E_ENDFINALLY EMAKEHR(0x183a) +#define VER_E_ENDFILTER EMAKEHR(0x183b) +#define VER_E_ENDFILTER_MISSING EMAKEHR(0x183c) +#define VER_E_BR_INTO_TRY EMAKEHR(0x183d) +#define VER_E_BR_INTO_HND EMAKEHR(0x183e) +#define VER_E_BR_INTO_FIL EMAKEHR(0x183f) +#define VER_E_BR_OUTOF_TRY EMAKEHR(0x1840) +#define VER_E_BR_OUTOF_HND EMAKEHR(0x1841) +#define VER_E_BR_OUTOF_FIL EMAKEHR(0x1842) +#define VER_E_BR_OUTOF_FIN EMAKEHR(0x1843) +#define VER_E_RET_FROM_TRY EMAKEHR(0x1844) +#define VER_E_RET_FROM_HND EMAKEHR(0x1845) +#define VER_E_RET_FROM_FIL EMAKEHR(0x1846) +#define VER_E_BAD_JMP_TARGET EMAKEHR(0x1847) +#define VER_E_PATH_LOC EMAKEHR(0x1848) +#define VER_E_PATH_THIS EMAKEHR(0x1849) +#define VER_E_PATH_STACK EMAKEHR(0x184a) +#define VER_E_PATH_STACK_DEPTH EMAKEHR(0x184b) +#define VER_E_THIS EMAKEHR(0x184c) +#define VER_E_THIS_UNINIT_EXCEP EMAKEHR(0x184d) +#define VER_E_THIS_UNINIT_STORE EMAKEHR(0x184e) +#define VER_E_THIS_UNINIT_RET EMAKEHR(0x184f) +#define VER_E_THIS_UNINIT_V_RET EMAKEHR(0x1850) +#define VER_E_THIS_UNINIT_BR EMAKEHR(0x1851) +#define VER_E_LDFTN_CTOR EMAKEHR(0x1852) +#define VER_E_STACK_NOT_EQ EMAKEHR(0x1853) +#define VER_E_STACK_UNEXPECTED EMAKEHR(0x1854) +#define VER_E_STACK_EXCEPTION EMAKEHR(0x1855) +#define VER_E_STACK_OVERFLOW EMAKEHR(0x1856) +#define VER_E_STACK_UNDERFLOW EMAKEHR(0x1857) +#define VER_E_STACK_EMPTY EMAKEHR(0x1858) +#define VER_E_STACK_UNINIT EMAKEHR(0x1859) +#define VER_E_STACK_I_I4_I8 EMAKEHR(0x185a) +#define VER_E_STACK_R_R4_R8 EMAKEHR(0x185b) +#define VER_E_STACK_NO_R_I8 EMAKEHR(0x185c) +#define VER_E_STACK_NUMERIC EMAKEHR(0x185d) +#define VER_E_STACK_OBJREF EMAKEHR(0x185e) +#define VER_E_STACK_P_OBJREF EMAKEHR(0x185f) +#define VER_E_STACK_BYREF EMAKEHR(0x1860) +#define VER_E_STACK_METHOD EMAKEHR(0x1861) +#define VER_E_STACK_ARRAY_SD EMAKEHR(0x1862) +#define VER_E_STACK_VALCLASS EMAKEHR(0x1863) +#define VER_E_STACK_P_VALCLASS EMAKEHR(0x1864) +#define VER_E_STACK_NO_VALCLASS EMAKEHR(0x1865) +#define VER_E_LOC_DEAD EMAKEHR(0x1866) +#define VER_E_LOC_NUM EMAKEHR(0x1867) +#define VER_E_ARG_NUM EMAKEHR(0x1868) +#define VER_E_TOKEN_RESOLVE EMAKEHR(0x1869) +#define VER_E_TOKEN_TYPE EMAKEHR(0x186a) +#define VER_E_TOKEN_TYPE_MEMBER EMAKEHR(0x186b) +#define VER_E_TOKEN_TYPE_FIELD EMAKEHR(0x186c) +#define VER_E_TOKEN_TYPE_SIG EMAKEHR(0x186d) +#define VER_E_UNVERIFIABLE EMAKEHR(0x186e) +#define VER_E_LDSTR_OPERAND EMAKEHR(0x186f) +#define VER_E_RET_PTR_TO_STACK EMAKEHR(0x1870) +#define VER_E_RET_VOID EMAKEHR(0x1871) +#define VER_E_RET_MISSING EMAKEHR(0x1872) +#define VER_E_RET_EMPTY EMAKEHR(0x1873) +#define VER_E_RET_UNINIT EMAKEHR(0x1874) +#define VER_E_ARRAY_ACCESS EMAKEHR(0x1875) +#define VER_E_ARRAY_V_STORE EMAKEHR(0x1876) +#define VER_E_ARRAY_SD EMAKEHR(0x1877) +#define VER_E_ARRAY_SD_PTR EMAKEHR(0x1878) +#define VER_E_ARRAY_FIELD EMAKEHR(0x1879) +#define VER_E_ARGLIST EMAKEHR(0x187a) +#define VER_E_VALCLASS EMAKEHR(0x187b) +#define VER_E_METHOD_ACCESS EMAKEHR(0x187c) +#define VER_E_FIELD_ACCESS EMAKEHR(0x187d) +#define VER_E_DEAD EMAKEHR(0x187e) +#define VER_E_FIELD_STATIC EMAKEHR(0x187f) +#define VER_E_FIELD_NO_STATIC EMAKEHR(0x1880) +#define VER_E_ADDR EMAKEHR(0x1881) +#define VER_E_ADDR_BYREF EMAKEHR(0x1882) +#define VER_E_ADDR_LITERAL EMAKEHR(0x1883) +#define VER_E_INITONLY EMAKEHR(0x1884) +#define VER_E_THROW EMAKEHR(0x1885) +#define VER_E_CALLVIRT_VALCLASS EMAKEHR(0x1886) +#define VER_E_CALL_SIG EMAKEHR(0x1887) +#define VER_E_CALL_STATIC EMAKEHR(0x1888) +#define VER_E_CTOR EMAKEHR(0x1889) +#define VER_E_CTOR_VIRT EMAKEHR(0x188a) +#define VER_E_CTOR_OR_SUPER EMAKEHR(0x188b) +#define VER_E_CTOR_MUL_INIT EMAKEHR(0x188c) +#define VER_E_SIG EMAKEHR(0x188d) +#define VER_E_SIG_ARRAY EMAKEHR(0x188e) +#define VER_E_SIG_ARRAY_PTR EMAKEHR(0x188f) +#define VER_E_SIG_ARRAY_BYREF EMAKEHR(0x1890) +#define VER_E_SIG_ELEM_PTR EMAKEHR(0x1891) +#define VER_E_SIG_VARARG EMAKEHR(0x1892) +#define VER_E_SIG_VOID EMAKEHR(0x1893) +#define VER_E_SIG_BYREF_BYREF EMAKEHR(0x1894) +#define VER_E_CODE_SIZE_ZERO EMAKEHR(0x1896) +#define VER_E_BAD_VARARG EMAKEHR(0x1897) +#define VER_E_TAIL_CALL EMAKEHR(0x1898) +#define VER_E_TAIL_BYREF EMAKEHR(0x1899) +#define VER_E_TAIL_RET EMAKEHR(0x189a) +#define VER_E_TAIL_RET_VOID EMAKEHR(0x189b) +#define VER_E_TAIL_RET_TYPE EMAKEHR(0x189c) +#define VER_E_TAIL_STACK_EMPTY EMAKEHR(0x189d) +#define VER_E_METHOD_END EMAKEHR(0x189e) +#define VER_E_BAD_BRANCH EMAKEHR(0x189f) +#define VER_E_FIN_OVERLAP EMAKEHR(0x18a0) +#define VER_E_LEXICAL_NESTING EMAKEHR(0x18a1) +#define VER_E_VOLATILE EMAKEHR(0x18a2) +#define VER_E_UNALIGNED EMAKEHR(0x18a3) +#define VER_E_INNERMOST_FIRST EMAKEHR(0x18a4) +#define VER_E_CALLI_VIRTUAL EMAKEHR(0x18a5) +#define VER_E_CALL_ABSTRACT EMAKEHR(0x18a6) +#define VER_E_STACK_UNEXP_ARRAY EMAKEHR(0x18a7) +#define VER_E_NOT_IN_GC_HEAP EMAKEHR(0x18a8) +#define VER_E_TRY_N_EMPTY_STACK EMAKEHR(0x18a9) +#define VER_E_DLGT_CTOR EMAKEHR(0x18aa) +#define VER_E_DLGT_BB EMAKEHR(0x18ab) +#define VER_E_DLGT_PATTERN EMAKEHR(0x18ac) +#define VER_E_DLGT_LDFTN EMAKEHR(0x18ad) +#define VER_E_FTN_ABSTRACT EMAKEHR(0x18ae) +#define VER_E_SIG_C_VC EMAKEHR(0x18af) +#define VER_E_SIG_VC_C EMAKEHR(0x18b0) +#define VER_E_BOX_PTR_TO_STACK EMAKEHR(0x18b1) +#define VER_E_SIG_BYREF_TB_AH EMAKEHR(0x18b2) +#define VER_E_SIG_ARRAY_TB_AH EMAKEHR(0x18b3) +#define VER_E_ENDFILTER_STACK EMAKEHR(0x18b4) +#define VER_E_DLGT_SIG_I EMAKEHR(0x18b5) +#define VER_E_DLGT_SIG_O EMAKEHR(0x18b6) +#define VER_E_RA_PTR_TO_STACK EMAKEHR(0x18b7) +#define VER_E_CATCH_VALUE_TYPE EMAKEHR(0x18b8) +#define VER_E_CATCH_BYREF EMAKEHR(0x18b9) +#define VER_E_FIL_PRECEED_HND EMAKEHR(0x18ba) +#define VER_E_LDVIRTFTN_STATIC EMAKEHR(0x18bb) +#define VER_E_CALLVIRT_STATIC EMAKEHR(0x18bc) +#define VER_E_INITLOCALS EMAKEHR(0x18bd) +#define VER_E_BR_TO_EXCEPTION EMAKEHR(0x18be) +#define VER_E_CALL_CTOR EMAKEHR(0x18bf) +#define VER_E_VALCLASS_OBJREF_VAR EMAKEHR(0x18c0) +#define VER_E_STACK_P_VALCLASS_OBJREF_VAR EMAKEHR(0x18c1) +#define VER_E_SIG_VAR_PARAM EMAKEHR(0x18c2) +#define VER_E_SIG_MVAR_PARAM EMAKEHR(0x18c3) +#define VER_E_SIG_VAR_ARG EMAKEHR(0x18c4) +#define VER_E_SIG_MVAR_ARG EMAKEHR(0x18c5) +#define VER_E_SIG_GENERICINST EMAKEHR(0x18c6) +#define VER_E_SIG_METHOD_INST EMAKEHR(0x18c7) +#define VER_E_SIG_METHOD_PARENT_INST EMAKEHR(0x18c8) +#define VER_E_SIG_FIELD_PARENT_INST EMAKEHR(0x18c9) +#define VER_E_CALLCONV_NOT_GENERICINST EMAKEHR(0x18ca) +#define VER_E_TOKEN_BAD_METHOD_SPEC EMAKEHR(0x18cb) +#define VER_E_BAD_READONLY_PREFIX EMAKEHR(0x18cc) +#define VER_E_BAD_CONSTRAINED_PREFIX EMAKEHR(0x18cd) +#define VER_E_CIRCULAR_VAR_CONSTRAINTS EMAKEHR(0x18ce) +#define VER_E_CIRCULAR_MVAR_CONSTRAINTS EMAKEHR(0x18cf) +#define VER_E_UNSATISFIED_METHOD_INST EMAKEHR(0x18d0) +#define VER_E_UNSATISFIED_METHOD_PARENT_INST EMAKEHR(0x18d1) +#define VER_E_UNSATISFIED_FIELD_PARENT_INST EMAKEHR(0x18d2) +#define VER_E_UNSATISFIED_BOX_OPERAND EMAKEHR(0x18d3) +#define VER_E_CONSTRAINED_CALL_WITH_NON_BYREF_THIS EMAKEHR(0x18d4) +#define VER_E_CONSTRAINED_OF_NON_VARIABLE_TYPE EMAKEHR(0x18d5) +#define VER_E_READONLY_UNEXPECTED_CALLEE EMAKEHR(0x18d6) +#define VER_E_READONLY_ILLEGAL_WRITE EMAKEHR(0x18d7) +#define VER_E_READONLY_IN_MKREFANY EMAKEHR(0x18d8) +#define VER_E_UNALIGNED_ALIGNMENT EMAKEHR(0x18d9) +#define VER_E_TAILCALL_INSIDE_EH EMAKEHR(0x18da) +#define VER_E_BACKWARD_BRANCH EMAKEHR(0x18db) +#define VER_E_CALL_TO_VTYPE_BASE EMAKEHR(0x18dc) +#define VER_E_NEWOBJ_OF_ABSTRACT_CLASS EMAKEHR(0x18dd) +#define VER_E_UNMANAGED_POINTER EMAKEHR(0x18de) +#define VER_E_LDFTN_NON_FINAL_VIRTUAL EMAKEHR(0x18df) +#define VER_E_FIELD_OVERLAP EMAKEHR(0x18e0) +#define VER_E_THIS_MISMATCH EMAKEHR(0x18e1) +#define VER_E_STACK_I_I4 EMAKEHR(0x18e2) +#define VER_E_BAD_PE EMAKEHR(0x18f0) +#define VER_E_BAD_MD EMAKEHR(0x18f1) +#define VER_E_BAD_APPDOMAIN EMAKEHR(0x18f2) +#define VER_E_TYPELOAD EMAKEHR(0x18f3) +#define VER_E_PE_LOAD EMAKEHR(0x18f4) +#define VER_E_WRITE_RVA_STATIC EMAKEHR(0x18f5) +#define VER_E_INITIALIZE_ARRAY_MISSING_TOKEN EMAKEHR(0x18f6) +#define COR_E_SqlException EMAKEHR(0x1904) +#define COR_E_Data EMAKEHR(0x1920) +#define COR_E_DataDeletedRowInaccessible EMAKEHR(0x1921) +#define COR_E_DataDuplicateName EMAKEHR(0x1922) +#define COR_E_DataInRowChangingEvent EMAKEHR(0x1923) +#define COR_E_DataInvalidConstraint EMAKEHR(0x1924) +#define COR_E_DataMissingPrimaryKey EMAKEHR(0x1925) +#define COR_E_DataNoNullAllowed EMAKEHR(0x1926) +#define COR_E_DataReadOnly EMAKEHR(0x1927) +#define COR_E_DataRowNotInTable EMAKEHR(0x1928) +#define COR_E_DataVersionNotFound EMAKEHR(0x1929) +#define COR_E_DataConstraint EMAKEHR(0x192a) +#define COR_E_StrongTyping EMAKEHR(0x192b) +#define COR_E_SqlType EMAKEHR(0x1930) +#define COR_E_SqlNullValue EMAKEHR(0x1931) +#define COR_E_SqlTruncate EMAKEHR(0x1932) +#define COR_E_AdapterMapping EMAKEHR(0x1933) +#define COR_E_DataAdapter EMAKEHR(0x1934) +#define COR_E_DBConcurrency EMAKEHR(0x1935) +#define COR_E_OperationAborted EMAKEHR(0x1936) +#define COR_E_InvalidUdt EMAKEHR(0x1937) +#define COR_E_OdbcException EMAKEHR(0x1937) +#define COR_E_OracleException EMAKEHR(0x1938) +#define COR_E_Xml EMAKEHR(0x1940) +#define COR_E_XmlSchema EMAKEHR(0x1941) +#define COR_E_XmlXslt EMAKEHR(0x1942) +#define COR_E_XmlXPath EMAKEHR(0x1943) +#define COR_E_XmlQuery EMAKEHR(0x1944) +#define VLDTR_E_IFACE_NOTIFACE EMAKEHR(0x1b00) +#define VLDTR_E_FD_RVAHASNORVA EMAKEHR(0x1b01) +#define VLDTR_E_FD_RVAHASZERORVA EMAKEHR(0x1b02) +#define VLDTR_E_MD_RVAANDIMPLMAP EMAKEHR(0x1b03) +#define VLDTR_E_TD_EXTRAFLAGS EMAKEHR(0x1b04) +#define VLDTR_E_TD_EXTENDSITSELF EMAKEHR(0x1b05) +#define VLDTR_E_TD_SYSVTNOTEXTOBJ EMAKEHR(0x1b06) +#define VLDTR_E_TD_EXTTYPESPEC EMAKEHR(0x1b07) +#define VLDTR_E_TD_VTNOSIZE EMAKEHR(0x1b09) +#define VLDTR_E_TD_IFACESEALED EMAKEHR(0x1b0a) +#define VLDTR_E_NC_BADNESTED EMAKEHR(0x1b0b) +#define VLDTR_E_NC_BADENCLOSER EMAKEHR(0x1b0c) +#define VLDTR_E_NC_DUP EMAKEHR(0x1b0d) +#define VLDTR_E_NC_DUPENCLOSER EMAKEHR(0x1b0e) +#define VLDTR_E_FRVA_ZERORVA EMAKEHR(0x1b0f) +#define VLDTR_E_FRVA_BADFIELD EMAKEHR(0x1b10) +#define VLDTR_E_FRVA_DUPRVA EMAKEHR(0x1b11) +#define VLDTR_E_FRVA_DUPFIELD EMAKEHR(0x1b12) +#define VLDTR_E_EP_BADTOKEN EMAKEHR(0x1b13) +#define VLDTR_E_EP_INSTANCE EMAKEHR(0x1b14) +#define VLDTR_E_TD_ENUMFLDBADTYPE EMAKEHR(0x1b15) +#define VLDTR_E_MD_BADRVA EMAKEHR(0x1b16) +#define VLDTR_E_FD_LITERALNODEFAULT EMAKEHR(0x1b17) +#define VLDTR_E_IFACE_METHNOTIMPL EMAKEHR(0x1b18) +#define VLDTR_E_CA_BADPARENT EMAKEHR(0x1b19) +#define VLDTR_E_CA_BADTYPE EMAKEHR(0x1b1a) +#define VLDTR_E_CA_NOTCTOR EMAKEHR(0x1b1b) +#define VLDTR_E_CA_BADSIG EMAKEHR(0x1b1c) +#define VLDTR_E_CA_NOSIG EMAKEHR(0x1b1d) +#define VLDTR_E_CA_BADPROLOG EMAKEHR(0x1b1e) +#define VLDTR_E_MD_BADLOCALSIGTOK EMAKEHR(0x1b1f) +#define VLDTR_E_MD_BADHEADER EMAKEHR(0x1b20) +#define VLDTR_E_EP_TOOMANYARGS EMAKEHR(0x1b21) +#define VLDTR_E_EP_BADRET EMAKEHR(0x1b22) +#define VLDTR_E_EP_BADARG EMAKEHR(0x1b23) +#define VLDTR_E_SIG_BADVOID EMAKEHR(0x1b24) +#define VLDTR_E_IFACE_METHMULTIMPL EMAKEHR(0x1b25) +#define VLDTR_E_GP_NAMENULL EMAKEHR(0x1b26) +#define VLDTR_E_GP_OWNERNIL EMAKEHR(0x1b27) +#define VLDTR_E_GP_DUPNAME EMAKEHR(0x1b28) +#define VLDTR_E_GP_DUPNUMBER EMAKEHR(0x1b29) +#define VLDTR_E_GP_NONSEQ_BY_OWNER EMAKEHR(0x1b2a) +#define VLDTR_E_GP_NONSEQ_BY_NUMBER EMAKEHR(0x1b2b) +#define VLDTR_E_GP_UNEXPECTED_OWNER_FOR_VARIANT_VAR EMAKEHR(0x1b2c) +#define VLDTR_E_GP_ILLEGAL_VARIANT_MVAR EMAKEHR(0x1b2d) +#define VLDTR_E_GP_ILLEGAL_VARIANCE_FLAGS EMAKEHR(0x1b2e) +#define VLDTR_E_GP_REFANDVALUETYPE EMAKEHR(0x1b2f) +#define VLDTR_E_GPC_OWNERNIL EMAKEHR(0x1b30) +#define VLDTR_E_GPC_DUP EMAKEHR(0x1b31) +#define VLDTR_E_GPC_NONCONTIGUOUS EMAKEHR(0x1b32) +#define VLDTR_E_MS_METHODNIL EMAKEHR(0x1b33) +#define VLDTR_E_MS_DUP EMAKEHR(0x1b34) +#define VLDTR_E_MS_BADCALLINGCONV EMAKEHR(0x1b35) +#define VLDTR_E_MS_MISSARITY EMAKEHR(0x1b36) +#define VLDTR_E_MS_MISSARG EMAKEHR(0x1b37) +#define VLDTR_E_MS_ARITYMISMATCH EMAKEHR(0x1b38) +#define VLDTR_E_MS_METHODNOTGENERIC EMAKEHR(0x1b39) +#define VLDTR_E_SIG_MISSARITY EMAKEHR(0x1b3a) +#define VLDTR_E_SIG_ARITYMISMATCH EMAKEHR(0x1b3b) +#define VLDTR_E_MD_GENERIC_CCTOR EMAKEHR(0x1b3c) +#define VLDTR_E_MD_GENERIC_CTOR EMAKEHR(0x1b3d) +#define VLDTR_E_MD_GENERIC_IMPORT EMAKEHR(0x1b3e) +#define VLDTR_E_MD_GENERIC_BADCALLCONV EMAKEHR(0x1b3f) +#define VLDTR_E_EP_GENERIC_METHOD EMAKEHR(0x1b40) +#define VLDTR_E_MD_MISSARITY EMAKEHR(0x1b41) +#define VLDTR_E_MD_ARITYZERO EMAKEHR(0x1b42) +#define VLDTR_E_SIG_ARITYZERO EMAKEHR(0x1b43) +#define VLDTR_E_MS_ARITYZERO EMAKEHR(0x1b44) +#define VLDTR_E_MD_GPMISMATCH EMAKEHR(0x1b45) +#define VLDTR_E_EP_GENERIC_TYPE EMAKEHR(0x1b46) +#define VLDTR_E_MI_DECLNOTGENERIC EMAKEHR(0x1b47) +#define VLDTR_E_MI_IMPLNOTGENERIC EMAKEHR(0x1b48) +#define VLDTR_E_MI_ARITYMISMATCH EMAKEHR(0x1b49) +#define VLDTR_E_TD_EXTBADTYPESPEC EMAKEHR(0x1b4a) +#define VLDTR_E_SIG_BYREFINST EMAKEHR(0x1b4b) +#define VLDTR_E_MS_BYREFINST EMAKEHR(0x1b4c) +#define VLDTR_E_TS_EMPTY EMAKEHR(0x1b4d) +#define VLDTR_E_TS_HASSENTINALS EMAKEHR(0x1b4e) +#define VLDTR_E_TD_GENERICHASEXPLAYOUT EMAKEHR(0x1b4f) +#define VLDTR_E_SIG_BADTOKTYPE EMAKEHR(0x1b50) +#define VLDTR_E_IFACE_METHNOTIMPLTHISMOD EMAKEHR(0x1b51) +#define TLBX_E_CIRCULAR_EXPORT2 EMAKEHR(0x1b52) +#define CORDBG_E_THREAD_NOT_SCHEDULED EMAKEHR(0x1c00) +#define CORDBG_E_HANDLE_HAS_BEEN_DISPOSED EMAKEHR(0x1c01) +#define CORDBG_E_NONINTERCEPTABLE_EXCEPTION EMAKEHR(0x1c02) +#define CORDBG_E_CANT_UNWIND_ABOVE_CALLBACK EMAKEHR(0x1c03) +#define CORDBG_E_INTERCEPT_FRAME_ALREADY_SET EMAKEHR(0x1c04) +#define CORDBG_E_NO_NATIVE_PATCH_AT_ADDR EMAKEHR(0x1c05) +#define CORDBG_E_MUST_BE_INTEROP_DEBUGGING EMAKEHR(0x1c06) +#define CORDBG_E_NATIVE_PATCH_ALREADY_AT_ADDR EMAKEHR(0x1c07) +#define CORDBG_E_TIMEOUT EMAKEHR(0x1c08) +#define CORDBG_E_CANT_CALL_ON_THIS_THREAD EMAKEHR(0x1c09) +#define CORDBG_E_ENC_INFOLESS_METHOD EMAKEHR(0x1c0a) +#define CORDBG_E_ENC_NESTED_HANLDERS EMAKEHR(0x1c0b) +#define CORDBG_E_ENC_IN_FUNCLET EMAKEHR(0x1c0c) +#define CORDBG_E_ENC_LOCALLOC EMAKEHR(0x1c0d) +#define CORDBG_E_ENC_EDIT_NOT_SUPPORTED EMAKEHR(0x1c0e) +#define CORDBG_E_FEABORT_DELAYED_UNTIL_THREAD_RESUMED EMAKEHR(0x1c0f) +#define CORDBG_E_NOTREADY EMAKEHR(0x1c10) +#define CORDBG_E_CANNOT_RESOLVE_ASSEMBLY EMAKEHR(0x1c11) +#define CORDBG_E_MUST_BE_IN_LOAD_MODULE EMAKEHR(0x1c12) +#define CORDBG_E_CANNOT_BE_ON_ATTACH EMAKEHR(0x1c13) +#define CORDBG_E_NGEN_NOT_SUPPORTED EMAKEHR(0x1c14) +#define CORDBG_E_ILLEGAL_SHUTDOWN_ORDER EMAKEHR(0x1c15) +#define CORDBG_E_CANNOT_DEBUG_FIBER_PROCESS EMAKEHR(0x1c16) +#define CORDBG_E_MUST_BE_IN_CREATE_PROCESS EMAKEHR(0x1c17) +#define CORDBG_E_DETACH_FAILED_OUTSTANDING_EVALS EMAKEHR(0x1c18) +#define CORDBG_E_DETACH_FAILED_OUTSTANDING_STEPPERS EMAKEHR(0x1c19) +#define CORDBG_E_CANT_INTEROP_STEP_OUT EMAKEHR(0x1c20) +#define CORDBG_E_DETACH_FAILED_OUTSTANDING_BREAKPOINTS EMAKEHR(0x1c21) +#define CORDBG_E_ILLEGAL_IN_STACK_OVERFLOW EMAKEHR(0x1c22) +#define CORDBG_E_ILLEGAL_AT_GC_UNSAFE_POINT EMAKEHR(0x1c23) +#define CORDBG_E_ILLEGAL_IN_PROLOG EMAKEHR(0x1c24) +#define CORDBG_E_ILLEGAL_IN_NATIVE_CODE EMAKEHR(0x1c25) +#define CORDBG_E_ILLEGAL_IN_OPTIMIZED_CODE EMAKEHR(0x1c26) +#define CORDBG_E_MINIDUMP_UNSUPPORTED EMAKEHR(0x1c27) +#define CORDBG_E_APPDOMAIN_MISMATCH EMAKEHR(0x1c28) +#define CORDBG_E_CONTEXT_UNVAILABLE EMAKEHR(0x1c29) +#define CORDBG_E_UNCOMPATIBLE_PLATFORMS EMAKEHR(0x1c30) +#define CORDBG_E_DEBUGGING_DISABLED EMAKEHR(0x1c31) +#define CORDBG_E_DETACH_FAILED_ON_ENC EMAKEHR(0x1c32) +#define CORDBG_E_CURRENT_EXCEPTION_IS_OUTSIDE_CURRENT_EXECUTION_SCOPE EMAKEHR(0x1c33) +#define CORDBG_E_HELPER_MAY_DEADLOCK EMAKEHR(0x1c34) +#define CORDBG_E_MISSING_METADATA EMAKEHR(0x1c35) +#define CORDBG_E_TARGET_INCONSISTENT EMAKEHR(0x1c36) +#define CORDBG_E_DETACH_FAILED_OUTSTANDING_TARGET_RESOURCES EMAKEHR(0x1c37) +#define CORDBG_E_TARGET_READONLY EMAKEHR(0x1c38) +#define CORDBG_E_MISMATCHED_CORWKS_AND_DACWKS_DLLS EMAKEHR(0x1c39) +#define CORDBG_E_MODULE_LOADED_FROM_DISK EMAKEHR(0x1c3a) +#define CORDBG_E_SYMBOLS_NOT_AVAILABLE EMAKEHR(0x1c3b) +#define CORDBG_E_DEBUG_COMPONENT_MISSING EMAKEHR(0x1c3c) +#define CORDBG_E_REMOTE_MISMATCHED_CERTS EMAKEHR(0x1c3d) +#define CORDBG_E_REMOTE_NETWORK_FAILURE EMAKEHR(0x1c3e) +#define CORDBG_E_REMOTE_NO_LISTENER EMAKEHR(0x1c3f) +#define CORDBG_E_REMOTE_UNKNOWN_TARGET EMAKEHR(0x1c40) +#define CORDBG_E_REMOTE_INVALID_CONFIG EMAKEHR(0x1c41) +#define CORDBG_E_REMOTE_MISMATCHED_PROTOCOLS EMAKEHR(0x1c42) +#define CORDBG_E_LIBRARY_PROVIDER_ERROR EMAKEHR(0x1c43) +#define CORDBG_E_NOT_CLR EMAKEHR(0x1c44) +#define CORDBG_E_MISSING_DATA_TARGET_INTERFACE EMAKEHR(0x1c45) +#define CORDBG_E_UNSUPPORTED_DEBUGGING_MODEL EMAKEHR(0x1c46) +#define CORDBG_E_UNSUPPORTED_FORWARD_COMPAT EMAKEHR(0x1c47) +#define CORDBG_E_UNSUPPORTED_VERSION_STRUCT EMAKEHR(0x1c48) +#define CORDBG_E_READVIRTUAL_FAILURE EMAKEHR(0x1c49) +#define CORDBG_E_VALUE_POINTS_TO_FUNCTION EMAKEHR(0x1c4a) +#define CORDBG_E_CORRUPT_OBJECT EMAKEHR(0x1c4b) +#define CORDBG_E_GC_STRUCTURES_INVALID EMAKEHR(0x1c4c) +#define CORDBG_E_INVALID_OPCODE EMAKEHR(0x1c4d) +#define CORDBG_E_UNSUPPORTED EMAKEHR(0x1c4e) +#define CORDBG_E_MISSING_DEBUGGER_EXPORTS EMAKEHR(0x1c4f) +#define CORDBG_E_DATA_TARGET_ERROR EMAKEHR(0x1c61) +#define CORDBG_E_CODE_HAS_NO_METADATA EMAKEHR(0x1c62) +#define CORDBG_E_CODE_UNRECOGNIZED EMAKEHR(0x1c63) +#define CORDBG_E_NO_IMAGE_AVAILABLE EMAKEHR(0x1c64) +#define CORDBG_E_TYPE_NOT_FOUND EMAKEHR(0x1c65) +#define CORDBG_E_VTABLE_HAS_NO_METADATA EMAKEHR(0x1c66) +#define CORDBG_E_NO_GENERIC_INFO EMAKEHR(0x1c67) +#define PEFMT_E_NO_CONTENTS EMAKEHR(0x1d00) +#define PEFMT_E_NO_NTHEADERS EMAKEHR(0x1d01) +#define PEFMT_E_64BIT EMAKEHR(0x1d02) +#define PEFMT_E_NO_CORHEADER EMAKEHR(0x1d03) +#define PEFMT_E_NOT_ILONLY EMAKEHR(0x1d04) +#define PEFMT_E_IMPORT_DLLS EMAKEHR(0x1d05) +#define PEFMT_E_EXE_NOENTRYPOINT EMAKEHR(0x1d06) +#define PEFMT_E_BASE_RELOCS EMAKEHR(0x1d07) +#define PEFMT_E_ENTRYPOINT EMAKEHR(0x1d08) +#define PEFMT_E_ZERO_SIZEOFCODE EMAKEHR(0x1d09) +#define PEFMT_E_BAD_CORHEADER EMAKEHR(0x1d0a) +#define PEFMT_E_32BIT EMAKEHR(0x1d0b) +#define CLR_OPTSVC_E_CONTROLLER_INTERRUPT EMAKEHR(0x1e00) +#define NGEN_FAILED_GET_DEPENDENCIES EMAKEHR(0x1f00) +#define NGEN_FAILED_NATIVE_IMAGE_DELETE EMAKEHR(0x1f01) +#define NGEN_E_TOO_MANY_INTERFACES EMAKEHR(0x1f02) +#define NGEN_E_OLDER_RUNTIME EMAKEHR(0x1f03) +#define NGEN_E_WORKER_UNEXPECTED_EXIT EMAKEHR(0x1f04) +#define NGEN_E_WORKER_UNEXPECTED_SYNC EMAKEHR(0x1f05) +#define NGEN_E_SYS_ASM_NI_MISSING EMAKEHR(0x1f06) +#define NGEN_E_EXE_MACHINE_TYPE_MISMATCH EMAKEHR(0x1f07) +#define NGEN_E_ASSEMBLY_EXCLUSION_FILE_PARSE_ERROR EMAKEHR(0x1f08) +#define NGEN_E_HARDBOUND_DEPENDENCY_MISSING EMAKEHR(0x1f09) +#define NGEN_E_NOT_RUNNING_IN_EXPECTED_PACKAGE EMAKEHR(0x1f0a) +#define NGEN_E_FILE_NOT_ASSEMBLY EMAKEHR(0x1f0b) +#define CLDB_E_INTERNALERROR EMAKEHR(0x1fff) +#define CLR_E_BIND_ASSEMBLY_VERSION_TOO_LOW EMAKEHR(0x2000) +#define CLR_E_BIND_ASSEMBLY_PUBLIC_KEY_MISMATCH EMAKEHR(0x2001) +#define CLR_E_BIND_IMAGE_UNAVAILABLE EMAKEHR(0x2002) +#define CLR_E_BIND_UNRECOGNIZED_IDENTITY_FORMAT EMAKEHR(0x2003) +#define CLR_E_BIND_ASSEMBLY_NOT_FOUND EMAKEHR(0x2004) +#define CLR_E_BIND_TYPE_NOT_FOUND EMAKEHR(0x2005) +#define CLR_E_BIND_SYS_ASM_NI_MISSING EMAKEHR(0x2006) +#define CLR_E_BIND_NI_SECURITY_FAILURE EMAKEHR(0x2007) +#define CLR_E_BIND_NI_DEP_IDENTITY_MISMATCH EMAKEHR(0x2008) +#define CLR_E_GC_OOM EMAKEHR(0x2009) +#define COR_E_UNAUTHORIZEDACCESS E_ACCESSDENIED +#define COR_E_ARGUMENT E_INVALIDARG +#define COR_E_INVALIDCAST E_NOINTERFACE +#define COR_E_OUTOFMEMORY E_OUTOFMEMORY +#define COR_E_NULLREFERENCE E_POINTER +#define COR_E_ARITHMETIC __HRESULT_FROM_WIN32(ERROR_ARITHMETIC_OVERFLOW) +#define COR_E_BAD_PATHNAME __HRESULT_FROM_WIN32(ERROR_BAD_PATHNAME) +#define COR_E_PATHTOOLONG __HRESULT_FROM_WIN32(ERROR_FILENAME_EXCED_RANGE) +#define COR_E_FILENOTFOUND __HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND) +#define COR_E_ENDOFSTREAM __HRESULT_FROM_WIN32(ERROR_HANDLE_EOF) +#define COR_E_DIRECTORYNOTFOUND __HRESULT_FROM_WIN32(ERROR_PATH_NOT_FOUND) +#define COR_E_STACKOVERFLOW __HRESULT_FROM_WIN32(ERROR_STACK_OVERFLOW) +#define COR_E_AMBIGUOUSMATCH _HRESULT_TYPEDEF_(0x8000211DL) +#define COR_E_TARGETPARAMCOUNT _HRESULT_TYPEDEF_(0x8002000EL) +#define COR_E_DIVIDEBYZERO _HRESULT_TYPEDEF_(0x80020012L) +#define COR_E_BADIMAGEFORMAT _HRESULT_TYPEDEF_(0x8007000BL) + + +#endif // __COMMON_LANGUAGE_RUNTIME_HRESULTS__ diff --git a/src/uwp/Host/UWPHost/gchost.h b/src/uwp/Host/UWPHost/gchost.h new file mode 100644 index 00000000..1dcc1fdc --- /dev/null +++ b/src/uwp/Host/UWPHost/gchost.h @@ -0,0 +1,166 @@ +// +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. +// + + + +/* this ALWAYS GENERATED file contains the definitions for the interfaces */ + + + /* File created by MIDL compiler version 8.00.0603 */ +/* @@MIDL_FILE_HEADING( ) */ + +#pragma warning( disable: 4049 ) /* more than 64k source lines */ + + +/* verify that the version is high enough to compile this file*/ +#ifndef __REQUIRED_RPCNDR_H_VERSION__ +#define __REQUIRED_RPCNDR_H_VERSION__ 475 +#endif + +#include "rpc.h" +#include "rpcndr.h" + +#ifndef __RPCNDR_H_VERSION__ +#error this stub requires an updated version of +#endif // __RPCNDR_H_VERSION__ + +#ifndef COM_NO_WINDOWS_H +#include "windows.h" +#include "ole2.h" +#endif /*COM_NO_WINDOWS_H*/ + +#ifndef __gchost_h__ +#define __gchost_h__ + +#if defined(_MSC_VER) && (_MSC_VER >= 1020) +#pragma once +#endif + +/* Forward Declarations */ + +#ifndef __IDummyDoNotUse_FWD_DEFINED__ +#define __IDummyDoNotUse_FWD_DEFINED__ +typedef interface IDummyDoNotUse IDummyDoNotUse; + +#endif /* __IDummyDoNotUse_FWD_DEFINED__ */ + + +/* header files for imported files */ +#include "unknwn.h" + +#ifdef __cplusplus +extern "C"{ +#endif + + +/* interface __MIDL_itf_gchost_0000_0000 */ +/* [local] */ + +typedef struct _COR_GC_STATS + { + ULONG Flags; + SIZE_T ExplicitGCCount; + SIZE_T GenCollectionsTaken[ 3 ]; + SIZE_T CommittedKBytes; + SIZE_T ReservedKBytes; + SIZE_T Gen0HeapSizeKBytes; + SIZE_T Gen1HeapSizeKBytes; + SIZE_T Gen2HeapSizeKBytes; + SIZE_T LargeObjectHeapSizeKBytes; + SIZE_T KBytesPromotedFromGen0; + SIZE_T KBytesPromotedFromGen1; + } COR_GC_STATS; + +/* + * WARNING - This is a dummy interface that should never be used. + * The code is written this way because Midl requires a CoClass, Interface, etc... that generates + * a guid. Removing the IGCHost interface for FEATURE_INCLUDE_ALL_INTERFACES removes the only guid + * This option was selected because ifdefs are not simple to implement for excluding files in SOURCES +*/ + + +extern RPC_IF_HANDLE __MIDL_itf_gchost_0000_0000_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_gchost_0000_0000_v0_0_s_ifspec; + +#ifndef __IDummyDoNotUse_INTERFACE_DEFINED__ +#define __IDummyDoNotUse_INTERFACE_DEFINED__ + +/* interface IDummyDoNotUse */ +/* [local][unique][uuid][object] */ + + +EXTERN_C const IID IID_IDummyDoNotUse; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("F9423916-2A35-4f03-9EE9-DDAFA3C8AEE0") + IDummyDoNotUse : public IUnknown + { + public: + }; + + +#else /* C style interface */ + + typedef struct IDummyDoNotUseVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IDummyDoNotUse * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IDummyDoNotUse * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IDummyDoNotUse * This); + + END_INTERFACE + } IDummyDoNotUseVtbl; + + interface IDummyDoNotUse + { + CONST_VTBL struct IDummyDoNotUseVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IDummyDoNotUse_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IDummyDoNotUse_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IDummyDoNotUse_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IDummyDoNotUse_INTERFACE_DEFINED__ */ + + +/* Additional Prototypes for ALL interfaces */ + +/* end of Additional Prototypes */ + +#ifdef __cplusplus +} +#endif + +#endif + diff --git a/src/uwp/Host/UWPHost/ivalidator.h b/src/uwp/Host/UWPHost/ivalidator.h new file mode 100644 index 00000000..583509ac --- /dev/null +++ b/src/uwp/Host/UWPHost/ivalidator.h @@ -0,0 +1,333 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + + + +/* this ALWAYS GENERATED file contains the definitions for the interfaces */ + + + /* File created by MIDL compiler version 8.00.0603 */ +/* @@MIDL_FILE_HEADING( ) */ + +#pragma warning( disable: 4049 ) /* more than 64k source lines */ + + +/* verify that the version is high enough to compile this file*/ +#ifndef __REQUIRED_RPCNDR_H_VERSION__ +#define __REQUIRED_RPCNDR_H_VERSION__ 475 +#endif + +#include "rpc.h" +#include "rpcndr.h" + +#ifndef __RPCNDR_H_VERSION__ +#error this stub requires an updated version of +#endif // __RPCNDR_H_VERSION__ + +#ifndef COM_NO_WINDOWS_H +#include "windows.h" +#include "ole2.h" +#endif /*COM_NO_WINDOWS_H*/ + +#ifndef __IValidator_h__ +#define __IValidator_h__ + +#if defined(_MSC_VER) && (_MSC_VER >= 1020) +#pragma once +#endif + +/* Forward Declarations */ + +#ifndef __IValidator_FWD_DEFINED__ +#define __IValidator_FWD_DEFINED__ +typedef interface IValidator IValidator; + +#endif /* __IValidator_FWD_DEFINED__ */ + + +#ifndef __ICLRValidator_FWD_DEFINED__ +#define __ICLRValidator_FWD_DEFINED__ +typedef interface ICLRValidator ICLRValidator; + +#endif /* __ICLRValidator_FWD_DEFINED__ */ + + +/* header files for imported files */ +#include "ivehandler.h" + +#ifdef __cplusplus +extern "C"{ +#endif + + +/* interface __MIDL_itf_IValidator_0000_0000 */ +/* [local] */ + +#pragma warning(push) +#pragma warning(disable:28718) + + + +enum ValidatorFlags + { + VALIDATOR_EXTRA_VERBOSE = 0x1, + VALIDATOR_SHOW_SOURCE_LINES = 0x2, + VALIDATOR_CHECK_ILONLY = 0x4, + VALIDATOR_CHECK_PEFORMAT_ONLY = 0x8, + VALIDATOR_NOCHECK_PEFORMAT = 0x10, + VALIDATOR_TRANSPARENT_ONLY = 0x20 + } ; + + +extern RPC_IF_HANDLE __MIDL_itf_IValidator_0000_0000_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_IValidator_0000_0000_v0_0_s_ifspec; + +#ifndef __IValidator_INTERFACE_DEFINED__ +#define __IValidator_INTERFACE_DEFINED__ + +/* interface IValidator */ +/* [unique][uuid][object] */ + + +EXTERN_C const IID IID_IValidator; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("63DF8730-DC81-4062-84A2-1FF943F59FAC") + IValidator : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE Validate( + /* [in] */ IVEHandler *veh, + /* [in] */ IUnknown *pAppDomain, + /* [in] */ unsigned long ulFlags, + /* [in] */ unsigned long ulMaxError, + /* [in] */ unsigned long token, + /* [in] */ LPWSTR fileName, + /* [size_is][in] */ BYTE *pe, + /* [in] */ unsigned long ulSize) = 0; + + virtual HRESULT STDMETHODCALLTYPE FormatEventInfo( + /* [in] */ HRESULT hVECode, + /* [in] */ VEContext Context, + /* [out][in] */ LPWSTR msg, + /* [in] */ unsigned long ulMaxLength, + /* [in] */ SAFEARRAY * psa) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IValidatorVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IValidator * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IValidator * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IValidator * This); + + HRESULT ( STDMETHODCALLTYPE *Validate )( + IValidator * This, + /* [in] */ IVEHandler *veh, + /* [in] */ IUnknown *pAppDomain, + /* [in] */ unsigned long ulFlags, + /* [in] */ unsigned long ulMaxError, + /* [in] */ unsigned long token, + /* [in] */ LPWSTR fileName, + /* [size_is][in] */ BYTE *pe, + /* [in] */ unsigned long ulSize); + + HRESULT ( STDMETHODCALLTYPE *FormatEventInfo )( + IValidator * This, + /* [in] */ HRESULT hVECode, + /* [in] */ VEContext Context, + /* [out][in] */ LPWSTR msg, + /* [in] */ unsigned long ulMaxLength, + /* [in] */ SAFEARRAY * psa); + + END_INTERFACE + } IValidatorVtbl; + + interface IValidator + { + CONST_VTBL struct IValidatorVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IValidator_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IValidator_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IValidator_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IValidator_Validate(This,veh,pAppDomain,ulFlags,ulMaxError,token,fileName,pe,ulSize) \ + ( (This)->lpVtbl -> Validate(This,veh,pAppDomain,ulFlags,ulMaxError,token,fileName,pe,ulSize) ) + +#define IValidator_FormatEventInfo(This,hVECode,Context,msg,ulMaxLength,psa) \ + ( (This)->lpVtbl -> FormatEventInfo(This,hVECode,Context,msg,ulMaxLength,psa) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IValidator_INTERFACE_DEFINED__ */ + + +#ifndef __ICLRValidator_INTERFACE_DEFINED__ +#define __ICLRValidator_INTERFACE_DEFINED__ + +/* interface ICLRValidator */ +/* [unique][uuid][object] */ + + +EXTERN_C const IID IID_ICLRValidator; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("63DF8730-DC81-4062-84A2-1FF943F59FDD") + ICLRValidator : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE Validate( + /* [in] */ IVEHandler *veh, + /* [in] */ unsigned long ulAppDomainId, + /* [in] */ unsigned long ulFlags, + /* [in] */ unsigned long ulMaxError, + /* [in] */ unsigned long token, + /* [in] */ LPWSTR fileName, + /* [size_is][in] */ BYTE *pe, + /* [in] */ unsigned long ulSize) = 0; + + virtual HRESULT STDMETHODCALLTYPE FormatEventInfo( + /* [in] */ HRESULT hVECode, + /* [in] */ VEContext Context, + /* [out][in] */ LPWSTR msg, + /* [in] */ unsigned long ulMaxLength, + /* [in] */ SAFEARRAY * psa) = 0; + + }; + + +#else /* C style interface */ + + typedef struct ICLRValidatorVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ICLRValidator * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ICLRValidator * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ICLRValidator * This); + + HRESULT ( STDMETHODCALLTYPE *Validate )( + ICLRValidator * This, + /* [in] */ IVEHandler *veh, + /* [in] */ unsigned long ulAppDomainId, + /* [in] */ unsigned long ulFlags, + /* [in] */ unsigned long ulMaxError, + /* [in] */ unsigned long token, + /* [in] */ LPWSTR fileName, + /* [size_is][in] */ BYTE *pe, + /* [in] */ unsigned long ulSize); + + HRESULT ( STDMETHODCALLTYPE *FormatEventInfo )( + ICLRValidator * This, + /* [in] */ HRESULT hVECode, + /* [in] */ VEContext Context, + /* [out][in] */ LPWSTR msg, + /* [in] */ unsigned long ulMaxLength, + /* [in] */ SAFEARRAY * psa); + + END_INTERFACE + } ICLRValidatorVtbl; + + interface ICLRValidator + { + CONST_VTBL struct ICLRValidatorVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define ICLRValidator_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define ICLRValidator_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define ICLRValidator_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define ICLRValidator_Validate(This,veh,ulAppDomainId,ulFlags,ulMaxError,token,fileName,pe,ulSize) \ + ( (This)->lpVtbl -> Validate(This,veh,ulAppDomainId,ulFlags,ulMaxError,token,fileName,pe,ulSize) ) + +#define ICLRValidator_FormatEventInfo(This,hVECode,Context,msg,ulMaxLength,psa) \ + ( (This)->lpVtbl -> FormatEventInfo(This,hVECode,Context,msg,ulMaxLength,psa) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __ICLRValidator_INTERFACE_DEFINED__ */ + + +/* interface __MIDL_itf_IValidator_0000_0002 */ +/* [local] */ + +#pragma warning(pop) + + +extern RPC_IF_HANDLE __MIDL_itf_IValidator_0000_0002_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_IValidator_0000_0002_v0_0_s_ifspec; + +/* Additional Prototypes for ALL interfaces */ + +unsigned long __RPC_USER LPSAFEARRAY_UserSize( unsigned long *, unsigned long , LPSAFEARRAY * ); +unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal( unsigned long *, unsigned char *, LPSAFEARRAY * ); +unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(unsigned long *, unsigned char *, LPSAFEARRAY * ); +void __RPC_USER LPSAFEARRAY_UserFree( unsigned long *, LPSAFEARRAY * ); + +/* end of Additional Prototypes */ + +#ifdef __cplusplus +} +#endif + +#endif + diff --git a/src/uwp/Host/UWPHost/ivehandler.h b/src/uwp/Host/UWPHost/ivehandler.h new file mode 100644 index 00000000..bdd8cb52 --- /dev/null +++ b/src/uwp/Host/UWPHost/ivehandler.h @@ -0,0 +1,220 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + + + +/* this ALWAYS GENERATED file contains the definitions for the interfaces */ + + + /* File created by MIDL compiler version 8.00.0603 */ +/* @@MIDL_FILE_HEADING( ) */ + +#pragma warning( disable: 4049 ) /* more than 64k source lines */ + + +/* verify that the version is high enough to compile this file*/ +#ifndef __REQUIRED_RPCNDR_H_VERSION__ +#define __REQUIRED_RPCNDR_H_VERSION__ 475 +#endif + +#include "rpc.h" +#include "rpcndr.h" + +#ifndef __RPCNDR_H_VERSION__ +#error this stub requires an updated version of +#endif // __RPCNDR_H_VERSION__ + +#ifndef COM_NO_WINDOWS_H +#include "windows.h" +#include "ole2.h" +#endif /*COM_NO_WINDOWS_H*/ + +#ifndef __IVEHandler_h__ +#define __IVEHandler_h__ + +#if defined(_MSC_VER) && (_MSC_VER >= 1020) +#pragma once +#endif + +/* Forward Declarations */ + +#ifndef __VEHandlerClass_FWD_DEFINED__ +#define __VEHandlerClass_FWD_DEFINED__ + +#ifdef __cplusplus +typedef class VEHandlerClass VEHandlerClass; +#else +typedef struct VEHandlerClass VEHandlerClass; +#endif /* __cplusplus */ + +#endif /* __VEHandlerClass_FWD_DEFINED__ */ + + +#ifndef __IVEHandler_FWD_DEFINED__ +#define __IVEHandler_FWD_DEFINED__ +typedef interface IVEHandler IVEHandler; + +#endif /* __IVEHandler_FWD_DEFINED__ */ + + +/* header files for imported files */ +#include "unknwn.h" + +#ifdef __cplusplus +extern "C"{ +#endif + + +/* interface __MIDL_itf_IVEHandler_0000_0000 */ +/* [local] */ + +typedef struct tag_VerError + { + unsigned long flags; + unsigned long opcode; + unsigned long uOffset; + unsigned long Token; + unsigned long item1_flags; + int *item1_data; + unsigned long item2_flags; + int *item2_data; + } _VerError; + +typedef _VerError VEContext; + + + + +extern RPC_IF_HANDLE __MIDL_itf_IVEHandler_0000_0000_v0_0_c_ifspec; +extern RPC_IF_HANDLE __MIDL_itf_IVEHandler_0000_0000_v0_0_s_ifspec; + + +#ifndef __VEHandlerLib_LIBRARY_DEFINED__ +#define __VEHandlerLib_LIBRARY_DEFINED__ + +/* library VEHandlerLib */ +/* [helpstring][version][uuid] */ + + +EXTERN_C const IID LIBID_VEHandlerLib; + +EXTERN_C const CLSID CLSID_VEHandlerClass; + +#ifdef __cplusplus + +class DECLSPEC_UUID("856CA1B1-7DAB-11d3-ACEC-00C04F86C309") +VEHandlerClass; +#endif +#endif /* __VEHandlerLib_LIBRARY_DEFINED__ */ + +#ifndef __IVEHandler_INTERFACE_DEFINED__ +#define __IVEHandler_INTERFACE_DEFINED__ + +/* interface IVEHandler */ +/* [unique][uuid][object] */ + + +EXTERN_C const IID IID_IVEHandler; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("856CA1B2-7DAB-11d3-ACEC-00C04F86C309") + IVEHandler : public IUnknown + { + public: + virtual HRESULT STDMETHODCALLTYPE VEHandler( + /* [in] */ HRESULT VECode, + /* [in] */ VEContext Context, + /* [in] */ SAFEARRAY * psa) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetReporterFtn( + /* [in] */ __int64 lFnPtr) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IVEHandlerVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IVEHandler * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IVEHandler * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IVEHandler * This); + + HRESULT ( STDMETHODCALLTYPE *VEHandler )( + IVEHandler * This, + /* [in] */ HRESULT VECode, + /* [in] */ VEContext Context, + /* [in] */ SAFEARRAY * psa); + + HRESULT ( STDMETHODCALLTYPE *SetReporterFtn )( + IVEHandler * This, + /* [in] */ __int64 lFnPtr); + + END_INTERFACE + } IVEHandlerVtbl; + + interface IVEHandler + { + CONST_VTBL struct IVEHandlerVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IVEHandler_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IVEHandler_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IVEHandler_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IVEHandler_VEHandler(This,VECode,Context,psa) \ + ( (This)->lpVtbl -> VEHandler(This,VECode,Context,psa) ) + +#define IVEHandler_SetReporterFtn(This,lFnPtr) \ + ( (This)->lpVtbl -> SetReporterFtn(This,lFnPtr) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IVEHandler_INTERFACE_DEFINED__ */ + + +/* Additional Prototypes for ALL interfaces */ + +unsigned long __RPC_USER LPSAFEARRAY_UserSize( unsigned long *, unsigned long , LPSAFEARRAY * ); +unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal( unsigned long *, unsigned char *, LPSAFEARRAY * ); +unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(unsigned long *, unsigned char *, LPSAFEARRAY * ); +void __RPC_USER LPSAFEARRAY_UserFree( unsigned long *, LPSAFEARRAY * ); + +/* end of Additional Prototypes */ + +#ifdef __cplusplus +} +#endif + +#endif + + From 0777bfc702f02c4dbb4e71cf30a0d6fdf08d3659 Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Thu, 20 Jul 2017 06:47:36 -0700 Subject: [PATCH 590/625] Update CoreClr, CoreFx, Standard to preview2-25520-01, preview2-25520-92, preview1-25520-01, respectively --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index 3d7c0fab..5842b5da 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,20 +9,20 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 401c80913afdea5399e0f39376db88e465ae62c9 - 401c80913afdea5399e0f39376db88e465ae62c9 - 401c80913afdea5399e0f39376db88e465ae62c9 + 844634f9330c84656bfc487f220a9dc4e536a913 + 844634f9330c84656bfc487f220a9dc4e536a913 + 844634f9330c84656bfc487f220a9dc4e536a913 - 4.5.0-preview2-25518-02 + 4.5.0-preview2-25520-92 2.1.0-preview1-25324-02 - 2.1.0-preview2-25518-01 + 2.1.0-preview2-25520-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25518-00 - 2.1.0-preview1-25518-01 + 2.1.0-preview1-25520-01 1.4.1 4.5.0-preview2-25507-04 From 632aa6827e4ffba5f3cb1ec9fb105100c85f7f23 Mon Sep 17 00:00:00 2001 From: Davis Goodin Date: Thu, 20 Jul 2017 13:19:42 -0500 Subject: [PATCH 591/625] Add virtual dir ending slash (#2872) This prevents a stabilized version from downloading all nupkgs in the blob storage container. --- publish/publish.proj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/publish/publish.proj b/publish/publish.proj index aec9e271..f0b7889b 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -148,7 +148,7 @@ + FilterBlobNames="Runtime/$(SharedFrameworkNugetVersion)/"> @@ -168,7 +168,7 @@ AccountKey="$(AzureAccessToken)" ContainerName="$(ContainerName)" BlobNames="@(_CoreHostPackages)" - BlobNamePrefix="Runtime/$(SharedFrameworkNugetVersion)" + BlobNamePrefix="Runtime/$(SharedFrameworkNugetVersion)/" DownloadDirectory="$(DownloadDirectory)" /> <_DownloadedPackages Include="@(_CoreHostPackages->'$(PublishDirectory)%(Filename)%(Extension)')" /> From 4d56a483076c3d3f43f2b357177ee14de16ee15d Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Thu, 20 Jul 2017 16:23:56 -0700 Subject: [PATCH 592/625] Enable WCF package updates and update dependency to latest (#2879) Fixes #2743 --- dependencies.props | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/dependencies.props b/dependencies.props index 5842b5da..59332547 100644 --- a/dependencies.props +++ b/dependencies.props @@ -12,8 +12,7 @@ 844634f9330c84656bfc487f220a9dc4e536a913 844634f9330c84656bfc487f220a9dc4e536a913 844634f9330c84656bfc487f220a9dc4e536a913 - + 41e2145a98edbe62a187204fae6a7db66531f095 @@ -24,7 +23,7 @@ 2.0.0-preview-25518-00 2.1.0-preview1-25520-01 1.4.1 - 4.5.0-preview2-25507-04 + 4.5.0-preview2-25520-02 @@ -47,11 +46,10 @@ $(BaseDotNetBuildInfo)standard/$(DependencyBranch) $(StandardCurrentRef) - + https://raw.githubusercontent.com/dotnet/versions @@ -77,11 +75,10 @@ NETStandardVersion NETStandard.Library - + From 597fd5c20291875d96db98c018fce299ef418529 Mon Sep 17 00:00:00 2001 From: Simon Nattress Date: Thu, 20 Jul 2017 16:29:59 -0700 Subject: [PATCH 593/625] Remove PAT Commit on behalf of @chcosta, PAT has been cycled. --- buildpipeline/Core-Setup-Windows-BT.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json index 6f8666e9..a2e177e6 100644 --- a/buildpipeline/Core-Setup-Windows-BT.json +++ b/buildpipeline/Core-Setup-Windows-BT.json @@ -689,7 +689,8 @@ "value": "dn-bot" }, "PB_VsoPassword": { - "value": "cwzvo2apfo6wdij6q3vyruzfmbbcc2wkyus6widyltfkev7vumfa" + "value": null, + "isSecret": true }, "PB_VsoRepoUrl": { "value": "--branch $(PB_Branch) https://$(PB_VsoAccountName):$(PB_VsoPassword)@devdiv.visualstudio.com/DevDiv/_git/DotNet-Core-Setup-Trusted" @@ -782,4 +783,4 @@ "revision": 418097767, "visibility": "private" } -} \ No newline at end of file +} From 22906c6683488c696c9fd21ac42610d1802cc2a2 Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Thu, 20 Jul 2017 16:30:12 -0700 Subject: [PATCH 594/625] Update Microsoft.Net.Native.Compiler reference from 1.6.0 to 1.7.0 (#2864) --- .../Microsoft.NETCore.UniversalWindowsPlatform/netcore50.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/netcore50.props b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/netcore50.props index fbee88e1..64bcc262 100644 --- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/netcore50.props +++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/netcore50.props @@ -5,7 +5,7 @@ 5.0.2 - 1.6.0 + 1.7.0 1.0.2 From 4f5b7df840b37e08018187f604b5f94ad63ad071 Mon Sep 17 00:00:00 2001 From: Davis Goodin Date: Fri, 21 Jul 2017 08:57:00 -0500 Subject: [PATCH 595/625] Add virtual dir ending slash when finalizing build (#2881) (cherry picked from commit aea7b1cab8912f78a07408d9e95aafb9bea1e150) --- tools-local/tasks/FinalizeBuild.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools-local/tasks/FinalizeBuild.cs b/tools-local/tasks/FinalizeBuild.cs index 9e4cd053..d21e7129 100644 --- a/tools-local/tasks/FinalizeBuild.cs +++ b/tools-local/tasks/FinalizeBuild.cs @@ -95,7 +95,7 @@ namespace Microsoft.DotNet.Build.Tasks try { - CopyBlobs($"Runtime/{ProductVersion}", $"Runtime/{Channel}/"); + CopyBlobs($"Runtime/{ProductVersion}/", $"Runtime/{Channel}/"); // Generate the latest version text file string sfxVersion = GetSharedFrameworkVersionFileContent(); From fa78c2fbae5a19aedf27ab2b5a8f22ebe88a6030 Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Mon, 24 Jul 2017 06:27:34 -0700 Subject: [PATCH 596/625] Update CoreClr, CoreFx, Standard, WCF to preview2-25524-01, preview2-25524-02, preview1-25524-01, preview2-25524-01, respectively --- dependencies.props | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dependencies.props b/dependencies.props index 59332547..b94e6914 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,21 +9,21 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 844634f9330c84656bfc487f220a9dc4e536a913 - 844634f9330c84656bfc487f220a9dc4e536a913 - 844634f9330c84656bfc487f220a9dc4e536a913 - 41e2145a98edbe62a187204fae6a7db66531f095 + ae4ab8c72e4a023a3f0027dff80bff099e535904 + ae4ab8c72e4a023a3f0027dff80bff099e535904 + ae4ab8c72e4a023a3f0027dff80bff099e535904 + ae4ab8c72e4a023a3f0027dff80bff099e535904 - 4.5.0-preview2-25520-92 + 4.5.0-preview2-25524-02 2.1.0-preview1-25324-02 - 2.1.0-preview2-25520-01 + 2.1.0-preview2-25524-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25518-00 - 2.1.0-preview1-25520-01 + 2.1.0-preview1-25524-01 1.4.1 - 4.5.0-preview2-25520-02 + 4.5.0-preview2-25524-01 From 591841b2a1cf260e17d7e3e68263e3947e84067a Mon Sep 17 00:00:00 2001 From: Simon Nattress Date: Mon, 24 Jul 2017 17:43:06 -0700 Subject: [PATCH 597/625] Update .NET Native to build 25524.00 --- dependencies.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dependencies.props b/dependencies.props index b94e6914..c3750b11 100644 --- a/dependencies.props +++ b/dependencies.props @@ -20,7 +20,7 @@ 2.1.0-preview1-25324-02 2.1.0-preview2-25524-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) - 2.0.0-preview-25518-00 + 2.0.0-preview-25524-00 2.1.0-preview1-25524-01 1.4.1 4.5.0-preview2-25524-01 From a0496e00b04e03e66bd2d5346b52c72576c7ae17 Mon Sep 17 00:00:00 2001 From: Zach Montoya Date: Mon, 24 Jul 2017 16:36:33 -0700 Subject: [PATCH 598/625] Add DesignTimeAppxPackageRegistration MSBuild items to aid in discovery of appx packages for VS --- .../Microsoft.Net.UWPCoreRuntimeSdk.targets.template | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/rid-templates/Microsoft.Net.UWPCoreRuntimeSdk.targets.template b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/rid-templates/Microsoft.Net.UWPCoreRuntimeSdk.targets.template index 9d3137c5..255ba05e 100644 --- a/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/rid-templates/Microsoft.Net.UWPCoreRuntimeSdk.targets.template +++ b/src/pkg/projects/Microsoft.Net.UWPCoreRuntimeSdk/contents/rid-templates/Microsoft.Net.UWPCoreRuntimeSdk.targets.template @@ -7,5 +7,11 @@ [AppxVersion] 'CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US' + + [AppxBuildArch] + [AppxVersion] + 'CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US' + From 9a20b39067a7fcb979c7421e97c081f8544ae187 Mon Sep 17 00:00:00 2001 From: Wes Haggard Date: Wed, 26 Jul 2017 09:52:03 -0700 Subject: [PATCH 599/625] Enable building this repo with VS2017 --- run.cmd | 19 +++++++++------ run.ps1 | 3 ++- src/corehost/build.cmd | 55 +++++++++++++++++++++++++++--------------- src/uwp/build.cmd | 50 ++++++++++++++++++++++++++------------ 4 files changed, 84 insertions(+), 43 deletions(-) diff --git a/run.cmd b/run.cmd index 2f52e07d..b513914a 100644 --- a/run.cmd +++ b/run.cmd @@ -1,16 +1,21 @@ @if "%_echo%" neq "on" echo off setlocal -if not defined VisualStudioVersion ( - if defined VS140COMNTOOLS ( - call "%VS140COMNTOOLS%\VsDevCmd.bat" - goto :Run - ) - echo Error: Visual Studio 2015 required. - echo Please see https://github.com/dotnet/core-setup/blob/master/Documentation/building/windows-instructions.md for build instructions. +if defined VisualStudioVersion goto :Run + +set _VSWHERE="%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" +if exist %_VSWHERE% ( + for /f "usebackq tokens=*" %%i in (`%_VSWHERE% -latest -property installationPath`) do set _VSCOMNTOOLS=%%i\Common7\Tools +) +if not exist "%_VSCOMNTOOLS%" set _VSCOMNTOOLS=%VS140COMNTOOLS% +if not exist "%_VSCOMNTOOLS%" ( + echo Error: Visual Studio 2015 or 2017 required. + echo Please see https://github.com/dotnet/corefx/blob/master/Documentation/project-docs/developer-guide.md for build instructions. exit /b 1 ) +call "%_VSCOMNTOOLS%\VsDevCmd.bat" + :Run :: We do not want to run the first-time experience. set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 diff --git a/run.ps1 b/run.ps1 index c7cbb8d7..5363d4ff 100644 --- a/run.ps1 +++ b/run.ps1 @@ -8,5 +8,6 @@ $initTools = Join-Path $PSScriptRoot "init-tools.cmd" # execute the tool using the dotnet.exe host $dotNetExe = Join-Path $toolsLocalPath "dotnetcli\dotnet.exe" $runExe = Join-Path $toolsLocalPath "run.exe" -& $dotNetExe $runExe $args +$runConfig = Join-Path $PSScriptRoot "config.json" +& $dotNetExe $runExe $runConfig $args exit $LastExitCode \ No newline at end of file diff --git a/src/corehost/build.cmd b/src/corehost/build.cmd index 8a5fadfd..71d0def3 100644 --- a/src/corehost/build.cmd +++ b/src/corehost/build.cmd @@ -41,33 +41,50 @@ shift goto :Arg_Loop :ToolsVersion -:: Determine the tools version to pass to cmake/msbuild -if not defined VisualStudioVersion ( - if defined VS140COMNTOOLS ( - goto :VS2015 - ) - goto :MissingVersion -) -if "%VisualStudioVersion%"=="14.0" ( + +if defined VisualStudioVersion goto :RunVCVars + +set _VSWHERE="%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" +if exist %_VSWHERE% ( + for /f "usebackq tokens=*" %%i in (`%_VSWHERE% -latest -property installationPath`) do set _VSCOMNTOOLS=%%i\Common7\Tools +) +if not exist "%_VSCOMNTOOLS%" set _VSCOMNTOOLS=%VS140COMNTOOLS% +if not exist "%_VSCOMNTOOLS%" goto :MissingVersion + +call "%_VSCOMNTOOLS%\VsDevCmd.bat" + +:RunVCVars +if "%VisualStudioVersion%"=="15.0" ( + goto :VS2017 +) else if "%VisualStudioVersion%"=="14.0" ( goto :VS2015 -) +) :MissingVersion -:: Can't find VS 2013+ -echo Error: Visual Studio 2015 required -echo Please see https://github.com/dotnet/corefx/blob/master/Documentation/project-docs/developer-guide.md for build instructions. +:: Can't find VS 2015 or 2017 +echo Error: Visual Studio 2015 or 2017 required +echo Please see https://github.com/dotnet/corefx/tree/master/Documentation for build instructions. exit /b 1 -:VS2015 -:: Setup vars for VS2015 -set __VSVersion=vs2015 -set __PlatformToolset=v140 -if NOT "%__BuildArch%" == "arm64" ( +:VS2017 +:: Setup vars for VS2017 +set __VSVersion=vs2017 +set __PlatformToolset=v141 +if NOT "%__BuildArch%" == "arm64" ( :: Set the environment for the native build - call "%VS140COMNTOOLS%\..\..\VC\vcvarsall.bat" %__VCBuildArch% + call "%VS150COMNTOOLS%..\..\VC\Auxiliary\Build\vcvarsall.bat" %__VCBuildArch% ) goto :SetupDirs +:VS2015 +:: Setup vars for VS2015build +set __VSVersion=vs2015 +set __PlatformToolset=v140 +if NOT "%__BuildArch%" == "arm64" ( + :: Set the environment for the native build + call "%VS140COMNTOOLS%..\..\VC\vcvarsall.bat" %__VCBuildArch% +) + :SetupDirs :: Setup to cmake the native components echo Commencing build of corehost @@ -102,7 +119,7 @@ exit /b 1 :GenVSSolution :: Regenerate the VS solution -if /i "%__BuildArch%" == "arm64" ( +if /i "%__BuildArch%" == "arm64" ( REM arm64 builds currently use private toolset which has not been released yet REM TODO, remove once the toolset is open. call :PrivateToolSet diff --git a/src/uwp/build.cmd b/src/uwp/build.cmd index 96316b97..92a6387e 100644 --- a/src/uwp/build.cmd +++ b/src/uwp/build.cmd @@ -32,30 +32,48 @@ shift goto :Arg_Loop :ToolsVersion -:: Determine the tools version to pass to cmake/msbuild -if not defined VisualStudioVersion ( - if defined VS140COMNTOOLS ( - goto :VS2015 - ) - goto :MissingVersion -) -if "%VisualStudioVersion%"=="14.0" ( +if defined VisualStudioVersion goto :RunVCVars + +set _VSWHERE="%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" +if exist %_VSWHERE% ( + for /f "usebackq tokens=*" %%i in (`%_VSWHERE% -latest -property installationPath`) do set _VSCOMNTOOLS=%%i\Common7\Tools +) +if not exist "%_VSCOMNTOOLS%" set _VSCOMNTOOLS=%VS140COMNTOOLS% +if not exist "%_VSCOMNTOOLS%" goto :MissingVersion + +call "%_VSCOMNTOOLS%\VsDevCmd.bat" + +:RunVCVars +if "%VisualStudioVersion%"=="15.0" ( + goto :VS2017 +) else if "%VisualStudioVersion%"=="14.0" ( goto :VS2015 -) +) :MissingVersion -:: Can't find VS 2013+ -echo Error: Visual Studio 2015 required -echo Please see https://github.com/dotnet/corefx/blob/master/Documentation/project-docs/developer-guide.md for build instructions. +:: Can't find VS 2015 or 2017 +echo Error: Visual Studio 2015 or 2017 required +echo Please see https://github.com/dotnet/corefx/tree/master/Documentation for build instructions. exit /b 1 +:VS2017 +:: Setup vars for VS2017 +set __VSVersion=vs2017 +set __PlatformToolset=v141 +if NOT "%__BuildArch%" == "arm64" ( + :: Set the environment for the native build + call "%VS150COMNTOOLS%..\..\VC\Auxiliary\Build\vcvarsall.bat" %__VCBuildArch% +) +goto :SetupDirs + :VS2015 -:: Setup vars for VS2015 +:: Setup vars for VS2015build set __VSVersion=vs2015 set __PlatformToolset=v140 - -:: Set the environment for the native build -call "%VS140COMNTOOLS%\..\..\VC\vcvarsall.bat" %__VCBuildArch% +if NOT "%__BuildArch%" == "arm64" ( + :: Set the environment for the native build + call "%VS140COMNTOOLS%..\..\VC\vcvarsall.bat" %__VCBuildArch% +) :SetupDirs :: Setup to cmake the native components From bfd4c1a8f82ceb8729e4c95b39a41411834bb0b8 Mon Sep 17 00:00:00 2001 From: Simon Nattress Date: Tue, 18 Jul 2017 16:43:54 -0700 Subject: [PATCH 600/625] Build UWPShim as a Store App Alter build of UWPShim so it is a Windows Store exe instead of a desktop command line application. This prevents a command window popping up when running CoreCLR apps in VS. This requires splitting the uwp cmake build into two pieces: a desktop piece for CopyWin32Resources and UWPHost, and a Store app piece for UWPShim Statically link vcruntime.lib into CopyWin32Resources and UWPHost to avoid a runtime requirement that vcruntime140.dll is present. --- src/uwp/CopyWin32Resources/CMakeLists.txt | 3 + src/uwp/Host/CMakeLists.txt | 1 - src/uwp/Host/UWPHost/CMakeLists.txt | 2 + src/uwp/Host/UWPShim/CMakeLists.txt | 14 ++- src/uwp/Host/UWPShim/UWPShim.cpp | 147 +++++++++++++++++++++- src/uwp/Windows/gen-buildsys-win.bat | 11 +- src/uwp/build.cmd | 88 +++++++------ src/uwp/build.proj | 2 +- 8 files changed, 218 insertions(+), 50 deletions(-) diff --git a/src/uwp/CopyWin32Resources/CMakeLists.txt b/src/uwp/CopyWin32Resources/CMakeLists.txt index 928cd570..ee91176a 100644 --- a/src/uwp/CopyWin32Resources/CMakeLists.txt +++ b/src/uwp/CopyWin32Resources/CMakeLists.txt @@ -1,5 +1,8 @@ include_directories("${CLI_CMAKE_RESOURCE_DIR}/copywin32resources") +add_compile_options(/MT) + + add_executable(CopyWin32Resources CopyWin32Resources.cpp native.rc diff --git a/src/uwp/Host/CMakeLists.txt b/src/uwp/Host/CMakeLists.txt index f180f129..a91f09f2 100644 --- a/src/uwp/Host/CMakeLists.txt +++ b/src/uwp/Host/CMakeLists.txt @@ -1,2 +1 @@ add_subdirectory(UWPHost) -add_subdirectory(UWPShim) diff --git a/src/uwp/Host/UWPHost/CMakeLists.txt b/src/uwp/Host/UWPHost/CMakeLists.txt index 2d7862d1..59a10078 100644 --- a/src/uwp/Host/UWPHost/CMakeLists.txt +++ b/src/uwp/Host/UWPHost/CMakeLists.txt @@ -1,5 +1,7 @@ include_directories("${CLI_CMAKE_RESOURCE_DIR}/uwphost") +add_compile_options(/MT) + set(CMAKE_INCLUDE_CURRENT_DIR ON) set(UWPHost_SOURCES diff --git a/src/uwp/Host/UWPShim/CMakeLists.txt b/src/uwp/Host/UWPShim/CMakeLists.txt index 96a05b68..dc5c00eb 100644 --- a/src/uwp/Host/UWPShim/CMakeLists.txt +++ b/src/uwp/Host/UWPShim/CMakeLists.txt @@ -1,4 +1,15 @@ -include_directories("${CLI_CMAKE_RESOURCE_DIR}/uwpshim") +include(../../../settings.cmake) + +add_definitions(-DUNICODE) +add_definitions(-D_UNICODE) +set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SUBSYSTEM:WINDOWS") +set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /ENTRY:wmain") +set(CMAKE_EXE_LINKER_FLAGS_DEBUG "/NODEFAULTLIB:libucrt.lib /DEFAULTLIB:ucrt.lib") + +include_directories("${CLI_CMAKE_RESOURCE_DIR}/uwpshim") +link_directories(${UWPHOST_LIB_PATH}) +set (PLATFORM STORE) + add_executable(UWPShim uwpshim.cpp native.rc @@ -6,6 +17,7 @@ add_executable(UWPShim target_link_libraries(UWPShim UWPHost + vcruntime ) install(TARGETS UWPShim DESTINATION .) diff --git a/src/uwp/Host/UWPShim/UWPShim.cpp b/src/uwp/Host/UWPShim/UWPShim.cpp index 85111ab7..aa479bde 100644 --- a/src/uwp/Host/UWPShim/UWPShim.cpp +++ b/src/uwp/Host/UWPShim/UWPShim.cpp @@ -24,14 +24,149 @@ extern HRESULT ExecuteAssembly(_In_z_ wchar_t *entryPointAssemblyFileName, int a do { errno_t x = (EXPR); if(FAILED(x)) { return (x); } } while (0) #endif -int __cdecl wmain(const int argc, const wchar_t* argv[]) -{ +// Alternative implementation to CommandLineToArgvW, which is not available to Store profile +// apps (including this UWP shim). +LPWSTR *SegmentCommandLine(LPCWSTR lpCmdLine, int *pNumArgs) +{ + *pNumArgs = 0; + + int nch = (int)wcslen(lpCmdLine); + + // Calculate the worst-case storage requirement. (One pointer for + // each argument, plus storage for the arguments themselves.) + int cbAlloc = (nch+1)*sizeof(LPWSTR) + sizeof(wchar_t)*(nch + 1); + + LPWSTR pAlloc = (LPWSTR)malloc(cbAlloc); + if (!pAlloc) + return NULL; + + LPWSTR *argv = (LPWSTR*) pAlloc; // We store the argv pointers in the first halt + LPWSTR pdst = (LPWSTR)( ((BYTE*)pAlloc) + sizeof(LPWSTR)*(nch+1) ); // A running pointer to second half to store arguments + LPCWSTR psrc = lpCmdLine; + wchar_t c; + BOOL inquote; + BOOL copychar; + int numslash; + + // First, parse the program name (argv[0]). Argv[0] is parsed under + // special rules. Anything up to the first whitespace outside a quoted + // subtring is accepted. Backslashes are treated as normal characters. + argv[ (*pNumArgs)++ ] = pdst; + inquote = FALSE; + do { + if (*psrc == L'"' ) + { + inquote = !inquote; + c = *psrc++; + continue; + } + *pdst++ = *psrc; + + c = *psrc++; + + } while ( (c != L'\0' && (inquote || (c != L' ' && c != L'\t'))) ); + + if ( c == L'\0' ) { + psrc--; + } else { + *(pdst-1) = L'\0'; + } + + inquote = FALSE; + + + + /* loop on each argument */ + for(;;) + { + if ( *psrc ) + { + while (*psrc == L' ' || *psrc == L'\t') + { + ++psrc; + } + } + + if (*psrc == L'\0') + break; /* end of args */ + + /* scan an argument */ + argv[ (*pNumArgs)++ ] = pdst; + + /* loop through scanning one argument */ + for (;;) + { + copychar = 1; + /* Rules: 2N backslashes + " ==> N backslashes and begin/end quote + 2N+1 backslashes + " ==> N backslashes + literal " + N backslashes ==> N backslashes */ + numslash = 0; + while (*psrc == L'\\') + { + /* count number of backslashes for use below */ + ++psrc; + ++numslash; + } + if (*psrc == L'"') + { + /* if 2N backslashes before, start/end quote, otherwise + copy literally */ + if (numslash % 2 == 0) + { + if (inquote && psrc[1] == L'"') + { + psrc++; /* Double quote inside quoted string */ + } + else + { + /* skip first quote char and copy second */ + copychar = 0; /* don't copy quote */ + inquote = !inquote; + } + } + numslash /= 2; /* divide numslash by two */ + } + + /* copy slashes */ + while (numslash--) + { + *pdst++ = L'\\'; + } + + /* if at end of arg, break loop */ + if (*psrc == L'\0' || (!inquote && (*psrc == L' ' || *psrc == L'\t'))) + break; + + /* copy character into argument */ + if (copychar) + { + *pdst++ = *psrc; + } + ++psrc; + } + + /* null-terminate the argument */ + + *pdst++ = L'\0'; /* terminate string */ + } + + /* We put one last argument in -- a null ptr */ + argv[ (*pNumArgs) ] = NULL; + + return argv; +} + +int __cdecl wmain() +{ DWORD exitCode = -1; + int argc; + LPCWSTR* wszArglist = const_cast(SegmentCommandLine(GetCommandLineW(), &argc)); + if (argc < 2) { // Invalid number of arguments - return -1; + return exitCode; } // This module is merely a shim to figure out what the actual EntryPoint assembly is and call the Host with @@ -40,12 +175,12 @@ int __cdecl wmain(const int argc, const wchar_t* argv[]) // 1) Current module lives under the "CoreRuntime" subfolder of the AppX package installation folder. // 2) It has the same name as the EntryPoint assembly that will reside in the parent folder (i.e. the AppX package installation folder). - const wchar_t* pActivationModulePath = argv[0]; + const wchar_t* pActivationModulePath = wszArglist[0]; const wchar_t *pLastSlash = wcsrchr(pActivationModulePath, L'\\'); if (pLastSlash == NULL) { - return -1; + return exitCode; } wchar_t entryPointAssemblyFileName[MAX_PATH]; @@ -53,7 +188,7 @@ int __cdecl wmain(const int argc, const wchar_t* argv[]) IfFailRet(wcscat_s(entryPointAssemblyFileName, MAX_PATH, L"\\entrypoint")); IfFailRet(wcscat_s(entryPointAssemblyFileName, MAX_PATH, pLastSlash)); - auto success = ExecuteAssembly(entryPointAssemblyFileName, argc-1, &(argv[1]), &exitCode); + auto success = ExecuteAssembly(entryPointAssemblyFileName, argc-1, &(wszArglist[1]), &exitCode); return exitCode; } diff --git a/src/uwp/Windows/gen-buildsys-win.bat b/src/uwp/Windows/gen-buildsys-win.bat index 04e6b0fd..05512ba6 100644 --- a/src/uwp/Windows/gen-buildsys-win.bat +++ b/src/uwp/Windows/gen-buildsys-win.bat @@ -13,10 +13,9 @@ echo %2 echo %3 echo %4 echo %5 -echo %6 setlocal -set __sourceDir=%~dp0.. +set __sourceDir=%1 :: VS 2015 is the minimum supported toolset set __VSString=14 2015 @@ -35,19 +34,19 @@ if defined CMakePath goto DoGen :: Eval the output from probe-win1.ps1 pushd "%__sourceDir%" -for /f "delims=" %%a in ('powershell -NoProfile -ExecutionPolicy ByPass "& .\Windows\probe-win.ps1"') do %%a +for /f "delims=" %%a in ('powershell -NoProfile -ExecutionPolicy ByPass "& %~dp0\probe-win.ps1"') do %%a popd :DoGen -echo "%CMakePath%" %__sourceDir% %__SDKVersion% "-DCLI_CMAKE_PKG_RID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_PLATFORM_ARCH_%cm_Arch%=1" "-DCMAKE_INSTALL_PREFIX=%__OutputDir%" "-DCLI_CMAKE_RESOURCE_DIR:STRING=%__ResourcesDir%" -G "Visual Studio %__VSString%" +echo "%CMakePath%" %__sourceDir% %__SDKVersion% %__CMAKE_SYSTEM% %__CMAKE_CUSTOM_DEFINES% "-DCLI_CMAKE_PKG_RID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_PLATFORM_ARCH_%cm_Arch%=1" "-DCMAKE_INSTALL_PREFIX=%__OutputDir%" "-DCLI_CMAKE_RESOURCE_DIR:STRING=%__ResourcesDir%" -G "Visual Studio %__VSString%" -"%CMakePath%" %__sourceDir% %__SDKVersion% "-DCLI_CMAKE_PKG_RID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_PLATFORM_ARCH_%cm_Arch%=1" "-DCMAKE_INSTALL_PREFIX=%__OutputDir%" "-DCLI_CMAKE_RESOURCE_DIR:STRING=%__ResourcesDir%" -G "Visual Studio %__VSString%" +"%CMakePath%" %__sourceDir% %__SDKVersion% %__CMAKE_SYSTEM% %__CMAKE_CUSTOM_DEFINES% "-DCLI_CMAKE_PKG_RID:STRING=%cm_BaseRid%" "-DCLI_CMAKE_PLATFORM_ARCH_%cm_Arch%=1" "-DCMAKE_INSTALL_PREFIX=%__OutputDir%" "-DCLI_CMAKE_RESOURCE_DIR:STRING=%__ResourcesDir%" -G "Visual Studio %__VSString%" endlocal GOTO :DONE :USAGE echo "Usage..." - echo "gen-buildsys-win.bat " + echo "gen-buildsys-win.bat " EXIT /B 1 :DONE diff --git a/src/uwp/build.cmd b/src/uwp/build.cmd index 92a6387e..1b1fc4b8 100644 --- a/src/uwp/build.cmd +++ b/src/uwp/build.cmd @@ -3,11 +3,12 @@ setlocal :SetupArgs :: Initialize the args that will be passed to cmake +set __thisScriptFolder=%~dp0 set __nativeWindowsDir=%~dp0Windows set __binDir=%~dp0..\..\Bin set __rootDir=%~dp0..\.. -set __CMakeBinDir="" -set __IntermediatesDir="" +set __CMakeBinBaseDir="" +set __IntermediatesBaseDir="" set __BuildArch=x64 set __appContainer="" set __VCBuildArch=x86_amd64 @@ -80,47 +81,64 @@ if NOT "%__BuildArch%" == "arm64" ( echo Commencing build of native UWP components echo. -if %__CMakeBinDir% == "" ( - set "__CMakeBinDir=%__binDir%\%__TargetRid%.%CMAKE_BUILD_TYPE%\uwphost" +if %__CMakeBinBaseDir% == "" ( + set "__CMakeBinBaseDir=%__binDir%\%__TargetRid%.%CMAKE_BUILD_TYPE%\" ) -if %__IntermediatesDir% == "" ( - set "__IntermediatesDir=%__binDir%\obj\%__TargetRid%.%CMAKE_BUILD_TYPE%\uwphost" +if %__IntermediatesBaseDir% == "" ( + set "__IntermediatesBaseDir=%__binDir%\obj\%__TargetRid%.%CMAKE_BUILD_TYPE%\" ) set "__ResourcesDir=%__binDir%\obj\%__TargetRid%.%CMAKE_BUILD_TYPE%\uwphostResourceFiles" -set "__CMakeBinDir=%__CMakeBinDir:\=/%" -set "__IntermediatesDir=%__IntermediatesDir:\=/%" +set "__CMakeBinBaseDir=%__CMakeBinBaseDir:\=/%" +set "__IntermediatesBaseDir=%__IntermediatesBaseDir:\=/%" set __SDKVersion="-DCMAKE_SYSTEM_VERSION=10.0" +set __CMAKE_SYSTEM= +set __CMAKE_CUSTOM_DEFINES= -:: Check that the intermediate directory exists so we can place our cmake build tree there -if exist "%__IntermediatesDir%" rd /s /q "%__IntermediatesDir%" -if not exist "%__IntermediatesDir%" md "%__IntermediatesDir%" +call :GenerateAndCompile uwphost %__thisScriptFolder% +if ERRORLEVEL 1 goto :Failure +set __CMAKE_SYSTEM="-DCMAKE_SYSTEM_NAME:STRING=WindowsStore" +set __CMAKE_CUSTOM_DEFINES="-DUWPHOST_LIB_PATH:STRING=%__IntermediatesBaseDir%\uwphost\Host\UWPHost\%CMAKE_BUILD_TYPE%" +call :GenerateAndCompile uwpshim %__thisScriptFolder%host\UWPShim +if ERRORLEVEL 1 goto :Failure -:: Regenerate the VS solution - -echo Calling "%__nativeWindowsDir%\gen-buildsys-win.bat" %~dp0 %__BuildArch% %__ResourcesDir% %__CMakeBinDir% -pushd "%__IntermediatesDir%" -call "%__nativeWindowsDir%\gen-buildsys-win.bat" %~dp0 %__BuildArch% %__ResourcesDir% %__CMakeBinDir% -popd - -:CheckForProj -:: Check that the project created by Cmake exists -if exist "%__IntermediatesDir%\ALL_BUILD.vcxproj" goto BuildNativeProj -goto :Failure - -:BuildNativeProj -:: Build the project created by Cmake -set __msbuildArgs=/p:Platform=%__BuildArch% /p:PlatformToolset="%__PlatformToolset%" - -cd %__rootDir% - -echo %__rootDir%\run.cmd build-native -- "%__IntermediatesDir%\ALL_BUILD.vcxproj" /t:rebuild /p:Configuration=%CMAKE_BUILD_TYPE% %__msbuildArgs% -call %__rootDir%\run.cmd build-native -- "%__IntermediatesDir%\ALL_BUILD.vcxproj" /t:rebuild /p:Configuration=%CMAKE_BUILD_TYPE% %__msbuildArgs% -IF ERRORLEVEL 1 ( - goto :Failure -) echo Done building Native components -exit /B 0 +exit /b 0 + +:GenerateAndCompile + set __IntermediatesDir=%__IntermediatesBaseDir%%1 + set __CMakeBinDir=%__CMakeBinBaseDir%%1 + + echo Building project system for %__IntermediatesDir% Source: %2 + :: Check that the intermediate directory exists so we can place our cmake build tree there + if exist "%__IntermediatesDir%" rd /s /q "%__IntermediatesDir%" + if not exist "%__IntermediatesDir%" md "%__IntermediatesDir%" + + :: Regenerate the VS solution + + echo Calling "%__nativeWindowsDir%\gen-buildsys-win.bat" %2 %__BuildArch% %__ResourcesDir% %__CMakeBinDir% + pushd "%__IntermediatesDir%" + call "%__nativeWindowsDir%\gen-buildsys-win.bat" %2 %__BuildArch% %__ResourcesDir% %__CMakeBinDir% + popd + + :CheckForProj + :: Check that the project created by Cmake exists + if exist "%__IntermediatesDir%\ALL_BUILD.vcxproj" goto BuildNativeProj + exit /b 1 + + :BuildNativeProj + :: Build the project created by Cmake + set __msbuildArgs=/p:Platform=%__BuildArch% /p:PlatformToolset="%__PlatformToolset%" + + cd %__rootDir% + + echo %__rootDir%\run.cmd build-native -- "%__IntermediatesDir%\ALL_BUILD.vcxproj" /t:rebuild /p:Configuration=%CMAKE_BUILD_TYPE% %__msbuildArgs% /v:d + call %__rootDir%\run.cmd build-native -- "%__IntermediatesDir%\ALL_BUILD.vcxproj" /t:rebuild /p:Configuration=%CMAKE_BUILD_TYPE% %__msbuildArgs% /v:d + IF ERRORLEVEL 1 ( + exit /b 1 + ) + + goto :eof :Failure :: Build failed diff --git a/src/uwp/build.proj b/src/uwp/build.proj index 917d471b..7615901b 100644 --- a/src/uwp/build.proj +++ b/src/uwp/build.proj @@ -26,7 +26,7 @@ - + From bbf0787816550588318ee434d90dd4f787359997 Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Thu, 27 Jul 2017 14:40:32 -0700 Subject: [PATCH 601/625] Update CoreClr, CoreFx, Standard, WCF to preview2-25527-04, preview2-25527-02, preview1-25527-01, preview2-25527-01, respectively (#2899) --- dependencies.props | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/dependencies.props b/dependencies.props index c3750b11..dc5afec8 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,21 +9,21 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - ae4ab8c72e4a023a3f0027dff80bff099e535904 - ae4ab8c72e4a023a3f0027dff80bff099e535904 - ae4ab8c72e4a023a3f0027dff80bff099e535904 - ae4ab8c72e4a023a3f0027dff80bff099e535904 + 92c547f937badd89ff8d08d79c81b3307975f0b7 + 92c547f937badd89ff8d08d79c81b3307975f0b7 + 92c547f937badd89ff8d08d79c81b3307975f0b7 + 92c547f937badd89ff8d08d79c81b3307975f0b7 - 4.5.0-preview2-25524-02 + 4.5.0-preview2-25527-02 2.1.0-preview1-25324-02 - 2.1.0-preview2-25524-01 + 2.1.0-preview2-25527-04 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25524-00 - 2.1.0-preview1-25524-01 + 2.1.0-preview1-25527-01 1.4.1 - 4.5.0-preview2-25524-01 + 4.5.0-preview2-25527-01 From fb011e43164b1a4b455e739e4fa9355d21079cd2 Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Fri, 28 Jul 2017 06:25:11 -0700 Subject: [PATCH 602/625] Update CoreClr, Standard, WCF to preview2-25528-01, preview1-25528-01, preview2-25528-02, respectively --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index dc5afec8..b8fbe9e5 100644 --- a/dependencies.props +++ b/dependencies.props @@ -10,20 +10,20 @@ --> 92c547f937badd89ff8d08d79c81b3307975f0b7 - 92c547f937badd89ff8d08d79c81b3307975f0b7 - 92c547f937badd89ff8d08d79c81b3307975f0b7 - 92c547f937badd89ff8d08d79c81b3307975f0b7 + 9ad683d7d73031d00f0d2a60d9ebc1feea57781f + 9ad683d7d73031d00f0d2a60d9ebc1feea57781f + 9ad683d7d73031d00f0d2a60d9ebc1feea57781f 4.5.0-preview2-25527-02 2.1.0-preview1-25324-02 - 2.1.0-preview2-25527-04 + 2.1.0-preview2-25528-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25524-00 - 2.1.0-preview1-25527-01 + 2.1.0-preview1-25528-01 1.4.1 - 4.5.0-preview2-25527-01 + 4.5.0-preview2-25528-02 From da636aa46811fb31570a771c7d38da6422cee85b Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Mon, 31 Jul 2017 06:27:33 -0700 Subject: [PATCH 603/625] Update CoreClr, CoreFx, Standard, WCF to preview2-25531-02, preview2-25531-01, preview1-25531-01, preview2-25531-01, respectively --- dependencies.props | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/dependencies.props b/dependencies.props index b8fbe9e5..3884c579 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,21 +9,21 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 92c547f937badd89ff8d08d79c81b3307975f0b7 - 9ad683d7d73031d00f0d2a60d9ebc1feea57781f - 9ad683d7d73031d00f0d2a60d9ebc1feea57781f - 9ad683d7d73031d00f0d2a60d9ebc1feea57781f + 5f5271a076febb61b15f0dddf63dc3ff0c994ce9 + 5f5271a076febb61b15f0dddf63dc3ff0c994ce9 + 5f5271a076febb61b15f0dddf63dc3ff0c994ce9 + 5f5271a076febb61b15f0dddf63dc3ff0c994ce9 - 4.5.0-preview2-25527-02 - 2.1.0-preview1-25324-02 - 2.1.0-preview2-25528-01 + 4.5.0-preview2-25531-01 + 2.1.0-preview2-25531-01 + 2.1.0-preview2-25531-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25524-00 - 2.1.0-preview1-25528-01 + 2.1.0-preview1-25531-01 1.4.1 - 4.5.0-preview2-25528-02 + 4.5.0-preview2-25531-01 From 6ae626fa9ce15b828eea1af9a92055c43ad8cb30 Mon Sep 17 00:00:00 2001 From: Jan Vorlicek Date: Mon, 31 Jul 2017 15:49:25 +0000 Subject: [PATCH 604/625] Enable RHEL6 and CentOS 6 RID detection in build This change adds RHEL6 and CentOS 6 RID detection to src/corehost/build.sh. These distros don't have the /etc/os-release file and so we need to use another source - the /etc/redhat-release file. It is an exact copy of the same change merged in for CoreCLR. --- src/corehost/build.sh | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/src/corehost/build.sh b/src/corehost/build.sh index da6c3d01..5b368d29 100755 --- a/src/corehost/build.sh +++ b/src/corehost/build.sh @@ -14,35 +14,38 @@ init_rid_plat() else if [ -e $ROOTFS_DIR/etc/os-release ]; then source $ROOTFS_DIR/etc/os-release - export __rid_plat="$ID.$VERSION_ID" + __rid_plat="$ID.$VERSION_ID" fi echo "__rid_plat is $__rid_plat" fi else + __rid_plat="" if [ -e /etc/os-release ]; then source /etc/os-release - if [[ "$ID" == "rhel" && $VERSION_ID = 7* ]]; then - export __rid_plat="rhel.7" + __rid_plat="rhel.7" elif [[ "$ID" == "centos" && "$VERSION_ID" = "7" ]]; then - export __rid_plat="rhel.7" + __rid_plat="rhel.7" else - export __rid_plat="$ID.$VERSION_ID" + __rid_plat="$ID.$VERSION_ID" + fi + elif [ -e /etc/redhat-release ]; then + local redhatRelease=$( Date: Thu, 3 Aug 2017 06:26:37 -0700 Subject: [PATCH 605/625] Update CoreClr, CoreFx, Standard, WCF to preview2-25603-01, preview2-25602-02, preview1-25603-01, preview2-25603-01, respectively --- dependencies.props | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/dependencies.props b/dependencies.props index 3884c579..86943296 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,21 +9,21 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 5f5271a076febb61b15f0dddf63dc3ff0c994ce9 - 5f5271a076febb61b15f0dddf63dc3ff0c994ce9 - 5f5271a076febb61b15f0dddf63dc3ff0c994ce9 - 5f5271a076febb61b15f0dddf63dc3ff0c994ce9 + 824551ed4d81c91d093bcb5602562c37cdc5a430 + 824551ed4d81c91d093bcb5602562c37cdc5a430 + 824551ed4d81c91d093bcb5602562c37cdc5a430 + 824551ed4d81c91d093bcb5602562c37cdc5a430 - 4.5.0-preview2-25531-01 - 2.1.0-preview2-25531-01 - 2.1.0-preview2-25531-02 + 4.5.0-preview2-25602-02 + 2.1.0-preview2-25602-02 + 2.1.0-preview2-25603-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25524-00 - 2.1.0-preview1-25531-01 + 2.1.0-preview1-25603-01 1.4.1 - 4.5.0-preview2-25531-01 + 4.5.0-preview2-25603-01 From 2f426bd762fe18dc5f5939b3d8c3ea525d267707 Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Fri, 4 Aug 2017 06:29:00 -0700 Subject: [PATCH 606/625] Update CoreClr, Standard, WCF to preview2-25604-01, preview1-25604-01, preview2-25604-01, respectively --- dependencies.props | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dependencies.props b/dependencies.props index 86943296..32044533 100644 --- a/dependencies.props +++ b/dependencies.props @@ -10,20 +10,20 @@ --> 824551ed4d81c91d093bcb5602562c37cdc5a430 - 824551ed4d81c91d093bcb5602562c37cdc5a430 - 824551ed4d81c91d093bcb5602562c37cdc5a430 - 824551ed4d81c91d093bcb5602562c37cdc5a430 + deef7edf0996339eb24da10f724f53e3bc80c306 + deef7edf0996339eb24da10f724f53e3bc80c306 + deef7edf0996339eb24da10f724f53e3bc80c306 4.5.0-preview2-25602-02 2.1.0-preview2-25602-02 - 2.1.0-preview2-25603-01 + 2.1.0-preview2-25604-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25524-00 - 2.1.0-preview1-25603-01 + 2.1.0-preview1-25604-01 1.4.1 - 4.5.0-preview2-25603-01 + 4.5.0-preview2-25604-01 From 14627e34be86271759ffdd5ea8692a51e2b7f4fe Mon Sep 17 00:00:00 2001 From: chcosta Date: Fri, 4 Aug 2017 14:58:30 -0700 Subject: [PATCH 607/625] Enable retries for the nuget push command used during publishing (#2980) * Enable retries for the nuget push command used during publishing * Alphabetize usingtask list in publish.proj --- BuildToolsVersion.txt | 2 +- publish/dir.props | 12 ++++++++++++ publish/publish.proj | 12 ++++++++---- 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/BuildToolsVersion.txt b/BuildToolsVersion.txt index 63145663..1f8c009c 100644 --- a/BuildToolsVersion.txt +++ b/BuildToolsVersion.txt @@ -1 +1 @@ -2.0.0-prerelease-01805-01 +2.0.0-prerelease-01903-01 diff --git a/publish/dir.props b/publish/dir.props index 0c2b287a..0b3bddf6 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -14,6 +14,18 @@ $(DistroRid).$(SharedFrameworkNugetVersion) $(DistroRid).$(HostResolverVersion) + + + + + Pushing took too long + + diff --git a/publish/publish.proj b/publish/publish.proj index f0b7889b..24de5dcb 100644 --- a/publish/publish.proj +++ b/publish/publish.proj @@ -2,6 +2,7 @@ + @@ -216,11 +217,13 @@ $(DotnetToolCommand) nuget push --source $(NuGetSymbolsFeedUrl) --api-key $(NuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) - - + - + $(DotnetToolCommand) nuget push --source $(CliNuGetFeedUrl) --api-key $(CliNuGetApiKey) --timeout $(NuGetPushTimeoutSeconds) - + From edc20edb61a4a0bd5e17953b659ed02dd009752e Mon Sep 17 00:00:00 2001 From: rakeshsinghranchi Date: Mon, 7 Aug 2017 17:42:31 -0700 Subject: [PATCH 608/625] Enable building debian9 packages (#2961) --- buildpipeline/Core-Setup-Linux-BT.json | 108 +++++++++++++++++- publish/dir.props | 1 + publish/dir.targets | 3 + ...dotnet-sharedframework-debian9_config.json | 41 +++++++ src/pkg/packaging/deb/package.targets | 1 + 5 files changed, 153 insertions(+), 1 deletion(-) create mode 100644 src/pkg/packaging/deb/dotnet-sharedframework-debian9_config.json diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json index a6af5ac6..4aa8b3a9 100644 --- a/buildpipeline/Core-Setup-Linux-BT.json +++ b/buildpipeline/Core-Setup-Linux-BT.json @@ -525,6 +525,96 @@ "workingFolder": "", "failOnStandardError": "false" } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Initialize docker - Debian 9", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "$(PB_DockerHost_ToolsDirectory)/scripts/docker/init-docker.sh", + "arguments": "$(DockerImageName_Debian9)", + "workingFolder": "$(PB_DockerHost_Sandbox)", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Init tools - Debian 9 container", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Debian9) /bin/bash -c \"HOME=$(PB_GitDirectory); git clean -X -d -f; $(PB_GitDirectory)/init-tools.sh\"", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Build traversal build dependencies - Debian 9", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Debian9) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Debian9) $(DistroSpecificMSBuildArguments)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Package - Debian 9", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Debian9) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Debian9) $(DistroSpecificMSBuildArguments)", + "workingFolder": "", + "failOnStandardError": "false" + } + }, + { + "enabled": true, + "continueOnError": false, + "alwaysRun": false, + "displayName": "Publish - Debian 9", + "timeoutInMinutes": 0, + "task": { + "id": "d9bafed4-0b18-4f58-968d-86655b4d2ce9", + "versionSpec": "1.*", + "definitionType": "task" + }, + "inputs": { + "filename": "docker", + "arguments": "run --rm $(DockerCommonRunArgs_Debian9) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Debian9) $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)", + "workingFolder": "", + "failOnStandardError": "false" + } }, { "enabled": true, @@ -748,6 +838,10 @@ "PB_DebianId_debian8-x64": { "value": null, "isSecret": true + }, + "PB_DebianId_debian9-x64": { + "value": null, + "isSecret": true }, "PB_DebianId_ubuntu1604-x64": { "value": null, @@ -866,7 +960,7 @@ "value": "/p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) $(PB_DebianKeys)" }, "PB_DebianKeys": { - "value": "/p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)" + "value": "/p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_debian9-x64=$(PB_DebianId_debian9-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)" }, "DockerTag_Ubuntu1404": { "value": "ubuntu-14.04-debpkg-e5cf912-20175003025046" @@ -916,6 +1010,18 @@ "DockerCommonRunArgs_Debian8": { "value": "--name $(PB_DockerContainerName)$(DockerTag_Debian8) -v \"$(PB_SourcesDirectory):$(PB_GitDirectory)\" -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/root/sharedFrameworkPublish/ -w=\"$(PB_GitDirectory)\" $(DockerImageName_Debian8)" }, + "DockerTag_Debian9": { + "value": "debian-8.2-debpkg-9f87c3c-20173003023006" + }, + "DistroRid_Debian9": { + "value": "debian.9-$(PB_TargetArchitecture)" + }, + "DockerImageName_Debian9": { + "value": "$(PB_DockerRepository):$(DockerTag_Debian9)" + }, + "DockerCommonRunArgs_Debian9": { + "value": "--name $(PB_DockerContainerName)$(DockerTag_Debian9) -v \"$(PB_SourcesDirectory):$(PB_GitDirectory)\" -v $(Build.StagingDirectory)/sharedFrameworkPublish/:/root/sharedFrameworkPublish/ -w=\"$(PB_GitDirectory)\" $(DockerImageName_Debian9)" + }, "DockerTag_Rhel7": { "value": "rhel-7-rpmpkg-c982313-20174116044113" }, diff --git a/publish/dir.props b/publish/dir.props index 0b3bddf6..562b4161 100644 --- a/publish/dir.props +++ b/publish/dir.props @@ -53,6 +53,7 @@ + diff --git a/publish/dir.targets b/publish/dir.targets index 32ce60b3..d65505cf 100644 --- a/publish/dir.targets +++ b/publish/dir.targets @@ -56,6 +56,9 @@ $(DebianId_debian8-x64) + + $(DebianId_debian9-x64) + $(DebianId_ubuntu1604-x64) diff --git a/src/pkg/packaging/deb/dotnet-sharedframework-debian9_config.json b/src/pkg/packaging/deb/dotnet-sharedframework-debian9_config.json new file mode 100644 index 00000000..9acc4059 --- /dev/null +++ b/src/pkg/packaging/deb/dotnet-sharedframework-debian9_config.json @@ -0,0 +1,41 @@ +{ + "maintainer_name":"Microsoft", + "maintainer_email": "dotnetcore@microsoft.com", + + "package_name": "%SHARED_FRAMEWORK_DEBIAN_PACKAGE_NAME%", + "install_root": "/usr/share/dotnet", + + "short_description": "%SHARED_FRAMEWORK_BRAND_NAME% %SHARED_FRAMEWORK_NUGET_NAME% %SHARED_FRAMEWORK_NUGET_VERSION%", + "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", + "homepage": "https://dotnet.github.io", + + "release":{ + "package_version":"1.0.0.0", + "package_revision":"1", + "urgency" : "low", + "changelog_message" : "Initial shared framework." + }, + + "control": { + "priority":"standard", + "section":"libs", + "architecture":"amd64" + }, + + "copyright": "2017 Microsoft", + "license": { + "type": "MIT", + "full_text": "Copyright (c) 2017 Microsoft\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE." + }, + + "debian_dependencies":{ + "%HOSTFXR_DEBIAN_PACKAGE_NAME%" : {}, + "libssl1.0.2" : {}, + "libicu57": {} + }, + + "debian_ignored_dependencies" : [ + "liblldb-3.5", + "liblldb-3.6" + ] +} diff --git a/src/pkg/packaging/deb/package.targets b/src/pkg/packaging/deb/package.targets index 8ab4f76a..d9693e96 100644 --- a/src/pkg/packaging/deb/package.targets +++ b/src/pkg/packaging/deb/package.targets @@ -201,6 +201,7 @@ $(SharedFrameworkPublishRoot) $(SharedFrameworkInstallerFile) dotnet-sharedframework-debian_config.json + dotnet-sharedframework-debian9_config.json $(debPackaginfConfigPath)$(ConfigJsonName) $(PackagesIntermediateDir)$(DebPackageName)/$(DebPackageVersion) From e46a14f5c924bfcf52536436f5386b33b347eb04 Mon Sep 17 00:00:00 2001 From: Simon Nattress Date: Tue, 8 Aug 2017 14:44:10 -0700 Subject: [PATCH 609/625] Strongname sign Microsoft.Build.Net.CoreRuntimeTask (#2994) * Strongname sign Microsoft.Build.Net.CoreRuntimeTask Fixes https://github.com/dotnet/core-setup/issues/2820 --- signing/sign.proj | 1 + 1 file changed, 1 insertion(+) diff --git a/signing/sign.proj b/signing/sign.proj index 50d6cd62..8a3a75fb 100644 --- a/signing/sign.proj +++ b/signing/sign.proj @@ -38,6 +38,7 @@ $(CertificateId) + StrongName From 1d16608332a928326be0eed45fcf5bb204a2e2fb Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Tue, 8 Aug 2017 16:39:28 -0700 Subject: [PATCH 610/625] Update CoreClr, CoreFx, Standard, WCF to preview2-25608-02, preview2-25608-02, preview1-25608-01, preview2-25608-04, respectively (#2979) --- dependencies.props | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/dependencies.props b/dependencies.props index 32044533..b5ec5677 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,21 +9,21 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 824551ed4d81c91d093bcb5602562c37cdc5a430 - deef7edf0996339eb24da10f724f53e3bc80c306 - deef7edf0996339eb24da10f724f53e3bc80c306 - deef7edf0996339eb24da10f724f53e3bc80c306 + 04d5b85561d399de37dab08242164770c97db114 + 04d5b85561d399de37dab08242164770c97db114 + 04d5b85561d399de37dab08242164770c97db114 + 04d5b85561d399de37dab08242164770c97db114 - 4.5.0-preview2-25602-02 - 2.1.0-preview2-25602-02 - 2.1.0-preview2-25604-01 + 4.5.0-preview2-25608-02 + 2.1.0-preview2-25608-02 + 2.1.0-preview2-25608-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25524-00 - 2.1.0-preview1-25604-01 + 2.1.0-preview1-25608-01 1.4.1 - 4.5.0-preview2-25604-01 + 4.5.0-preview2-25608-04 From 6a3d3126dd16e6d2f4f315e0d129d873e2c3bef6 Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Thu, 10 Aug 2017 06:26:50 -0700 Subject: [PATCH 611/625] Update CoreClr, CoreFx, Standard, WCF to preview2-25610-02, preview2-25610-02, preview1-25610-01, preview2-25610-01, respectively --- dependencies.props | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/dependencies.props b/dependencies.props index b5ec5677..f7306bf5 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,21 +9,21 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - 04d5b85561d399de37dab08242164770c97db114 - 04d5b85561d399de37dab08242164770c97db114 - 04d5b85561d399de37dab08242164770c97db114 - 04d5b85561d399de37dab08242164770c97db114 + c116a7cebb8afe4fcc4c8be151a994404bf11710 + c116a7cebb8afe4fcc4c8be151a994404bf11710 + c116a7cebb8afe4fcc4c8be151a994404bf11710 + c116a7cebb8afe4fcc4c8be151a994404bf11710 - 4.5.0-preview2-25608-02 - 2.1.0-preview2-25608-02 - 2.1.0-preview2-25608-02 + 4.5.0-preview2-25610-02 + 2.1.0-preview2-25610-02 + 2.1.0-preview2-25610-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25524-00 - 2.1.0-preview1-25608-01 + 2.1.0-preview1-25610-01 1.4.1 - 4.5.0-preview2-25608-04 + 4.5.0-preview2-25610-01 From bebf4fd6a3959d1f933bcfc7a1d574bc959eb8e4 Mon Sep 17 00:00:00 2001 From: Jan Vorlicek Date: Mon, 14 Aug 2017 17:19:49 +0200 Subject: [PATCH 612/625] Add RHEL 6 official RID --- src/pkg/projects/netcoreappRIDs.props | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pkg/projects/netcoreappRIDs.props b/src/pkg/projects/netcoreappRIDs.props index 1f7736bd..efc59265 100644 --- a/src/pkg/projects/netcoreappRIDs.props +++ b/src/pkg/projects/netcoreappRIDs.props @@ -17,6 +17,7 @@ + x86 From 2d818e87081bfe71f9a3f2cbba43cb279e79b265 Mon Sep 17 00:00:00 2001 From: Simon Nattress Date: Mon, 14 Aug 2017 09:45:35 -0700 Subject: [PATCH 613/625] Compile Microsoft.Build.Net.CoreRuntimeTask with MSFT public key (#3016) Strongname signing was disabled for this assembly. Opt it into signing with the MSFT key. --- .../Microsoft.Build.Net.CoreRuntimeTask.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Microsoft.Build.Net.CoreRuntimeTask.csproj b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Microsoft.Build.Net.CoreRuntimeTask.csproj index 1e2c7b54..4967f970 100644 --- a/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Microsoft.Build.Net.CoreRuntimeTask.csproj +++ b/src/uwp/Microsoft.Build.Net.CoreRuntimeTask/Microsoft.Build.Net.CoreRuntimeTask.csproj @@ -33,7 +33,7 @@ true .NETStandard obj - true + MSFT true From 26154941156e3b9c1bdd908c94a77b1f571cfcad Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Tue, 15 Aug 2017 10:06:40 -0700 Subject: [PATCH 614/625] Make Microsoft.NETCore.App target netcoreapp2.1 Moves the branch forward to the netcoreapp2.1 TFM. --- config.json | 6 +++--- dir.props | 2 +- .../Microsoft.NETCore.App.pkgproj | 10 ++++++++-- .../src/Microsoft.NETCore.App.depproj | 6 +++--- .../TestProjects/LightupClient/LightupClient.csproj | 2 +- .../Assets/TestProjects/LightupLib/LightupLib.csproj | 2 +- .../Assets/TestProjects/PortableApp/PortableApp.csproj | 2 +- .../PortableTestApp/PortableTestApp.csproj | 2 +- .../TestProjects/ResourceLookup/ResourceLookup.csproj | 2 +- .../SharedFxLookupPortableApp.csproj | 2 +- .../TestProjects/StandaloneApp/StandaloneApp.csproj | 2 +- .../StandaloneTestApp/StandaloneTestApp.csproj | 2 +- src/test/TestUtils/TestProjectFixture.cs | 2 +- 13 files changed, 24 insertions(+), 18 deletions(-) diff --git a/config.json b/config.json index e8f8c2b2..99f68448 100644 --- a/config.json +++ b/config.json @@ -49,10 +49,10 @@ "defaultValue": "x64" }, "Framework":{ - "description": "Build the specified framework (netcoreapp1.0 or netcoreapp1.1, default: netcoreapp1.0)", + "description": "Build the specified framework (netcoreapp1.0, netcoreapp1.1, netcoreapp2.0, or netcoreapp2.1 default: netcoreapp2.1)", "valueType": "property", - "values": ["netcoreapp1.0", "netcoreapp1.1", "netcoreapp2.0"], - "defaultValue": "netcoreapp2.0" + "values": ["netcoreapp1.0", "netcoreapp1.1", "netcoreapp2.0", "netcoreapp2.1"], + "defaultValue": "netcoreapp2.1" }, "ConfigurationGroup": { "description": "Sets the configuration group as Release or Debug.", diff --git a/dir.props b/dir.props index 41dff1f6..d0f65d6c 100644 --- a/dir.props +++ b/dir.props @@ -195,7 +195,7 @@ - netcoreapp2.0 + netcoreapp2.1 diff --git a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj index ae84b044..d2077df4 100644 --- a/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj +++ b/src/pkg/projects/Microsoft.NETCore.App/Microsoft.NETCore.App.pkgproj @@ -9,7 +9,7 @@ - netcoreapp2.0 + netcoreapp2.1 true true false @@ -38,10 +38,16 @@ .NETCoreApp1.1 + + + + .NETCoreApp2.0 + + $(HostPolicyVersion) - .NETCoreApp2.0 + $(NETCoreAppFramework) unused - .NETCoreApp,Version=v2.0 - netcoreapp2.0 - netcoreapp2.0 + .NETCoreApp,Version=v2.1 + netcoreapp2.1 + netcoreapp2.1 Microsoft.Private.CoreFx.NETCoreApp $(CrossGenRootPath)/$(MSBuildProjectName)/$(NuGetRuntimeIdentifier) true diff --git a/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj b/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj index 96b8f4dc..59fdabf6 100644 --- a/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj +++ b/src/test/Assets/TestProjects/LightupClient/LightupClient.csproj @@ -1,7 +1,7 @@  - netcoreapp2.0 + netcoreapp2.1 Exe $(MNAVersion) diff --git a/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj b/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj index 428a201a..e5a0ba71 100644 --- a/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj +++ b/src/test/Assets/TestProjects/LightupLib/LightupLib.csproj @@ -1,7 +1,7 @@  - netcoreapp2.0 + netcoreapp2.1 Library $(MNAVersion) diff --git a/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj b/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj index a000ccfe..3072b5c5 100644 --- a/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj +++ b/src/test/Assets/TestProjects/PortableApp/PortableApp.csproj @@ -1,7 +1,7 @@  - netcoreapp2.0 + netcoreapp2.1 Exe $(MNAVersion) diff --git a/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj b/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj index 77b7ebe6..eff00a2c 100644 --- a/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj +++ b/src/test/Assets/TestProjects/PortableTestApp/PortableTestApp.csproj @@ -1,7 +1,7 @@  - netcoreapp2.0 + netcoreapp2.1 true $(PackageTargetFallback);dotnet5.4;portable-net451+win8 $(MNAVersion) diff --git a/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj index 3a5d893a..060f77f2 100644 --- a/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj +++ b/src/test/Assets/TestProjects/ResourceLookup/ResourceLookup.csproj @@ -1,7 +1,7 @@  - netcoreapp2.0 + netcoreapp2.1 Exe $(MNAVersion) diff --git a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj index a000ccfe..3072b5c5 100644 --- a/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj +++ b/src/test/Assets/TestProjects/SharedFxLookupPortableApp/SharedFxLookupPortableApp.csproj @@ -1,7 +1,7 @@  - netcoreapp2.0 + netcoreapp2.1 Exe $(MNAVersion) diff --git a/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.csproj b/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.csproj index f5c58fb9..bdd20847 100644 --- a/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.csproj +++ b/src/test/Assets/TestProjects/StandaloneApp/StandaloneApp.csproj @@ -1,7 +1,7 @@  - netcoreapp2.0 + netcoreapp2.1 Exe $(TestTargetRid) $(MNAVersion) diff --git a/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneTestApp.csproj b/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneTestApp.csproj index 0444cdc5..572a7ea4 100644 --- a/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneTestApp.csproj +++ b/src/test/Assets/TestProjects/StandaloneTestApp/StandaloneTestApp.csproj @@ -1,7 +1,7 @@  - netcoreapp2.0 + netcoreapp2.1 Exe true $(PackageTargetFallback);dotnet5.4;portable-net451+win8 diff --git a/src/test/TestUtils/TestProjectFixture.cs b/src/test/TestUtils/TestProjectFixture.cs index ed4b94f5..64651ca6 100644 --- a/src/test/TestUtils/TestProjectFixture.cs +++ b/src/test/TestUtils/TestProjectFixture.cs @@ -52,7 +52,7 @@ namespace Microsoft.DotNet.CoreSetup.Test string dotnetInstallPath = null, string currentRid = null, string builtDotnetOutputPath = null, - string framework = "netcoreapp2.0") + string framework = "netcoreapp2.1") { ValidateRequiredDirectories(repoDirectoriesProvider); From f242fcbf3c88d74debe561289e91f7c5f464572b Mon Sep 17 00:00:00 2001 From: "Eric St. John" Date: Tue, 15 Aug 2017 11:43:12 -0700 Subject: [PATCH 615/625] Ensure we pass meta-package version to StoreProject It looks like Store wasn't doing the right thing for test projects. Rather than storing the just built NCA package it was using the one the targets injected (EG: the one in the Tools CLI). --- src/test/TestUtils/TestProjectFixture.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/test/TestUtils/TestProjectFixture.cs b/src/test/TestUtils/TestProjectFixture.cs index 64651ca6..8a56934a 100644 --- a/src/test/TestUtils/TestProjectFixture.cs +++ b/src/test/TestUtils/TestProjectFixture.cs @@ -289,6 +289,8 @@ namespace Microsoft.DotNet.CoreSetup.Test storeArgs.Add("--working-dir"); storeArgs.Add("store_workin_dir"); + storeArgs.Add($"/p:MNAVersion={_repoDirectoriesProvider.MicrosoftNETCoreAppVersion}"); + dotnet.Store(storeArgs.ToArray()) .WorkingDirectory(_testProject.ProjectDirectory) .Environment("NUGET_PACKAGES", _repoDirectoriesProvider.NugetPackages) From 7ccae7f07ea442e1df245eba0d487bec10b58bdd Mon Sep 17 00:00:00 2001 From: Matt Perry Date: Wed, 23 Aug 2017 11:01:57 -0400 Subject: [PATCH 616/625] Allow AppBaseCompilation assembly resolver to resolve 'reference' (#3065) * Allow direct references to be resolved when there is no refs folder * Fix comment typo --- .../AppBaseCompilationAssemblyResolver.cs | 8 ++-- .../AppBaseResolverTests.cs | 38 +++++++++++++++++++ .../TestLibraryFactory.cs | 1 + 3 files changed, 44 insertions(+), 3 deletions(-) diff --git a/src/managed/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs index 4500b422..7cbafacb 100644 --- a/src/managed/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs +++ b/src/managed/Microsoft.Extensions.DependencyModel/Resolution/AppBaseCompilationAssemblyResolver.cs @@ -45,9 +45,11 @@ namespace Microsoft.Extensions.DependencyModel.Resolution string.Equals(library.Type, "msbuildproject", StringComparison.OrdinalIgnoreCase); var isPackage = string.Equals(library.Type, "package", StringComparison.OrdinalIgnoreCase); + var isReferenceAssembly = string.Equals(library.Type, "referenceassembly", StringComparison.OrdinalIgnoreCase); if (!isProject && !isPackage && - !string.Equals(library.Type, "referenceassembly", StringComparison.OrdinalIgnoreCase)) + !isReferenceAssembly && + !string.Equals(library.Type, "reference", StringComparison.OrdinalIgnoreCase)) { return false; } @@ -55,8 +57,8 @@ namespace Microsoft.Extensions.DependencyModel.Resolution var refsPath = Path.Combine(_basePath, RefsDirectoryName); var isPublished = _fileSystem.Directory.Exists(refsPath); - // Resolving reference assebmlies requires refs folder to exist - if (!isProject && !isPackage && !isPublished) + // Resolving reference assemblies requires refs folder to exist + if (isReferenceAssembly && !isPublished) { return false; } diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs index 0d3b8aa5..4f3b99ef 100644 --- a/src/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/AppBaseResolverTests.cs @@ -89,6 +89,23 @@ namespace Microsoft.Extensions.DependencyModel.Tests Assert.True(result); } + [Fact] + public void ResolvesReferenceType() + { + var fileSystem = FileSystemMockBuilder + .Create() + .AddFiles(BasePathRefs, TestLibraryFactory.DefaultAssembly) + .Build(); + var resolver = CreateResolver(fileSystem); + var library = TestLibraryFactory.Create( + TestLibraryFactory.ReferenceType, + assemblies: TestLibraryFactory.EmptyAssemblies); + + var result = resolver.TryResolveAssemblyPaths(library, null); + + Assert.True(result); + } + [Fact] public void RequiresExistingRefsFolderForNonProjects() { @@ -129,6 +146,27 @@ namespace Microsoft.Extensions.DependencyModel.Tests assemblies.Should().Contain(Path.Combine(BasePath, TestLibraryFactory.SecondAssembly)); } + [Fact] + public void ResolvesDirectReferenceWithoutRefsFolder() + { + var fileSystem = FileSystemMockBuilder + .Create() + .AddFiles(BasePath, TestLibraryFactory.DefaultAssembly, TestLibraryFactory.SecondAssembly) + .Build(); + var library = TestLibraryFactory.Create( + TestLibraryFactory.ReferenceType, + assemblies: TestLibraryFactory.TwoAssemblies); + var resolver = CreateResolver(fileSystem); + var assemblies = new List(); + + var result = resolver.TryResolveAssemblyPaths(library, assemblies); + + Assert.True(result); + assemblies.Should().HaveCount(2); + assemblies.Should().Contain(Path.Combine(BasePath, TestLibraryFactory.DefaultAssembly)); + assemblies.Should().Contain(Path.Combine(BasePath, TestLibraryFactory.SecondAssembly)); + } + [Fact] public void RequiresAllLibrariesToExist() { diff --git a/src/test/Microsoft.Extensions.DependencyModel.Tests/TestLibraryFactory.cs b/src/test/Microsoft.Extensions.DependencyModel.Tests/TestLibraryFactory.cs index a1488583..e5e4e21b 100644 --- a/src/test/Microsoft.Extensions.DependencyModel.Tests/TestLibraryFactory.cs +++ b/src/test/Microsoft.Extensions.DependencyModel.Tests/TestLibraryFactory.cs @@ -30,6 +30,7 @@ namespace Microsoft.Extensions.DependencyModel.Tests public static readonly string ProjectType = "project"; public static readonly string MsBuildProjectType = "msbuildproject"; public static readonly string ReferenceAssemblyType = "referenceassembly"; + public static readonly string ReferenceType = "reference"; public static readonly string PackageType = "package"; public static CompilationLibrary Create( From 786feeb46d13245951bd4960b4ace5270a3bae08 Mon Sep 17 00:00:00 2001 From: dotnet-maestro-bot Date: Thu, 24 Aug 2017 06:29:33 -0700 Subject: [PATCH 617/625] Update CoreClr, CoreFx, Standard, WCF to preview2-25624-02, preview2-25624-01, preview1-25624-01, preview2-25624-01, respectively --- dependencies.props | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/dependencies.props b/dependencies.props index f7306bf5..9f567077 100644 --- a/dependencies.props +++ b/dependencies.props @@ -9,21 +9,21 @@ These ref versions are pulled from https://github.com/dotnet/versions. --> - c116a7cebb8afe4fcc4c8be151a994404bf11710 - c116a7cebb8afe4fcc4c8be151a994404bf11710 - c116a7cebb8afe4fcc4c8be151a994404bf11710 - c116a7cebb8afe4fcc4c8be151a994404bf11710 + dbce6b2140b3334a0d3d7d095b3b267e9c45af9f + dbce6b2140b3334a0d3d7d095b3b267e9c45af9f + dbce6b2140b3334a0d3d7d095b3b267e9c45af9f + dbce6b2140b3334a0d3d7d095b3b267e9c45af9f - 4.5.0-preview2-25610-02 - 2.1.0-preview2-25610-02 - 2.1.0-preview2-25610-02 + 4.5.0-preview2-25624-01 + 2.1.0-preview2-25624-01 + 2.1.0-preview2-25624-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25524-00 - 2.1.0-preview1-25610-01 + 2.1.0-preview1-25624-01 1.4.1 - 4.5.0-preview2-25610-01 + 4.5.0-preview2-25624-01 From 210f02c0cec18dec018ff51c29a8c06dae00fdbf Mon Sep 17 00:00:00 2001 From: Wes Haggard Date: Thu, 24 Aug 2017 17:48:17 -0700 Subject: [PATCH 618/625] Revert coreclr version update --- dependencies.props | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/dependencies.props b/dependencies.props index 9f567077..4233db1e 100644 --- a/dependencies.props +++ b/dependencies.props @@ -10,22 +10,22 @@ --> dbce6b2140b3334a0d3d7d095b3b267e9c45af9f - dbce6b2140b3334a0d3d7d095b3b267e9c45af9f + c116a7cebb8afe4fcc4c8be151a994404bf11710 dbce6b2140b3334a0d3d7d095b3b267e9c45af9f dbce6b2140b3334a0d3d7d095b3b267e9c45af9f - + 4.5.0-preview2-25624-01 2.1.0-preview2-25624-01 - 2.1.0-preview2-25624-02 + 2.1.0-preview2-25610-02 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25524-00 2.1.0-preview1-25624-01 1.4.1 4.5.0-preview2-25624-01 - + build-info/dotnet/ @@ -54,7 +54,7 @@ https://raw.githubusercontent.com/dotnet/versions - + $(MSBuildThisFileFullPath) CoreFxVersion From dd9fae16825e00cbc207076e80d5e511ce967bb1 Mon Sep 17 00:00:00 2001 From: smile21prc Date: Thu, 24 Aug 2017 20:45:13 -0700 Subject: [PATCH 619/625] Update coreclr package to preview2-25622-01 Further scale down when coreclr package started to hang windows Debug x64 tests. --- dependencies.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.props b/dependencies.props index 4233db1e..248fa775 100644 --- a/dependencies.props +++ b/dependencies.props @@ -10,7 +10,7 @@ --> dbce6b2140b3334a0d3d7d095b3b267e9c45af9f - c116a7cebb8afe4fcc4c8be151a994404bf11710 + 6754f08a49e100a11d5a5d8077ada88390bcfbed dbce6b2140b3334a0d3d7d095b3b267e9c45af9f dbce6b2140b3334a0d3d7d095b3b267e9c45af9f @@ -18,7 +18,7 @@ 4.5.0-preview2-25624-01 2.1.0-preview2-25624-01 - 2.1.0-preview2-25610-02 + 2.1.0-preview2-25622-01 $(MicrosoftNETCoreRuntimeCoreCLRPackageVersion) 2.0.0-preview-25524-00 2.1.0-preview1-25624-01 From 66d0e7052e24875be41d4956be09bb691c90f86a Mon Sep 17 00:00:00 2001 From: smile21prc Date: Fri, 25 Aug 2017 09:38:49 -0700 Subject: [PATCH 620/625] Add RedHat6 to official builds of core-setup in master branch (#3024) * Add RedHat6 to official builds of core-setup in master branch Add RedHat6 to official builds of core-setup in master branch, this is identical to the PR to enable Rhel6 in release/2.0.0: https://github.com/dotnet/core-setup/pull/3017 * Rename the RID. Rename the RID as we don't have a RID for 6.9. * Update docker tag and add logic to detect RHEL6 in init-tools.sh Update docker tag and add logic to detect RHEL6 in init-tools.sh * Port changes from Release/2.0.0 to fix core-setup RHEL 6 official runs. Port changes from Release/2.0.0 to fix core-setup RHEL 6 official runs. * Fix indentation Fix indentation * Port one more related commit from release/2.0.0 back to master Port one more related commit from release/2.0.0 back to master, which is: https://github.com/dotnet/core-setup/commit/15e34cd2c57ae5daa83c412d987dd342886d799a * Update to use the correction version of runtimemodel Update to use the correction version of runtimemodel * Try to fix the CI error by updating NugetModelTFM to net45 Try to fix the CI error by updating NugetModelTFM to net45 * Revert "Try to fix the CI error by updating NugetModelTFM to net45" This reverts commit d740f18750362245427b67ca45301f60b31faa47. * Remove runtimemodel reference I built core-setup locally, and didn't see runtimemodel package any more with current version 4.3.0-preview2-4095. It is possible that it might not be needed any longer. Remove it first and verify it all works. If there is still runtime errors then we may need to explicitly add a package reference to it * Remove unused NugetModelTFM node as well Remove unused NugetModelTFM node as well * Remove extra spaces Remove extra spaces --- build.proj | 2 +- buildpipeline/pipeline.json | 43 +++++++++++++++++++++++++------------ dir.targets | 2 +- init-tools.sh | 8 +++++++ 4 files changed, 39 insertions(+), 16 deletions(-) diff --git a/build.proj b/build.proj index a29fa1f6..f1230376 100644 --- a/build.proj +++ b/build.proj @@ -6,7 +6,7 @@ true - + true diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json index 640e36a0..07db339c 100644 --- a/buildpipeline/pipeline.json +++ b/buildpipeline/pipeline.json @@ -31,22 +31,37 @@ } }, { - "Name": "Core-Setup-Linux-Arm-BT", - "Parameters": { - "PB_DistroRid": "ubuntu.14.04-arm", - "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", - "PB_TargetArchitecture": "arm", + "Name": "Core-Setup-Linux-Arm-BT", + "Parameters": { + "PB_DistroRid": "rhel.6-x64", + "PB_DockerTag": "centos-6-c8c9b08-20174310104313", + "PB_TargetArchitecture": "x64", + "PB_AdditionalBuildArguments":"-TargetArchitecture=x64 -DistroRid=rhel.6-x64 -PortableBuild=false -strip-symbols", + "PB_PortableBuild": "false" + }, + "ReportingParameters": { + "OperatingSystem": "RedHat6", + "Type": "build/product/", + "Platform": "x64" + } + }, + { + "Name": "Core-Setup-Linux-Arm-BT", + "Parameters": { + "PB_DistroRid": "ubuntu.14.04-arm", + "PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239", + "PB_TargetArchitecture": "arm", "PB_AdditionalBuildArguments":"-TargetArchitecture=arm -DistroRid=linux-arm -DisableCrossgen=true -PortableBuild=true -SkipTests=true -CrossBuild=true -strip-symbols", "PB_CrossBuildArgs": "-e ROOTFS_DIR ", - "PB_PortableBuild": "true" - }, - "ReportingParameters": { - "SubType": "PortableBuild", - "OperatingSystem": "Ubuntu 14.04", - "Type": "build/product/", - "Platform": "arm" - } - }, + "PB_PortableBuild": "true" + }, + "ReportingParameters": { + "SubType": "PortableBuild", + "OperatingSystem": "Ubuntu 14.04", + "Type": "build/product/", + "Platform": "arm" + } + }, { "Name": "Core-Setup-OSX-BT", "Parameters": { diff --git a/dir.targets b/dir.targets index 8f1afd55..986f75b1 100644 --- a/dir.targets +++ b/dir.targets @@ -20,7 +20,7 @@ netstandard1.3 net451 - + diff --git a/init-tools.sh b/init-tools.sh index ddb8b75e..7a2dec21 100755 --- a/init-tools.sh +++ b/init-tools.sh @@ -33,6 +33,14 @@ OSName=$(uname -s) Linux) __DOTNET_PKG=dotnet-dev-linux-x64 OS=Linux + + if [ -e /etc/redhat-release ]; then + redhatRelease=$( Date: Tue, 26 Jul 2016 18:37:24 +0200 Subject: [PATCH 621/625] Updated dotnet.hithub.io URLs to microsoft.com/net --- src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json | 2 +- src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json | 2 +- src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json | 2 +- src/pkg/packaging/windows/sharedframework/bundle.wxs | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json b/src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json index 98c5a734..ab8e2191 100644 --- a/src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json +++ b/src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json @@ -7,7 +7,7 @@ "short_description": "%HOSTFXR_BRAND_NAME% %HOSTFXR_NUGET_VERSION%", "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", - "homepage": "https://dotnet.github.io", + "homepage": "https://www.microsoft.com/net/core", "release":{ "package_version":"1.0.0.0", diff --git a/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json b/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json index 90687629..0a673286 100644 --- a/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json +++ b/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json @@ -7,7 +7,7 @@ "short_description": "%SHARED_FRAMEWORK_BRAND_NAME% %SHARED_FRAMEWORK_NUGET_NAME% %SHARED_FRAMEWORK_NUGET_VERSION%", "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", - "homepage": "https://dotnet.github.io", + "homepage": "https://www.microsoft.com/net/core", "release":{ "package_version":"1.0.0.0", diff --git a/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json b/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json index d3fe6e56..85a6d96b 100644 --- a/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json +++ b/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json @@ -7,7 +7,7 @@ "short_description": "%SHARED_HOST_BRAND_NAME%", "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", - "homepage": "https://dotnet.github.io", + "homepage": "https://www.microsoft.com/net/core", "release":{ "package_version":"1.0.0.0", diff --git a/src/pkg/packaging/windows/sharedframework/bundle.wxs b/src/pkg/packaging/windows/sharedframework/bundle.wxs index 602149b6..fca28a9b 100644 --- a/src/pkg/packaging/windows/sharedframework/bundle.wxs +++ b/src/pkg/packaging/windows/sharedframework/bundle.wxs @@ -7,7 +7,7 @@ Date: Tue, 26 Jul 2016 23:39:05 +0200 Subject: [PATCH 622/625] Use dot.net instead of microsoft.com --- src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json | 2 +- src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json | 2 +- src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json | 2 +- src/pkg/packaging/windows/sharedframework/bundle.wxs | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json b/src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json index ab8e2191..831bfeea 100644 --- a/src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json +++ b/src/pkg/packaging/deb/dotnet-hostfxr-debian_config.json @@ -7,7 +7,7 @@ "short_description": "%HOSTFXR_BRAND_NAME% %HOSTFXR_NUGET_VERSION%", "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", - "homepage": "https://www.microsoft.com/net/core", + "homepage": "https://dot.net/core", "release":{ "package_version":"1.0.0.0", diff --git a/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json b/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json index 0a673286..480e0171 100644 --- a/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json +++ b/src/pkg/packaging/deb/dotnet-sharedframework-debian_config.json @@ -7,7 +7,7 @@ "short_description": "%SHARED_FRAMEWORK_BRAND_NAME% %SHARED_FRAMEWORK_NUGET_NAME% %SHARED_FRAMEWORK_NUGET_VERSION%", "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", - "homepage": "https://www.microsoft.com/net/core", + "homepage": "https://dot.net/core", "release":{ "package_version":"1.0.0.0", diff --git a/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json b/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json index 85a6d96b..abd8d437 100644 --- a/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json +++ b/src/pkg/packaging/deb/dotnet-sharedhost-debian_config.json @@ -7,7 +7,7 @@ "short_description": "%SHARED_HOST_BRAND_NAME%", "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", - "homepage": "https://www.microsoft.com/net/core", + "homepage": "https://dot.net/core", "release":{ "package_version":"1.0.0.0", diff --git a/src/pkg/packaging/windows/sharedframework/bundle.wxs b/src/pkg/packaging/windows/sharedframework/bundle.wxs index fca28a9b..9082c312 100644 --- a/src/pkg/packaging/windows/sharedframework/bundle.wxs +++ b/src/pkg/packaging/windows/sharedframework/bundle.wxs @@ -7,7 +7,7 @@ Date: Fri, 25 Aug 2017 21:09:20 +0200 Subject: [PATCH 623/625] Change one more URL to dot.net --- .../packaging/deb/dotnet-sharedframework-debian9_config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pkg/packaging/deb/dotnet-sharedframework-debian9_config.json b/src/pkg/packaging/deb/dotnet-sharedframework-debian9_config.json index 9acc4059..62d5f8a7 100644 --- a/src/pkg/packaging/deb/dotnet-sharedframework-debian9_config.json +++ b/src/pkg/packaging/deb/dotnet-sharedframework-debian9_config.json @@ -7,7 +7,7 @@ "short_description": "%SHARED_FRAMEWORK_BRAND_NAME% %SHARED_FRAMEWORK_NUGET_NAME% %SHARED_FRAMEWORK_NUGET_VERSION%", "long_description": ".NET Core is a development platform that you can use to build command-line applications, microservices and modern websites. It is open source, cross-platform and is supported by Microsoft. We hope you enjoy using it! If you do, please consider joining the active community of developers that are contributing to the project on GitHub (https://github.com/dotnet/core). We happily accept issues and PRs.", - "homepage": "https://dotnet.github.io", + "homepage": "https://dot.net/core", "release":{ "package_version":"1.0.0.0", From 152dbe8a4b4e30eee26208ff6a850e9aa73c07f8 Mon Sep 17 00:00:00 2001 From: Richard Lander Date: Wed, 16 Aug 2017 13:41:32 -0700 Subject: [PATCH 624/625] Fix brew link --- .../packaging/osx/hostfxr/resources/cs.lproj/conclusion.html | 4 ++-- .../packaging/osx/hostfxr/resources/de.lproj/conclusion.html | 4 ++-- .../packaging/osx/hostfxr/resources/en.lproj/conclusion.html | 4 ++-- .../packaging/osx/hostfxr/resources/es.lproj/conclusion.html | 4 ++-- .../packaging/osx/hostfxr/resources/fr.lproj/conclusion.html | 4 ++-- .../packaging/osx/hostfxr/resources/it.lproj/conclusion.html | 4 ++-- .../packaging/osx/hostfxr/resources/ja.lproj/conclusion.html | 4 ++-- .../packaging/osx/hostfxr/resources/ko.lproj/conclusion.html | 4 ++-- .../packaging/osx/hostfxr/resources/pl.lproj/conclusion.html | 4 ++-- .../osx/hostfxr/resources/pt-br.lproj/conclusion.html | 4 ++-- .../packaging/osx/hostfxr/resources/ru.lproj/conclusion.html | 4 ++-- .../packaging/osx/hostfxr/resources/tr.lproj/conclusion.html | 4 ++-- .../osx/hostfxr/resources/zh-hans.lproj/conclusion.html | 4 ++-- .../osx/hostfxr/resources/zh-hant.lproj/conclusion.html | 4 ++-- 14 files changed, 28 insertions(+), 28 deletions(-) diff --git a/src/pkg/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/cs.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

diff --git a/src/pkg/packaging/osx/hostfxr/resources/de.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/de.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/de.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/de.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

diff --git a/src/pkg/packaging/osx/hostfxr/resources/en.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/en.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/en.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/en.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

diff --git a/src/pkg/packaging/osx/hostfxr/resources/es.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/es.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/es.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/es.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

diff --git a/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/fr.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

diff --git a/src/pkg/packaging/osx/hostfxr/resources/it.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/it.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/it.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/it.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

diff --git a/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/ja.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

diff --git a/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/ko.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

diff --git a/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/pl.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

diff --git a/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/pt-br.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

diff --git a/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/ru.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

diff --git a/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/tr.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

diff --git a/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/zh-hans.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

diff --git a/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html b/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html index 65eb6343..e81d4355 100644 --- a/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html +++ b/src/pkg/packaging/osx/hostfxr/resources/zh-hant.lproj/conclusion.html @@ -14,8 +14,8 @@

In order to be able to use .NET Core on OS X, you need to install OpenSSL version 1.0.1/1.0.2. - There are many ways to install/update your libssl. Using Homebrew is the easiest. - You can view the instructions here or if you're updating, on this page. + There are many ways to install/update your libssl. Using Homebrew is the easiest. + You can view the instructions here or if you're updating, on this page.

From 51024438e10d7663dc3fbaba09f32f1a8ecb986f Mon Sep 17 00:00:00 2001 From: Karel Zikmund Date: Fri, 25 Aug 2017 17:09:42 -0700 Subject: [PATCH 625/625] Fix semantic versioning sort order Pre-releases always have a lower precedence than the associated production version. Fix the example sort to reflect that and clarify this precedence behavior in the description. This fixes #2169. Based on original PR #2182. --- Documentation/design-docs/multilevel-sharedfx-lookup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/design-docs/multilevel-sharedfx-lookup.md b/Documentation/design-docs/multilevel-sharedfx-lookup.md index ce3483ae..123a059b 100644 --- a/Documentation/design-docs/multilevel-sharedfx-lookup.md +++ b/Documentation/design-docs/multilevel-sharedfx-lookup.md @@ -17,7 +17,7 @@ It’s also possible to append a dash followed by a string after the version num Versions that are not pre-releases are called productions. For instance, a valid Semantic Versioning number sort would be: - 1.0.0 -> 1.0.1 -> 1.0.1-alpha -> 1.1.0 -> 1.1.1 -> 2.0.0. + 1.0.0 -> 1.0.1-alpha -> 1.0.1 -> 1.1.0-alpha -> 1.1.0-rc1 -> 1.1.0 -> 1.1.1 -> 2.0.0. ## Executable