From 4c7463d966f6e39703c3aaaacb60ede1beb0059c Mon Sep 17 00:00:00 2001 From: Don Syme Date: Fri, 22 Jul 2016 17:54:53 +0100 Subject: [PATCH 1/3] fix to build --- build.cmd | 15 ++++++++++++++- src/FSharpSource.targets | 25 +++++++++++++++++++------ 2 files changed, 33 insertions(+), 7 deletions(-) diff --git a/build.cmd b/build.cmd index 55b66c447ba..ad22b091d12 100644 --- a/build.cmd +++ b/build.cmd @@ -26,6 +26,8 @@ exit /b 1 :ARGUMENTS_OK +set BUILD_PROTO_WITH_CORECLR_LKG=1 + set BUILD_PROTO=0 set BUILD_NET40=1 set BUILD_CORECLR=0 @@ -100,6 +102,11 @@ if /i '%ARG%' == 'all' ( set SKIP_EXPENSIVE_TESTS=0 ) +if /i '%ARG%' == 'protofx' ( + set BUILD_PROTO_WITH_CORECLR_LKG=0 + set BUILD_PROTO=1 +) + if /i '%ARG%' == 'microbuild' ( set BUILD_PROTO=1 set BUILD_NET40=1 @@ -257,6 +264,7 @@ REM after this point, ARG variable should not be used, use only BUILD_* or TEST_ echo Build/Tests configuration: echo. echo BUILD_PROTO=%BUILD_PROTO% +echo BUILD_PROTO_WITH_CORECLR_LKG=%BUILD_PROTO_WITH_CORECLR_LKG% echo BUILD_NET40=%BUILD_NET40% echo BUILD_CORECLR=%BUILD_CORECLR% echo BUILD_PORTABLE=%BUILD_PORTABLE% @@ -327,7 +335,7 @@ if '%RestorePackages%' == 'true' ( .\.nuget\NuGet.exe restore packages.config -PackagesDirectory packages -ConfigFile .nuget\nuget.config @if ERRORLEVEL 1 echo Error: Nuget restore failed && goto :failure ) -if '%BUILD_CORECLR%' == '1' ( +if '%BUILD_PROTO_WITH_CORECLR_LKG%' == '1' ( :: Restore the Tools directory call %~dp0init-tools.cmd @@ -358,6 +366,11 @@ if '%BUILD_CORECLR%' == '1' ( popd ) +if '%BUILD_PROTO_WITH_CORECLR_LKG%' == '0' ( + %_msbuildexe% %msbuildflags% src\fsharp-proto-build.proj %BUILD_DIAG% + @if ERRORLEVEL 1 echo Error: '%_msbuildexe% %msbuildflags% src\fsharp-proto-build.proj %BUILD_DIAG%' failed && goto :failure +) + rem copy targestfile into tools directory ... temporary fix until packaging complete. copy src\fsharp\FSharp.Build\Microsoft.FSharp.targets tools\Microsoft.FSharp.targets copy src\fsharp\FSharp.Build\Microsoft.Portable.FSharp.targets tools\Microsoft.Portable.FSharp.targets diff --git a/src/FSharpSource.targets b/src/FSharpSource.targets index 617313d2fbb..315cee7ac13 100644 --- a/src/FSharpSource.targets +++ b/src/FSharpSource.targets @@ -739,12 +739,25 @@ - - ..\lkg\FSharp-$(LkgVersion)\bin\Microsoft.FSharp.Targets - $(FSharpSourcesRoot)\..\lkg\bin\Debug\netstandard1.6\win7-x64\publish - $(FSharpSourcesRoot)\..\lkg\FSharp-$(LkgVersion)\bin - $(FSLKGPath)\FSharp.Core.dll - + + + + $(FSharpSourcesRoot)\..\lkg\FSharp-$(LkgVersion)\bin\Microsoft.FSharp.Targets + $(FSharpSourcesRoot)\..\lkg\bin\Debug\netstandard1.6\win7-x64\publish + $(FSharpSourcesRoot)\..\lkg\FSharp-$(LkgVersion)\bin + $(FSLKGPath)\FSharp.Core.dll + + + + + ..\lkg\FSharp-$(LkgVersion)\bin\Microsoft.FSharp.Targets + $(FSharpSourcesRoot)\..\lkg\FSharp-$(LkgVersion)\bin + $(FSharpSourcesRoot)\..\lkg\FSharp-$(LkgVersion)\bin + $(FSLKGPath)\FSharp.Core.dll + + + + From 13a7a90f333834c1bd98cc7eb2fae8a229aec3c0 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Fri, 22 Jul 2016 17:58:43 +0100 Subject: [PATCH 2/3] simplify removal of coreclr proto --- build.cmd | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/build.cmd b/build.cmd index ad22b091d12..4608fb43cb8 100644 --- a/build.cmd +++ b/build.cmd @@ -367,8 +367,7 @@ if '%BUILD_PROTO_WITH_CORECLR_LKG%' == '1' ( ) if '%BUILD_PROTO_WITH_CORECLR_LKG%' == '0' ( - %_msbuildexe% %msbuildflags% src\fsharp-proto-build.proj %BUILD_DIAG% - @if ERRORLEVEL 1 echo Error: '%_msbuildexe% %msbuildflags% src\fsharp-proto-build.proj %BUILD_DIAG%' failed && goto :failure + rmdir /s .\lkg\bin\debug ) rem copy targestfile into tools directory ... temporary fix until packaging complete. From c25757426c5336af8ae98abf484e19e09dbfee42 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Fri, 22 Jul 2016 18:06:25 +0100 Subject: [PATCH 3/3] devguide notes --- DEVGUIDE.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/DEVGUIDE.md b/DEVGUIDE.md index d81788c893d..d5b58b32757 100644 --- a/DEVGUIDE.md +++ b/DEVGUIDE.md @@ -31,9 +31,10 @@ There are various qualifiers: build.cmd debug -- build debug instead of release build.cmd proto -- force the rebuild of the Proto bootstrap compiler in addition to other things + build.cmd protofx -- build using a .NET Framework proto (no .NET Core is used) - build.cmd coreclr -- build/tests only the coreclr version compiler (not the Visual F# IDE Tools) - build.cmd compiler -- build/tests only the compiler (not the Visual F# IDE Tools) + build.cmd net40 -- build/tests for .NET Framework version of the compiler (not the Visual F# IDE Tools or .NET Core) + build.cmd coreclr -- build/tests only the coreclr version compiler (not the Visual F# IDE Tools or .NET Framework) build.cmd vs -- build/tests the Visual F# IDE Tools build.cmd pcls -- build/tests the PCL FSharp.Core libraries @@ -44,7 +45,7 @@ There are various qualifiers: build.cmd test-smoke -- build, run smoke tests build.cmd test-coreunit -- build, run FSharp.Core tests - build.cmd test-coreclr -- build, run CoreCLR tests + build.cmd test-coreclr -- build, run .NET Core tests build.cmd test-pcls -- build, run PCL tests build.cmd test-fsharp -- build, run tests\fsharp suite build.cmd test-fsharpqa -- build, run tests\fsharpqa suite