diff --git a/Blazor.sln b/Blazor.sln
index bee8b920f5..3a8a5d95da 100644
--- a/Blazor.sln
+++ b/Blazor.sln
@@ -50,6 +50,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Blazor.Common.Tes
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Blazor.Build.Test", "test\Microsoft.Blazor.Build.Test\Microsoft.Blazor.Build.Test.csproj", "{709C7EBE-EB93-4F6D-9491-D714B0D2E898}"
EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Blazor.Build", "src\Microsoft.Blazor.Build\Microsoft.Blazor.Build.csproj", "{8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -120,6 +122,10 @@ Global
{709C7EBE-EB93-4F6D-9491-D714B0D2E898}.Debug|Any CPU.Build.0 = Debug|Any CPU
{709C7EBE-EB93-4F6D-9491-D714B0D2E898}.Release|Any CPU.ActiveCfg = Release|Any CPU
{709C7EBE-EB93-4F6D-9491-D714B0D2E898}.Release|Any CPU.Build.0 = Release|Any CPU
+ {8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -144,6 +150,7 @@ Global
{21EF76A4-63CC-455D-907C-F86C9E442CEC} = {B867E038-B3CE-43E3-9292-61568C46CDEB}
{7F0BF3EA-6985-49F6-8070-0BBA41448BB0} = {ADA3AE29-F6DE-49F6-8C7C-B321508CAE8E}
{709C7EBE-EB93-4F6D-9491-D714B0D2E898} = {ADA3AE29-F6DE-49F6-8C7C-B321508CAE8E}
+ {8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815} = {B867E038-B3CE-43E3-9292-61568C46CDEB}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {504DA352-6788-4DC0-8705-82167E72A4D3}
diff --git a/samples/HostedInAspNet.Client/HostedInAspNet.Client.csproj b/samples/HostedInAspNet.Client/HostedInAspNet.Client.csproj
index e92f53de16..256721762b 100644
--- a/samples/HostedInAspNet.Client/HostedInAspNet.Client.csproj
+++ b/samples/HostedInAspNet.Client/HostedInAspNet.Client.csproj
@@ -8,7 +8,7 @@
-
-
+
+
diff --git a/samples/MonoSanityClient/MonoSanityClient.csproj b/samples/MonoSanityClient/MonoSanityClient.csproj
index d0452838d1..b406f105e6 100644
--- a/samples/MonoSanityClient/MonoSanityClient.csproj
+++ b/samples/MonoSanityClient/MonoSanityClient.csproj
@@ -4,7 +4,7 @@
netcoreapp2.0
-
-
+
+
diff --git a/samples/StandaloneApp/StandaloneApp.csproj b/samples/StandaloneApp/StandaloneApp.csproj
index b80bb49f90..bc9e3e57a8 100644
--- a/samples/StandaloneApp/StandaloneApp.csproj
+++ b/samples/StandaloneApp/StandaloneApp.csproj
@@ -11,7 +11,7 @@
-
-
+
+
diff --git a/src/Microsoft.Blazor.Browser/Microsoft.Blazor.Browser.csproj b/src/Microsoft.Blazor.Browser/Microsoft.Blazor.Browser.csproj
index 54d4ef4e65..3418b3585f 100644
--- a/src/Microsoft.Blazor.Browser/Microsoft.Blazor.Browser.csproj
+++ b/src/Microsoft.Blazor.Browser/Microsoft.Blazor.Browser.csproj
@@ -19,7 +19,10 @@
+
+
+
diff --git a/src/Microsoft.Blazor.Build/.gitignore b/src/Microsoft.Blazor.Build/.gitignore
new file mode 100644
index 0000000000..b4a53f7bea
--- /dev/null
+++ b/src/Microsoft.Blazor.Build/.gitignore
@@ -0,0 +1 @@
+/tools/
diff --git a/src/Microsoft.Blazor.BuildTools/Cli/Commands/BuildCommand.cs b/src/Microsoft.Blazor.Build/Cli/Commands/BuildCommand.cs
similarity index 87%
rename from src/Microsoft.Blazor.BuildTools/Cli/Commands/BuildCommand.cs
rename to src/Microsoft.Blazor.Build/Cli/Commands/BuildCommand.cs
index f330df1c02..76b8b95e4a 100644
--- a/src/Microsoft.Blazor.BuildTools/Cli/Commands/BuildCommand.cs
+++ b/src/Microsoft.Blazor.Build/Cli/Commands/BuildCommand.cs
@@ -1,11 +1,11 @@
// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
-using Microsoft.Blazor.BuildTools.Core;
+using Microsoft.Blazor.Build.Core;
using Microsoft.Extensions.CommandLineUtils;
using System;
-namespace Microsoft.Blazor.BuildTools.Cli.Commands
+namespace Microsoft.Blazor.Build.Cli.Commands
{
internal class BuildCommand
{
@@ -28,7 +28,7 @@ namespace Microsoft.Blazor.BuildTools.Cli.Commands
try
{
Console.WriteLine($"Building Blazor app from {clientAssemblyPath.Value}...");
- Build.Execute(clientAssemblyPath.Value, webRootPath.HasValue() ? webRootPath.Value() : null);
+ AppBuilder.Execute(clientAssemblyPath.Value, webRootPath.HasValue() ? webRootPath.Value() : null);
return 0;
}
catch (Exception ex)
diff --git a/src/Microsoft.Blazor.Build/Cli/Program.cs b/src/Microsoft.Blazor.Build/Cli/Program.cs
new file mode 100644
index 0000000000..43397c486c
--- /dev/null
+++ b/src/Microsoft.Blazor.Build/Cli/Program.cs
@@ -0,0 +1,32 @@
+// Copyright (c) .NET Foundation. All rights reserved.
+// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
+
+using Microsoft.Blazor.Build.Cli.Commands;
+using Microsoft.Extensions.CommandLineUtils;
+
+namespace Microsoft.Blazor.Build
+{
+ static class Program
+ {
+ static int Main(string[] args)
+ {
+ var app = new CommandLineApplication
+ {
+ Name = "dotnet-blazorbuild"
+ };
+ app.HelpOption("-?|-h|--help");
+
+ app.Command("build", BuildCommand.Command);
+
+ if (args.Length > 0)
+ {
+ return app.Execute(args);
+ }
+ else
+ {
+ app.ShowHelp();
+ return 0;
+ }
+ }
+ }
+}
diff --git a/src/Microsoft.Blazor.BuildTools/Core/Build.cs b/src/Microsoft.Blazor.Build/Core/AppBuilder.cs
similarity index 81%
rename from src/Microsoft.Blazor.BuildTools/Core/Build.cs
rename to src/Microsoft.Blazor.Build/Core/AppBuilder.cs
index 6d966812a7..756e77b57d 100644
--- a/src/Microsoft.Blazor.BuildTools/Core/Build.cs
+++ b/src/Microsoft.Blazor.Build/Core/AppBuilder.cs
@@ -1,12 +1,12 @@
// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
-using Microsoft.Blazor.BuildTools.Core.FileSystem;
+using Microsoft.Blazor.Build.Core.FileSystem;
using System.IO;
-namespace Microsoft.Blazor.BuildTools.Core
+namespace Microsoft.Blazor.Build.Core
{
- internal static class Build
+ internal static class AppBuilder
{
internal static void Execute(string assemblyPath, string webRootPath)
{
diff --git a/src/Microsoft.Blazor.BuildTools/Core/FileSystem/ClientFileProvider.cs b/src/Microsoft.Blazor.Build/Core/FileSystem/ClientFileProvider.cs
similarity index 98%
rename from src/Microsoft.Blazor.BuildTools/Core/FileSystem/ClientFileProvider.cs
rename to src/Microsoft.Blazor.Build/Core/FileSystem/ClientFileProvider.cs
index 8c1fb42741..3234629d5f 100644
--- a/src/Microsoft.Blazor.BuildTools/Core/FileSystem/ClientFileProvider.cs
+++ b/src/Microsoft.Blazor.Build/Core/FileSystem/ClientFileProvider.cs
@@ -6,7 +6,7 @@ using Microsoft.Extensions.FileProviders;
using System.Collections.Generic;
using System.IO;
-namespace Microsoft.Blazor.BuildTools.Core.FileSystem
+namespace Microsoft.Blazor.Build.Core.FileSystem
{
internal class ClientFileProvider : CompositeMountedFileProvider
{
diff --git a/src/Microsoft.Blazor.BuildTools/Core/FileSystem/FrameworkFiles/FrameworkFileProvider.cs b/src/Microsoft.Blazor.Build/Core/FileSystem/FrameworkFiles/FrameworkFileProvider.cs
similarity index 96%
rename from src/Microsoft.Blazor.BuildTools/Core/FileSystem/FrameworkFiles/FrameworkFileProvider.cs
rename to src/Microsoft.Blazor.Build/Core/FileSystem/FrameworkFiles/FrameworkFileProvider.cs
index 2e4d166e9b..31b06d07c8 100644
--- a/src/Microsoft.Blazor.BuildTools/Core/FileSystem/FrameworkFiles/FrameworkFileProvider.cs
+++ b/src/Microsoft.Blazor.Build/Core/FileSystem/FrameworkFiles/FrameworkFileProvider.cs
@@ -7,7 +7,7 @@ using Microsoft.Blazor.Mono;
using Microsoft.Extensions.FileProviders;
using System.IO;
-namespace Microsoft.Blazor.BuildTools.Core.FileSystem
+namespace Microsoft.Blazor.Build.Core.FileSystem
{
internal class FrameworkFileProvider : CompositeMountedFileProvider
{
diff --git a/src/Microsoft.Blazor.BuildTools/Core/FileSystem/FrameworkFiles/ReferencedAssemblyFileProvider.cs b/src/Microsoft.Blazor.Build/Core/FileSystem/FrameworkFiles/ReferencedAssemblyFileProvider.cs
similarity index 97%
rename from src/Microsoft.Blazor.BuildTools/Core/FileSystem/FrameworkFiles/ReferencedAssemblyFileProvider.cs
rename to src/Microsoft.Blazor.Build/Core/FileSystem/FrameworkFiles/ReferencedAssemblyFileProvider.cs
index c75163b7f2..037c286e37 100644
--- a/src/Microsoft.Blazor.BuildTools/Core/FileSystem/FrameworkFiles/ReferencedAssemblyFileProvider.cs
+++ b/src/Microsoft.Blazor.Build/Core/FileSystem/FrameworkFiles/ReferencedAssemblyFileProvider.cs
@@ -7,7 +7,7 @@ using System.Linq;
using Mono.Cecil;
using Microsoft.Blazor.Internal.Common.FileProviders;
-namespace Microsoft.Blazor.BuildTools.Core.FileSystem
+namespace Microsoft.Blazor.Build.Core.FileSystem
{
internal class ReferencedAssemblyFileProvider : InMemoryFileProvider
{
diff --git a/src/Microsoft.Blazor.BuildTools/Core/FileSystem/FrameworkFiles/ReferencedAssemblyResolver.cs b/src/Microsoft.Blazor.Build/Core/FileSystem/FrameworkFiles/ReferencedAssemblyResolver.cs
similarity index 97%
rename from src/Microsoft.Blazor.BuildTools/Core/FileSystem/FrameworkFiles/ReferencedAssemblyResolver.cs
rename to src/Microsoft.Blazor.Build/Core/FileSystem/FrameworkFiles/ReferencedAssemblyResolver.cs
index d2091d3ba5..1366eaa582 100644
--- a/src/Microsoft.Blazor.BuildTools/Core/FileSystem/FrameworkFiles/ReferencedAssemblyResolver.cs
+++ b/src/Microsoft.Blazor.Build/Core/FileSystem/FrameworkFiles/ReferencedAssemblyResolver.cs
@@ -5,7 +5,7 @@ using Microsoft.Extensions.FileProviders;
using System.IO;
using System.Linq;
-namespace Microsoft.Blazor.BuildTools.Core.FileSystem
+namespace Microsoft.Blazor.Build.Core.FileSystem
{
internal class ReferencedAssemblyResolver
{
diff --git a/src/Microsoft.Blazor.BuildTools/Core/FileSystem/IndexHtmlFileProvider.cs b/src/Microsoft.Blazor.Build/Core/FileSystem/IndexHtmlFileProvider.cs
similarity index 97%
rename from src/Microsoft.Blazor.BuildTools/Core/FileSystem/IndexHtmlFileProvider.cs
rename to src/Microsoft.Blazor.Build/Core/FileSystem/IndexHtmlFileProvider.cs
index 019498ea4f..69cc89a954 100644
--- a/src/Microsoft.Blazor.BuildTools/Core/FileSystem/IndexHtmlFileProvider.cs
+++ b/src/Microsoft.Blazor.Build/Core/FileSystem/IndexHtmlFileProvider.cs
@@ -8,7 +8,7 @@ using System.Text;
using Microsoft.Extensions.FileProviders;
using System.Linq;
-namespace Microsoft.Blazor.BuildTools.Core.FileSystem
+namespace Microsoft.Blazor.Build.Core.FileSystem
{
internal class IndexHtmlFileProvider : InMemoryFileProvider
{
diff --git a/src/Microsoft.Blazor.BuildTools/Core/FileUtil.cs b/src/Microsoft.Blazor.Build/Core/FileUtil.cs
similarity index 97%
rename from src/Microsoft.Blazor.BuildTools/Core/FileUtil.cs
rename to src/Microsoft.Blazor.Build/Core/FileUtil.cs
index e85f8e5c2f..6c176ee5bb 100644
--- a/src/Microsoft.Blazor.BuildTools/Core/FileUtil.cs
+++ b/src/Microsoft.Blazor.Build/Core/FileUtil.cs
@@ -4,7 +4,7 @@
using Microsoft.Extensions.FileProviders;
using System.IO;
-namespace Microsoft.Blazor.BuildTools.Core
+namespace Microsoft.Blazor.Build.Core
{
internal static class FileUtil
{
diff --git a/src/Microsoft.Blazor.Build/Microsoft.Blazor.Build.csproj b/src/Microsoft.Blazor.Build/Microsoft.Blazor.Build.csproj
new file mode 100644
index 0000000000..b3a9d5b5bf
--- /dev/null
+++ b/src/Microsoft.Blazor.Build/Microsoft.Blazor.Build.csproj
@@ -0,0 +1,26 @@
+
+
+
+ netcoreapp2.0
+ Exe
+ tools
+ true
+ Microsoft.Blazor.BuildTools.nuspec
+ 0.0.1
+ version=$(PackageVersion)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Microsoft.Blazor.BuildTools/Microsoft.Blazor.BuildTools.nuspec b/src/Microsoft.Blazor.Build/Microsoft.Blazor.Build.nuspec
similarity index 79%
rename from src/Microsoft.Blazor.BuildTools/Microsoft.Blazor.BuildTools.nuspec
rename to src/Microsoft.Blazor.Build/Microsoft.Blazor.Build.nuspec
index 04049dc32d..b94ce0b908 100644
--- a/src/Microsoft.Blazor.BuildTools/Microsoft.Blazor.BuildTools.nuspec
+++ b/src/Microsoft.Blazor.Build/Microsoft.Blazor.Build.nuspec
@@ -1,10 +1,10 @@
- Microsoft.Blazor.BuildTools
+ Microsoft.Blazor.Build
$version$
Microsoft
- Build tools for Blazor applications.
+ Build mechanism for Blazor applications.
diff --git a/src/Microsoft.Blazor.Build/Properties/AssemblyInfo.cs b/src/Microsoft.Blazor.Build/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000000..04a6cf1896
--- /dev/null
+++ b/src/Microsoft.Blazor.Build/Properties/AssemblyInfo.cs
@@ -0,0 +1,3 @@
+using System.Runtime.CompilerServices;
+
+[assembly: InternalsVisibleTo("Microsoft.Blazor.Build.Test")]
diff --git a/src/Microsoft.Blazor.Build/ReferenceFromSource.props b/src/Microsoft.Blazor.Build/ReferenceFromSource.props
new file mode 100644
index 0000000000..0af7a63959
--- /dev/null
+++ b/src/Microsoft.Blazor.Build/ReferenceFromSource.props
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Microsoft.Blazor.BuildTools/_._ b/src/Microsoft.Blazor.Build/_._
similarity index 100%
rename from src/Microsoft.Blazor.BuildTools/_._
rename to src/Microsoft.Blazor.Build/_._
diff --git a/src/Microsoft.Blazor.BuildTools/build/netstandard1.0/Microsoft.Blazor.BuildTools.targets b/src/Microsoft.Blazor.Build/build/netstandard1.0/Microsoft.Blazor.Build.targets
similarity index 100%
rename from src/Microsoft.Blazor.BuildTools/build/netstandard1.0/Microsoft.Blazor.BuildTools.targets
rename to src/Microsoft.Blazor.Build/build/netstandard1.0/Microsoft.Blazor.Build.targets
diff --git a/src/Microsoft.Blazor.BuildTools/targets/All.targets b/src/Microsoft.Blazor.Build/targets/All.targets
similarity index 83%
rename from src/Microsoft.Blazor.BuildTools/targets/All.targets
rename to src/Microsoft.Blazor.Build/targets/All.targets
index dfa1e51db3..75d14344bc 100644
--- a/src/Microsoft.Blazor.BuildTools/targets/All.targets
+++ b/src/Microsoft.Blazor.Build/targets/All.targets
@@ -1,6 +1,6 @@
- dotnet $(MSBuildThisFileDirectory)..\tools\Microsoft.Blazor.BuildTools.dll
+ dotnet $(MSBuildThisFileDirectory)..\tools\Microsoft.Blazor.Build.dll
@@ -22,6 +22,6 @@
--webroot $(WebRootPath)
-
+
diff --git a/src/Microsoft.Blazor.BuildTools/Cli/Program.cs b/src/Microsoft.Blazor.BuildTools/Cli/Program.cs
index 61402fdce9..1b4c4fc449 100644
--- a/src/Microsoft.Blazor.BuildTools/Cli/Program.cs
+++ b/src/Microsoft.Blazor.BuildTools/Cli/Program.cs
@@ -17,7 +17,6 @@ namespace Microsoft.Blazor.BuildTools
app.HelpOption("-?|-h|--help");
app.Command("checknodejs", CheckNodeJsInstalledCommand.Command);
- app.Command("build", BuildCommand.Command);
if (args.Length > 0)
{
diff --git a/src/Microsoft.Blazor.BuildTools/Microsoft.Blazor.BuildTools.csproj b/src/Microsoft.Blazor.BuildTools/Microsoft.Blazor.BuildTools.csproj
index b3a9d5b5bf..31a949002a 100644
--- a/src/Microsoft.Blazor.BuildTools/Microsoft.Blazor.BuildTools.csproj
+++ b/src/Microsoft.Blazor.BuildTools/Microsoft.Blazor.BuildTools.csproj
@@ -4,10 +4,6 @@
netcoreapp2.0
Exe
tools
- true
- Microsoft.Blazor.BuildTools.nuspec
- 0.0.1
- version=$(PackageVersion)
@@ -15,12 +11,7 @@
-
-
-
-
-
diff --git a/src/Microsoft.Blazor.BuildTools/ReferenceFromSource.props b/src/Microsoft.Blazor.BuildTools/ReferenceFromSource.props
index 6de063b310..ae585ebd5d 100644
--- a/src/Microsoft.Blazor.BuildTools/ReferenceFromSource.props
+++ b/src/Microsoft.Blazor.BuildTools/ReferenceFromSource.props
@@ -1,19 +1,11 @@
-
-
-
+
+ dotnet $(MSBuildThisFileDirectory)tools\Microsoft.Blazor.BuildTools.dll
+
+ adding a runtime dependency on the .dll -->
diff --git a/test/Microsoft.Blazor.Build.Test/IndexHtmlFileProviderTest.cs b/test/Microsoft.Blazor.Build.Test/IndexHtmlFileProviderTest.cs
index 8577fb0425..dd22d0e11a 100644
--- a/test/Microsoft.Blazor.Build.Test/IndexHtmlFileProviderTest.cs
+++ b/test/Microsoft.Blazor.Build.Test/IndexHtmlFileProviderTest.cs
@@ -7,7 +7,7 @@ using System.Linq;
using Xunit;
using System;
using AngleSharp.Parser.Html;
-using Microsoft.Blazor.BuildTools.Core.FileSystem;
+using Microsoft.Blazor.Build.Core.FileSystem;
namespace Microsoft.Blazor.Server.Test
{
diff --git a/test/Microsoft.Blazor.Build.Test/Microsoft.Blazor.Build.Test.csproj b/test/Microsoft.Blazor.Build.Test/Microsoft.Blazor.Build.Test.csproj
index 7fba0b52cf..35f4292050 100644
--- a/test/Microsoft.Blazor.Build.Test/Microsoft.Blazor.Build.Test.csproj
+++ b/test/Microsoft.Blazor.Build.Test/Microsoft.Blazor.Build.Test.csproj
@@ -15,7 +15,7 @@
-
+
diff --git a/test/Microsoft.Blazor.Build.Test/ReferencedAssemblyFileProviderTest.cs b/test/Microsoft.Blazor.Build.Test/ReferencedAssemblyFileProviderTest.cs
index b65c89ba12..3c2f100770 100644
--- a/test/Microsoft.Blazor.Build.Test/ReferencedAssemblyFileProviderTest.cs
+++ b/test/Microsoft.Blazor.Build.Test/ReferencedAssemblyFileProviderTest.cs
@@ -1,7 +1,7 @@
// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
-using Microsoft.Blazor.BuildTools.Core.FileSystem;
+using Microsoft.Blazor.Build.Core.FileSystem;
using Microsoft.Blazor.Mono;
using Mono.Cecil;
using System;