diff --git a/.gitignore b/.gitignore
index 9ab09dfa936..28d53ff4e47 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,12 +1,7 @@
-# Downloaded packages and build tools.
-/lkg
-/packages
-/Tools
+# output location
+artifacts/
/tests/scripts/current
-/release
-/debug
-/Proto
# auto-generated during the build
global.json
@@ -88,9 +83,6 @@ lib/bootstrap/4.1/policy*
obj/
bin/
aclocal.m4
-Debug
-Release
-Proto
sign_temp
.libs
configure
@@ -114,7 +106,6 @@ ossreadme*.txt
*.cto
*.vstman
project.lock.json
-Tools/
Backup/
tests/fsharp/core/array/dont.run.peverify
tests/fsharp/core/innerpoly/dont.run.peverify
@@ -123,7 +114,6 @@ times
/tests/fsharpqa/testenv/bin/System.ValueTuple.dll
source_link.json
.vs/
-/VSRelease/net40/bin
System.ValueTuple.dll
tests/fsharpqa/testenv/bin/System.ValueTuple.dll
*/.fake
diff --git a/.vsts-pr.yaml b/.vsts-pr.yaml
index 37246474bf7..44c277a3943 100644
--- a/.vsts-pr.yaml
+++ b/.vsts-pr.yaml
@@ -17,7 +17,7 @@ jobs:
- script: $(_command) $(_args)
- task: PublishBuildArtifacts@1
inputs:
- PathtoPublish: '$(Build.SourcesDirectory)/tests/TestResults'
+ PathtoPublish: '$(Build.SourcesDirectory)/artifacts/TestResults'
ArtifactName: 'Linux $(_command) $(_args)'
publishLocation: Container
continueOnError: true
@@ -26,7 +26,7 @@ jobs:
- job: Windows
pool:
vmImage: vs2017-win2016
- timeoutInMinutes: 90
+ timeoutInMinutes: 120
strategy:
maxParallel: 7
matrix:
@@ -55,7 +55,7 @@ jobs:
- script: $(_command) $(_args)
- task: PublishBuildArtifacts@1
inputs:
- PathtoPublish: '$(Build.SourcesDirectory)\tests\TestResults'
+ PathtoPublish: '$(Build.SourcesDirectory)\artifacts\TestResults'
ArtifactName: 'Windows $(_command) $(_args)'
publishLocation: Container
continueOnError: true
diff --git a/.vsts-signed.yaml b/.vsts-signed.yaml
index 82b5d247362..25d7642cf09 100644
--- a/.vsts-signed.yaml
+++ b/.vsts-signed.yaml
@@ -29,7 +29,7 @@ jobs:
displayName: Publish nightly package to MyGet
inputs:
scriptName: 'setup\publish-assets.ps1'
- arguments: '-binariesPath $(MSBuildConfiguration) -branchName $(Build.SourceBranch) -apiKey $(FSharp.MyGetApiKey)'
+ arguments: '-binariesPath artifacts\bin -configuration $(MSBuildConfiguration) -branchName $(Build.SourceBranch) -apiKey $(FSharp.MyGetApiKey)'
condition: and(succeeded(), contains(variables['PB_PublishType'], 'myget'))
# Publish packages to Azure Blob Storage
@@ -44,7 +44,7 @@ jobs:
- task: PublishBuildArtifacts@1
displayName: Create static drop
inputs:
- PathtoPublish: '$(MSBuildConfiguration)'
+ PathtoPublish: 'artifacts'
ArtifactName: '$(Build.BuildNumber)'
publishLocation: FilePath
TargetPath: '$(DropRoot)\$(Build.DefinitionName)\$(Build.SourceBranchName)'
@@ -58,7 +58,7 @@ jobs:
inputs:
SymbolsPath: '$(DropRoot)\$(Build.DefinitionName)\$(Build.SourceBranchName)\$(Build.BuildNumber)\Symbols'
SearchPattern: '**\*.dll;**\*.exe;**\*.pdb'
- SymbolsFolder: '$(Build.SourcesDirectory)\$(MSBuildConfiguration)'
+ SymbolsFolder: '$(Build.SourcesDirectory)\artifacts\SymStore'
TreatNotIndexedAsWarning: true
SymbolsProduct: '$(Build.DefinitionName)'
SymbolsVersion: '$(Build.BuildNumber)'
@@ -69,7 +69,7 @@ jobs:
- task: ms-vseng.MicroBuildTasks.4305a8de-ba66-4d8b-b2d1-0dc4ecbbf5e8.MicroBuildUploadVstsDropFolder@1
displayName: Upload VSTS Drop
inputs:
- DropFolder: '$(Build.SourcesDirectory)\$(MSBuildConfiguration)\insertion'
+ DropFolder: '$(Build.SourcesDirectory)\artifacts\VSSetup\$(MSBuildConfiguration)\Insertion'
condition: and(succeeded(), contains(variables['PB_PublishType'], 'vsts'))
# Execute cleanup tasks
@@ -91,6 +91,6 @@ jobs:
displayName: Publish symbols to SymWeb
inputs:
symbolServiceURI: 'https://microsoft.artifacts.visualstudio.com/DefaultCollection'
- sourcePath: '$(DropRoot)\$(Build.DefinitionName)\$(Build.SourceBranchName)\$(Build.BuildNumber)\Symbols'
+ sourcePath: '$(DropRoot)\$(Build.DefinitionName)\$(Build.SourceBranchName)\$(Build.BuildNumber)\SymStore'
usePat: false
condition: and(succeeded(), contains(variables['PB_PublishType'], 'symweb'))
diff --git a/FSharpBuild.Directory.Build.props b/FSharpBuild.Directory.Build.props
index 81701799796..c5e4108181c 100644
--- a/FSharpBuild.Directory.Build.props
+++ b/FSharpBuild.Directory.Build.props
@@ -10,9 +10,16 @@
Debug
$(MSBuildThisFileDirectory)
$(RepoRoot)src
- $(RepoRoot)Tools
- $(RepoRoot)Proto\net40\bin
- $(RepoRoot)Proto\coreclr\bin
+ $(RepoRoot)artifacts
+ $(ArtifactsDir)\toolset
+ $(ArtifactsDir)\bin
+ $(ArtifactsDir)\obj
+ $(ArtifactsDir)\packages
+ $(ArtifactsBinDir)\$(MSBuildProjectName)
+ $(ArtifactsObjDir)\$(MSBuildProjectName)
+ $(ArtifactsDir)\SymStore
+ $(ArtifactsBinDir)\fsc\Proto\net46
+ $(ArtifactsBinDir)/fsc/Proto/netcoreapp2.1
4.4.0
diff --git a/FSharpBuild.Directory.Build.targets b/FSharpBuild.Directory.Build.targets
index 375416e5cf3..ef7f82861c5 100644
--- a/FSharpBuild.Directory.Build.targets
+++ b/FSharpBuild.Directory.Build.targets
@@ -34,42 +34,6 @@
-
-
-
-
- coreclr
- net40
- $(MSBuildProjectDirectory)\$(OutputPath)
- $(OutputPath)
- $(RepoRoot)$(Configuration)\$(TargetDotnetProfile)\bin
- $(RepoRoot)$(Configuration)\$(TargetDotnetProfile)\obj
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/FSharpTests.Directory.Build.props b/FSharpTests.Directory.Build.props
index eb20065bec2..d9fc35fc05d 100644
--- a/FSharpTests.Directory.Build.props
+++ b/FSharpTests.Directory.Build.props
@@ -1,48 +1,43 @@
-
-
- <_FSharpCompilerPath>$(MSBuildThisFileDirectory)$(Configuration)/net40/bin
-
+
true
- $(_FSharpCompilerPath)
+ $(MSBuildThisFileDirectory)artifacts\bin\fsc\$(Configuration)\net46
fsc.exe
- $(_FSharpCompilerPath)
+ $(MSBuildThisFileDirectory)artifacts\bin\fsi\$(Configuration)\net46
fsi.exe
-
-
- <_FSharpCompilerPath>$(MSBuildThisFileDirectory)$(Configuration)/coreclr/bin
-
+
true
- $(MSBuildThisFileDirectory)Tools/dotnet20
+
+ $(MSBuildThisFileDirectory)artifacts\toolset\dotnet
dotnet.exe
dotnet
- $(_FSharpCompilerPath)/fsc.exe
+ $(MSBuildThisFileDirectory)artifacts\bin\fsc\$(Configuration)\netcoreapp2.1\fsc.exe
- $(MSBuildThisFileDirectory)Tools/dotnet20
+ $(MSBuildThisFileDirectory)artifacts\toolset\dotnet
dotnet.exe
dotnet
- $(_FSharpCompilerPath)/fsi.exe
+ $(MSBuildThisFileDirectory)artifacts\bin\fsi\$(Configuration)\netcoreapp2.0\fsi.exe
- $(_FSharpCompilerPath)/Microsoft.FSharp.Targets
- $(_FSharpCompilerPath)/Microsoft.FSharp.NetSdk.props
- $(_FSharpCompilerPath)/Microsoft.FSharp.NetSdk.targets
- $(_FSharpCompilerPath)/Microsoft.FSharp.Overrides.NetSdk.targets
-
+ <_FSharpBuildTargetFramework Condition="'$(FSharpTestCompilerVersion)' == 'net40'">net46
+ <_FSharpBuildTargetFramework Condition="'$(FSharpTestCompilerVersion)' == 'coreclr'">netstandard2.0
+ <_FSharpBuildBinPath>$(MSBuildThisFileDirectory)artifacts\bin\FSharp.Build\$(Configuration)\$(_FSharpBuildTargetFramework)
+ $(_FSharpBuildBinPath)\FSharp.Build.dll
-
-
- $(MSBuildThisFileDirectory)$(Configuration)\coreclr\bin\FSharp.Build.dll
- $(MSBuildThisFileDirectory)$(Configuration)\net40\bin\FSharp.Build.dll
+ $(_FSharpBuildBinPath)/Microsoft.FSharp.Targets
+ $(_FSharpBuildBinPath)/Microsoft.FSharp.NetSdk.props
+ $(_FSharpBuildBinPath)/Microsoft.FSharp.NetSdk.targets
+ $(_FSharpBuildBinPath)/Microsoft.FSharp.Overrides.NetSdk.targets
-
\ No newline at end of file
+
+
diff --git a/Makefile b/Makefile
index d596299cb57..e402025e0ef 100644
--- a/Makefile
+++ b/Makefile
@@ -1,11 +1,12 @@
Configuration ?= release
DotNetVersion = `cat DotnetCLIToolsVersion.txt`
-DotNetExe = "$(CURDIR)/Tools/dotnet20/dotnet"
+DotNetToolPath = $(CURDIR)/artifacts/toolset/dotnet
+DotNetExe = "$(DotNetToolPath)/dotnet"
all: proto restore build test
tools:
- $(CURDIR)/scripts/dotnet-install.sh --version $(DotNetVersion) --install-dir $(CURDIR)/Tools/dotnet20
+ $(CURDIR)/scripts/dotnet-install.sh --version $(DotNetVersion) --install-dir "$(DotNetToolPath)"
global.json: tools
echo { \"sdk\": { \"version\": \"$(DotNetVersion)\" } }>global.json
@@ -14,18 +15,18 @@ proto: global.json
$(DotNetExe) build-server shutdown
$(DotNetExe) restore src/buildtools/buildtools.proj
$(DotNetExe) restore src/fsharp/FSharp.Build/FSharp.Build.fsproj
- $(DotNetExe) restore src/fsharp/Fsc/Fsc.fsproj
+ $(DotNetExe) restore src/fsharp/fsc/fsc.fsproj
$(DotNetExe) build src/buildtools/buildtools.proj -c Proto
$(DotNetExe) build src/fsharp/FSharp.Build/FSharp.Build.fsproj -f netstandard2.0 -c Proto
- $(DotNetExe) build src/fsharp/Fsc/Fsc.fsproj -f netcoreapp2.1 -c Proto
+ $(DotNetExe) build src/fsharp/fsc/fsc.fsproj -f netcoreapp2.1 -c Proto
restore: global.json
$(DotNetExe) restore src/fsharp/FSharp.Core/FSharp.Core.fsproj
$(DotNetExe) restore src/fsharp/FSharp.Build/FSharp.Build.fsproj
$(DotNetExe) restore src/fsharp/FSharp.Compiler.Private/FSharp.Compiler.Private.fsproj
- $(DotNetExe) restore src/fsharp/Fsc/Fsc.fsproj
+ $(DotNetExe) restore src/fsharp/fsc/fsc.fsproj
$(DotNetExe) restore src/fsharp/FSharp.Compiler.Interactive.Settings/FSharp.Compiler.Interactive.Settings.fsproj
- $(DotNetExe) restore src/fsharp/fsi/Fsi.fsproj
+ $(DotNetExe) restore src/fsharp/fsi/fsi.fsproj
$(DotNetExe) restore tests/FSharp.Core.UnitTests/FSharp.Core.UnitTests.fsproj
$(DotNetExe) restore tests/FSharp.Build.UnitTests/FSharp.Build.UnitTests.fsproj
@@ -34,9 +35,9 @@ build: proto restore
$(DotNetExe) build -c $(Configuration) -f netstandard1.6 src/fsharp/FSharp.Core/FSharp.Core.fsproj
$(DotNetExe) build -c $(Configuration) -f netstandard2.0 src/fsharp/FSharp.Build/FSharp.Build.fsproj
$(DotNetExe) build -c $(Configuration) -f netstandard1.6 src/fsharp/FSharp.Compiler.Private/FSharp.Compiler.Private.fsproj
- $(DotNetExe) build -c $(Configuration) -f netcoreapp2.1 src/fsharp/Fsc/Fsc.fsproj
+ $(DotNetExe) build -c $(Configuration) -f netcoreapp2.1 src/fsharp/fsc/fsc.fsproj
$(DotNetExe) build -c $(Configuration) -f netstandard1.6 src/fsharp/FSharp.Compiler.Interactive.Settings/FSharp.Compiler.Interactive.Settings.fsproj
- $(DotNetExe) build -c $(Configuration) -f netcoreapp2.0 src/fsharp/fsi/Fsi.fsproj
+ $(DotNetExe) build -c $(Configuration) -f netcoreapp2.0 src/fsharp/fsi/fsi.fsproj
$(DotNetExe) build -c $(Configuration) -f netcoreapp2.0 tests/FSharp.Core.UnitTests/FSharp.Core.UnitTests.fsproj
$(DotNetExe) build -c $(Configuration) -f netcoreapp2.0 tests/FSharp.Build.UnitTests/FSharp.Build.UnitTests.fsproj
@@ -45,6 +46,4 @@ test: build
$(DotNetExe) test -f netcoreapp2.0 -c $(Configuration) --no-restore --no-build tests/FSharp.Build.UnitTests/FSharp.Build.UnitTests.fsproj -l "trx;LogFileName=$(CURDIR)/tests/TestResults/FSharp.Build.UnitTests.coreclr.trx"
clean:
- rm -rf $(CURDIR)/Proto
- rm -rf $(CURDIR)/debug
- rm -rf $(CURDIR)/release
+ rm -rf $(CURDIR)/artifacts
diff --git a/PublishToBlob.proj b/PublishToBlob.proj
index 00bcee63359..71fbfad44ed 100644
--- a/PublishToBlob.proj
+++ b/PublishToBlob.proj
@@ -17,7 +17,7 @@
-
+
diff --git a/artifacts/.gitignore b/artifacts/.gitignore
deleted file mode 100644
index 72e8ffc0db8..00000000000
--- a/artifacts/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-*
diff --git a/build.cmd b/build.cmd
index 504616ccab2..389679d5ba4 100644
--- a/build.cmd
+++ b/build.cmd
@@ -63,7 +63,7 @@ set BUILD_CORECLR=0
set BUILD_FROMSOURCE=0
set BUILD_VS=0
set BUILD_FCS=0
-set BUILD_CONFIG=release
+set BUILD_CONFIG=Release
set BUILD_DIAG=
set BUILD_PUBLICSIGN=0
@@ -228,8 +228,8 @@ if /i "%ARG%" == "microbuild" (
set CI=1
REM redirecting TEMP directories
- set TEMP=%~dp0%BUILD_CONFIG%\TEMP
- set TMP=%~dp0%BUILD_CONFIG%\TEMP
+ set TEMP=%~dp0artifacts\tmp
+ set TMP=%~dp0artifacts\tmp
)
if /i "%ARG%" == "nuget" (
@@ -319,11 +319,11 @@ if /i "%ARG%" == "diag" (
)
if /i "%ARG%" == "debug" (
- set BUILD_CONFIG=debug
+ set BUILD_CONFIG=Debug
)
if /i "%ARG%" == "release" (
- set BUILD_CONFIG=release
+ set BUILD_CONFIG=Release
)
if /i "%ARG%" == "test-sign" (
@@ -614,13 +614,13 @@ echo { "sdk": { "version": "%DOTNET_TOOLS_VERSION%" } }>global.json
:: Restore the Tools directory
call "%~dp0init-tools.cmd"
-set _dotnetexe=%~dp0Tools\dotnet20\dotnet.exe
-set path=%~dp0Tools\dotnet20\;%path%
+set _dotnetexe=%~dp0artifacts\toolset\dotnet\dotnet.exe
+set path=%~dp0artifacts\toolset\dotnet;%path%
if not "%PB_PackageVersionPropsUrl%" == "" (
echo ----------- do dependency uptake check -----------
- set dependencyUptakeDir=%~dp0Tools\dependencyUptake
+ set dependencyUptakeDir=%~dp0artifacts\dependencyUptake
if not exist "!dependencyUptakeDir!" mkdir "!dependencyUptakeDir!"
:: download package version overrides
@@ -647,19 +647,19 @@ if "%BUILD_PROTO_WITH_CORECLR_LKG%" == "1" (
)
echo ---------------- Done with package restore, starting proto ------------------------
-set logdir=%~dp0%BUILD_CONFIG%\logs
+set logdir=%~dp0artifacts\log\%BUILD_CONFIG%
if not exist "!logdir!" mkdir "!logdir!"
rem Build Proto
if "%BUILD_PROTO%" == "1" (
- rmdir /s /q Proto
+ rmdir /s /q artifacts/bin/fsc/Proto
- echo %_msbuildexe% proto.proj /t:Restore /bl:%~dp0Proto\proto.proj.restore.binlog
- %_msbuildexe% proto.proj /t:Restore /bl:%~dp0Proto\proto.proj.restore.binlog
+ echo %_msbuildexe% proto.proj /t:Restore /bl:%~dp0artifacts\log\Proto\proto.proj.restore.binlog
+ %_msbuildexe% proto.proj /t:Restore /bl:%~dp0artifacts\log\Proto\proto.proj.restore.binlog
@if ERRORLEVEL 1 echo Error restoring proto failed && goto :failure
- echo %_msbuildexe% proto.proj /t:Build /bl:%~dp0Proto\proto.proj.build.binlog
- %_msbuildexe% proto.proj /t:Build /bl:%~dp0Proto\proto.proj.build.binlog
+ echo %_msbuildexe% proto.proj /t:Build /bl:%~dp0artifacts\log\Proto\proto.proj.build.binlog
+ %_msbuildexe% proto.proj /t:Build /bl:%~dp0artifacts\log\Proto\proto.proj.build.binlog
@if ERRORLEVEL 1 echo Error building proto failed && goto :failure
)
@@ -667,11 +667,11 @@ echo ---------------- Done with SDK restore, starting build --------------------
if "%BUILD_PHASE%" == "1" (
- echo %_msbuildexe% fsharp.proj /t:Restore /p:Configuration=%BUILD_CONFIG% /bl:%~dp0%BUILD_CONFIG%\fsharp.proj.restore.binlog
- %_msbuildexe% fsharp.proj /t:Restore /p:Configuration=%BUILD_CONFIG% /bl:%~dp0%BUILD_CONFIG%\fsharp.proj.restore.binlog
+ echo %_dotnetexe% restore fsharp.proj /p:Configuration=%BUILD_CONFIG% /bl:!logdir!\fsharp.proj.restore.binlog
+ %_dotnetexe% restore fsharp.proj /p:Configuration=%BUILD_CONFIG% /bl:!logdir!\fsharp.proj.restore.binlog
- echo %_msbuildexe% fsharp.proj /t:Build /p:Configuration=%BUILD_CONFIG% /p:BUILD_PUBLICSIGN=%BUILD_PUBLICSIGN% /bl:%~dp0%BUILD_CONFIG%\fsharp.proj.build.binlog
- %_msbuildexe% fsharp.proj /t:Build /p:Configuration=%BUILD_CONFIG% /p:BUILD_PUBLICSIGN=%BUILD_PUBLICSIGN% /bl:%~dp0%BUILD_CONFIG%\fsharp.proj.build.binlog
+ echo %_msbuildexe% fsharp.proj /t:Build /p:Configuration=%BUILD_CONFIG% /p:BUILD_PUBLICSIGN=%BUILD_PUBLICSIGN% /bl:!logdir!\fsharp.proj.build.binlog
+ %_msbuildexe% fsharp.proj /t:Build /p:Configuration=%BUILD_CONFIG% /p:BUILD_PUBLICSIGN=%BUILD_PUBLICSIGN% /bl:!logdir!\fsharp.proj.build.binlog
@if ERRORLEVEL 1 echo Error build failed && goto :failure
)
@@ -681,8 +681,8 @@ set asmvercheckpath=%~dp0tests\fsharpqa\testenv\src\AssemblyVersionCheck
if "%BUILD_NET40%" == "1" (
echo #r @"%USERPROFILE%\.nuget\packages\Newtonsoft.Json\9.0.1\lib\net45\Newtonsoft.Json.dll">%asmvercheckpath%\assemblies.fsx
- echo "%~dp0%BUILD_CONFIG%\net40\bin\fsi.exe" "%asmvercheckpath%\AssemblyVersionCheck.fsx" -- "%~dp0build\config\AssemblySignToolData.json" "%~dp0%BUILD_CONFIG%"
- "%~dp0%BUILD_CONFIG%\net40\bin\fsi.exe" "%asmvercheckpath%\AssemblyVersionCheck.fsx" -- "%~dp0build\config\AssemblySignToolData.json" "%~dp0%BUILD_CONFIG%"
+ echo "%~dp0artifacts\bin\fsi\%BUILD_CONFIG%\net46\fsi.exe" "%asmvercheckpath%\AssemblyVersionCheck.fsx" -- "%~dp0build\config\AssemblySignToolData.json" "%~dp0artifacts\bin"
+ "%~dp0artifacts\bin\fsi\%BUILD_CONFIG%\net46\fsi.exe" "%asmvercheckpath%\AssemblyVersionCheck.fsx" -- "%~dp0build\config\AssemblySignToolData.json" "%~dp0artifacts\bin"
if ERRORLEVEL 1 echo Error verifying assembly versions and commit hashes. && goto :failure
)
@@ -692,56 +692,46 @@ if not "%SIGN_TYPE%" == "" (
echo %_msbuildexe% build\projects\Signing.proj /t:Restore
%_msbuildexe% build\projects\Signing.proj /t:Restore
- echo %_msbuildexe% build\projects\Signing.proj /t:DoSigning /p:SignType=%SIGN_TYPE% /p:Configuration=%BUILD_CONFIG% /p:ConfigFile=%~dp0build\config\AssemblySignToolData.json
- %_msbuildexe% build\projects\Signing.proj /t:DoSigning /p:SignType=%SIGN_TYPE% /p:Configuration=%BUILD_CONFIG% /p:ConfigFile=%~dp0build\config\AssemblySignToolData.json
+ echo %_msbuildexe% build\projects\Signing.proj /t:DoSigning /p:SignType=%SIGN_TYPE% /p:Configuration=%BUILD_CONFIG% /p:BinaryBasePath=%~dp0artifacts\bin /p:ConfigFile=%~dp0build\config\AssemblySignToolData.json
+ %_msbuildexe% build\projects\Signing.proj /t:DoSigning /p:SignType=%SIGN_TYPE% /p:Configuration=%BUILD_CONFIG% /p:BinaryBasePath=%~dp0artifacts\bin /p:ConfigFile=%~dp0build\config\AssemblySignToolData.json
if ERRORLEVEL 1 echo Error running sign tool && goto :failure
)
echo ---------------- Done with assembly signing, start package creation ---------------
-echo %_msbuildexe% %msbuildflags% build-nuget-packages.proj /p:Configuration=%BUILD_CONFIG% /t:Pack /bl:%~dp0%BUILD_CONFIG%\logs\msbuild.build-nuget-packages.build.%BUILD_CONFIG%.binlog
- %_msbuildexe% %msbuildflags% build-nuget-packages.proj /p:Configuration=%BUILD_CONFIG% /t:Pack /bl:%~dp0%BUILD_CONFIG%\logs\msbuild.build-nuget-packages.build.%BUILD_CONFIG%.binlog
+echo %_msbuildexe% %msbuildflags% build-nuget-packages.proj /p:Configuration=%BUILD_CONFIG% /t:Pack /bl:!logdir!\msbuild.build-nuget-packages.build.%BUILD_CONFIG%.binlog
+ %_msbuildexe% %msbuildflags% build-nuget-packages.proj /p:Configuration=%BUILD_CONFIG% /t:Pack /bl:!logdir!\msbuild.build-nuget-packages.build.%BUILD_CONFIG%.binlog
if ERRORLEVEL 1 echo Error building NuGet packages && goto :failure
if not "%SIGN_TYPE%" == "" (
- echo %_msbuildexe% build\projects\Signing.proj /t:DoSigning /p:SignType=%SIGN_TYPE% /p:Configuration=%BUILD_CONFIG% /p:ConfigFile=%~dp0build\config\PackageSignToolData.json
- %_msbuildexe% build\projects\Signing.proj /t:DoSigning /p:SignType=%SIGN_TYPE% /p:Configuration=%BUILD_CONFIG% /p:ConfigFile=%~dp0build\config\PackageSignToolData.json
+ echo %_msbuildexe% build\projects\Signing.proj /t:DoSigning /p:SignType=%SIGN_TYPE% /p:Configuration=%BUILD_CONFIG% /p:BinaryBasepath=%~dp0artifacts\packages\%BUILD_CONFIG% /p:ConfigFile=%~dp0build\config\PackageSignToolData.json
+ %_msbuildexe% build\projects\Signing.proj /t:DoSigning /p:SignType=%SIGN_TYPE% /p:Configuration=%BUILD_CONFIG% /p:BinaryBasepath=%~dp0artifacts\packages\%BUILD_CONFIG% /p:ConfigFile=%~dp0build\config\PackageSignToolData.json
if ERRORLEVEL 1 echo Error running sign tool && goto :failure
)
if "%BUILD_SETUP%" == "1" (
- echo %_msbuildexe% %msbuildflags% setup\build-insertion.proj /p:Configuration=%BUILD_CONFIG% /bl:%~dp0%BUILD_CONFIG%\logs\msbuild.build-insertion.build.%BUILD_CONFIG%.binlog
- %_msbuildexe% %msbuildflags% setup\build-insertion.proj /p:Configuration=%BUILD_CONFIG% /bl:%~dp0%BUILD_CONFIG%\logs\msbuild.build-insertion.build.%BUILD_CONFIG%.binlog
+ echo %_msbuildexe% %msbuildflags% setup\build-insertion.proj /p:Configuration=%BUILD_CONFIG% /bl:!logdir!\msbuild.build-insertion.build.%BUILD_CONFIG%.binlog
+ %_msbuildexe% %msbuildflags% setup\build-insertion.proj /p:Configuration=%BUILD_CONFIG% /bl:!logdir!\msbuild.build-insertion.build.%BUILD_CONFIG%.binlog
if ERRORLEVEL 1 echo Error building insertion packages && goto :failure
)
if not "%SIGN_TYPE%" == "" (
- echo %_msbuildexe% build\projects\Signing.proj /t:DoSigning /p:SignType=%SIGN_TYPE% /p:Configuration=%BUILD_CONFIG% /p:ConfigFile=%~dp0build\config\InsertionSignToolData.json
- %_msbuildexe% build\projects\Signing.proj /t:DoSigning /p:SignType=%SIGN_TYPE% /p:Configuration=%BUILD_CONFIG% /p:ConfigFile=%~dp0build\config\InsertionSignToolData.json
+ echo %_msbuildexe% build\projects\Signing.proj /t:DoSigning /p:SignType=%SIGN_TYPE% /p:Configuration=%BUILD_CONFIG% /p:BinaryBasepath=%~dp0artifacts\VSSetup\%BUILD_CONFIG%\Insertion /p:ConfigFile=%~dp0build\config\InsertionSignToolData.json
+ %_msbuildexe% build\projects\Signing.proj /t:DoSigning /p:SignType=%SIGN_TYPE% /p:Configuration=%BUILD_CONFIG% /p:BinaryBasePath=%~dp0artifacts\VSSetup\%BUILD_CONFIG%\Insertion /p:ConfigFile=%~dp0build\config\InsertionSignToolData.json
if ERRORLEVEL 1 echo Error running sign tool && goto :failure
)
echo ---------------- Done with signing, building insertion files ---------------
if "%BUILD_SETUP%" == "1" (
- echo %_msbuildexe% %msbuildflags% setup\Swix\Microsoft.FSharp.vsmanproj /p:Configuration=%BUILD_CONFIG% /bl:%~dp0%BUILD_CONFIG%\logs\msbuild.setup-swix.build.%BUILD_CONFIG%.binlog
- %_msbuildexe% %msbuildflags% setup\Swix\Microsoft.FSharp.vsmanproj /p:Configuration=%BUILD_CONFIG% /bl:%~dp0%BUILD_CONFIG%\logs\msbuild.setup-swix.build.%BUILD_CONFIG%.binlog
+ echo %_msbuildexe% %msbuildflags% setup\Swix\Microsoft.FSharp.vsmanproj /p:Configuration=%BUILD_CONFIG% /bl:!logdir!\msbuild.setup-swix.build.%BUILD_CONFIG%.binlog
+ %_msbuildexe% %msbuildflags% setup\Swix\Microsoft.FSharp.vsmanproj /p:Configuration=%BUILD_CONFIG% /bl:!logdir!\msbuild.setup-swix.build.%BUILD_CONFIG%.binlog
if ERRORLEVEL 1 echo Error building .vsmanproj && goto :failure
)
echo ---------------- Done building insertion files, starting pack/update/prepare ---------------
-if "%BUILD_NET40_FSHARP_CORE%" == "1" (
- echo ---------------- start update.cmd ---------------
- call src\update.cmd %BUILD_CONFIG% -ngen
-)
-
-if "%COPY_FSCOMP_RESOURCE_FOR_BUILD_FROM_SOURCES%" == "1" (
- echo ---------------- copy fscomp resource for build from sources ---------------
- copy /y src\fsharp\FSharp.Compiler.Private\obj\%BUILD_CONFIG%\net40\FSComp.* src\buildfromsource\FSharp.Compiler.Private
-)
-
set X86_PROGRAMFILES=%ProgramFiles%
if "%OSARCH%"=="AMD64" set X86_PROGRAMFILES=%ProgramFiles(x86)%
@@ -787,21 +777,19 @@ if not exist "%link_exe%" (
if /I not "%single_threaded%" == "true" (set PARALLEL_ARG=-procs:%NUMBER_OF_PROCESSORS%) else set PARALLEL_ARG=-procs:0
-set FSCBINPATH=%~dp0%BUILD_CONFIG%\net40\bin
-set RESULTSDIR=%~dp0tests\TestResults
-if not exist "%RESULTSDIR%" (mkdir "%RESULTSDIR%")
+set FSCBINPATH=%~dp0artifacts\bin\fsc\%BUILD_CONFIG%\net46
ECHO FSCBINPATH=%FSCBINPATH%
-ECHO RESULTSDIR=%RESULTSDIR%
ECHO link_exe=%link_exe%
REM ---------------- test-net40-fsharp -----------------------
+set TESTLOGDIR=%~dp0artifacts\TestResults\%BUILD_CONFIG%
if "%TEST_NET40_FSHARP_SUITE%" == "1" (
- set LOGFILE=%~dp0tests\TestResults\FSharp.Tests.FSharpSuite.net40.trx
- echo "%_dotnetexe%" test "%~dp0tests\fsharp\FSharp.Tests.FSharpSuite.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!" -o "%~dp0%BUILD_CONFIG%\net40\bin"
- "%_dotnetexe%" test "%~dp0tests\fsharp\FSharp.Tests.FSharpSuite.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!" -o "%~dp0%BUILD_CONFIG%\net40\bin"
+ set LOGFILE=%TESTLOGDIR%\FSharp.Tests.FSharpSuite_net46.trx
+ echo "%_dotnetexe%" test "%~dp0tests\fsharp\FSharp.Tests.FSharpSuite.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
+ "%_dotnetexe%" test "%~dp0tests\fsharp\FSharp.Tests.FSharpSuite.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
if errorlevel 1 (
echo --------------------------------------------------------------
@@ -809,13 +797,20 @@ if "%TEST_NET40_FSHARP_SUITE%" == "1" (
echo --------------------------------------------------------------
goto :failure
)
+
+ if not exist "!LOGFILE!" (
+ echo --------------------------------------------------------
+ echo Test results file !LOGFILE! not found, ensure tests ran.
+ echo --------------------------------------------------------
+ goto :failure
+ )
)
REM ---------------- test-fcs -----------------------
if "%TEST_FCS%" == "1" (
- set LOGFILE=%~dp0tests\TestResults\FSharp.Compiler.Service.Tests.net40.trx
+ set LOGFILE=%TESTLOGDIR%\FSharp.Compiler.Service.Tests_net46.trx
echo "%_dotnetexe%" test "%~dp0fcs\FSharp.Compiler.Service.Tests\FSharp.Compiler.Service.Tests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
"%_dotnetexe%" test "%~dp0fcs\FSharp.Compiler.Service.Tests\FSharp.Compiler.Service.Tests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
@@ -826,7 +821,14 @@ if "%TEST_FCS%" == "1" (
goto :failure
)
- set LOGFILE=%~dp0tests\TestResults\FSharp.Compiler.Service.Tests.coreclr.trx
+ if not exist "!LOGFILE!" (
+ echo --------------------------------------------------------
+ echo Test results file !LOGFILE! not found, ensure tests ran.
+ echo --------------------------------------------------------
+ goto :failure
+ )
+
+ set LOGFILE=%TESTLOGDIR%\FSharp.Compiler.Service.Tests_netcoreapp2.0.trx
echo "%_dotnetexe%" test "%~dp0fcs\FSharp.Compiler.Service.Tests\FSharp.Compiler.Service.Tests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f netcoreapp2.0 -l "trx;LogFileName=!LOGFILE!"
"%_dotnetexe%" test "%~dp0fcs\FSharp.Compiler.Service.Tests\FSharp.Compiler.Service.Tests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f netcoreapp2.0 -l "trx;LogFileName=!LOGFILE!"
@@ -836,6 +838,13 @@ if "%TEST_FCS%" == "1" (
echo --------------------------------------------------------------
goto :failure
)
+
+ if not exist "!LOGFILE!" (
+ echo --------------------------------------------------------
+ echo Test results file !LOGFILE! not found, ensure tests ran.
+ echo --------------------------------------------------------
+ goto :failure
+ )
)
REM ---------------- end2end -----------------------
@@ -871,6 +880,7 @@ if "%TEST_NET40_FSHARPQA_SUITE%" == "1" (
set perlexe=%USERPROFILE%\.nuget\packages\StrawberryPerl64\5.22.2.1\Tools\perl\bin\perl.exe
if not exist !perlexe! (echo Error: perl was not downloaded from check the packages directory: !perlexe! && goto :failure )
+ set RESULTSDIR=%~dp0artifacts\TestResults\%BUILD_CONFIG%
set OUTPUTFILE=test-net40-fsharpqa-results.log
set ERRORFILE=test-net40-fsharpqa-errors.log
set FAILENV=test-net40-fsharpqa-errors
@@ -881,9 +891,10 @@ if "%TEST_NET40_FSHARPQA_SUITE%" == "1" (
popd
if ERRORLEVEL 1 (
- type "%RESULTSDIR%\!OUTPUTFILE!"
echo -----------------------------------------------------------------
- type "%RESULTSDIR%\!ERRORFILE!"
+ type "!RESULTSDIR!\!OUTPUTFILE!"
+ echo -----------------------------------------------------------------
+ type "!RESULTSDIR!\!ERRORFILE!"
echo -----------------------------------------------------------------
echo Error: Running tests net40-fsharpqa failed, see logs above -- FAILED
echo -----------------------------------------------------------------
@@ -895,7 +906,7 @@ REM ---------------- net40-compilerunit -----------------------
if "%TEST_NET40_COMPILERUNIT_SUITE%" == "1" (
- set LOGFILE=%~dp0tests\TestResults\FSharp.Compiler.UnitTests.net40.trx
+ set LOGFILE=%TESTLOGDIR%\FSharp.Compiler.UnitTests_net46.trx
echo "%_dotnetexe%" test "%~dp0tests\FSharp.Compiler.UnitTests\FSharp.Compiler.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
"%_dotnetexe%" test "%~dp0tests\FSharp.Compiler.UnitTests\FSharp.Compiler.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
@@ -906,7 +917,14 @@ if "%TEST_NET40_COMPILERUNIT_SUITE%" == "1" (
goto :failure
)
- set LOGFILE=%~dp0tests\TestResults\FSharp.Build.UnitTests.net40.trx
+ if not exist "!LOGFILE!" (
+ echo --------------------------------------------------------
+ echo Test results file !LOGFILE! not found, ensure tests ran.
+ echo --------------------------------------------------------
+ goto :failure
+ )
+
+ set LOGFILE=%TESTLOGDIR%\FSharp.Build.UnitTests_net46.trx
echo "%_dotnetexe%" test "%~dp0tests\FSharp.Build.UnitTests\FSharp.Build.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
"%_dotnetexe%" test "%~dp0tests\FSharp.Build.UnitTests\FSharp.Build.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
@@ -916,13 +934,20 @@ if "%TEST_NET40_COMPILERUNIT_SUITE%" == "1" (
echo -----------------------------------------------------------------
goto :failure
)
+
+ if not exist "!LOGFILE!" (
+ echo --------------------------------------------------------
+ echo Test results file !LOGFILE! not found, ensure tests ran.
+ echo --------------------------------------------------------
+ goto :failure
+ )
)
REM ---------------- net40-coreunit -----------------------
if "%TEST_NET40_COREUNIT_SUITE%" == "1" (
- set LOGFILE=%~dp0tests\TestResults\FSharp.Core.UnitTests.net40.trx
+ set LOGFILE=%TESTLOGDIR%\FSharp.Core.UnitTests_net46.trx
echo "%_dotnetexe%" test "%~dp0tests\FSharp.Core.UnitTests\FSharp.Core.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
"%_dotnetexe%" test "%~dp0tests\FSharp.Core.UnitTests\FSharp.Core.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
@@ -932,13 +957,20 @@ if "%TEST_NET40_COREUNIT_SUITE%" == "1" (
echo -----------------------------------------------------------------
goto :failure
)
+
+ if not exist "!LOGFILE!" (
+ echo --------------------------------------------------------
+ echo Test results file !LOGFILE! not found, ensure tests ran.
+ echo --------------------------------------------------------
+ goto :failure
+ )
)
REM ---------------- coreclr-coreunit -----------------------
if "%TEST_CORECLR_COREUNIT_SUITE%" == "1" (
- set LOGFILE=%~dp0tests\TestResults\FSharp.Build.UnitTests.coreclr.trx
+ set LOGFILE=%TESTLOGDIR%\FSharp.Build.UnitTests_netcoreapp2.0.trx
echo "%_dotnetexe%" test "%~dp0tests\FSharp.Build.UnitTests\FSharp.Build.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f netcoreapp2.0 -l "trx;LogFileName=!LOGFILE!"
"%_dotnetexe%" test "%~dp0tests\FSharp.Build.UnitTests\FSharp.Build.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f netcoreapp2.0 -l "trx;LogFileName=!LOGFILE!"
@@ -949,7 +981,14 @@ if "%TEST_CORECLR_COREUNIT_SUITE%" == "1" (
goto :failure
)
- set LOGFILE=%~dp0tests\TestResults\FSharp.Core.UnitTests.coreclr.trx
+ if not exist "!LOGFILE!" (
+ echo --------------------------------------------------------
+ echo Test results file !LOGFILE! not found, ensure tests ran.
+ echo --------------------------------------------------------
+ goto :failure
+ )
+
+ set LOGFILE=%TESTLOGDIR%\FSharp.Core.UnitTests_netcoreapp2.0.trx
echo "%_dotnetexe%" test "%~dp0tests\FSharp.Core.UnitTests\FSharp.Core.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f netcoreapp2.0 -l "trx;LogFileName=!LOGFILE!"
"%_dotnetexe%" test "%~dp0tests\FSharp.Core.UnitTests\FSharp.Core.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f netcoreapp2.0 -l "trx;LogFileName=!LOGFILE!"
@@ -959,14 +998,21 @@ if "%TEST_CORECLR_COREUNIT_SUITE%" == "1" (
echo ------------------------------------------------------------------
goto :failure
)
+
+ if not exist "!LOGFILE!" (
+ echo --------------------------------------------------------
+ echo Test results file !LOGFILE! not found, ensure tests ran.
+ echo --------------------------------------------------------
+ goto :failure
+ )
)
REM ---------------- coreclr-fsharp -----------------------
if "%TEST_CORECLR_FSHARP_SUITE%" == "1" (
- set LOGFILE=%~dp0tests\TestResults\FSharp.Tests.FSharpSuite.coreclr.trx
- echo "%_dotnetexe%" test "%~dp0tests\fsharp\FSharp.Tests.FSharpSuite.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f netcoreapp2.0 -l "trx;LogFileName=!LOGFILE!" -o "%~dp0%BUILD_CONFIG%\coreclr\bin"
- "%_dotnetexe%" test "%~dp0tests\fsharp\FSharp.Tests.FSharpSuite.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f netcoreapp2.0 -l "trx;LogFileName=!LOGFILE!" -o "%~dp0%BUILD_CONFIG%\coreclr\bin"
+ set LOGFILE=%TESTLOGDIR%\FSharp.Tests.FSharpSuite_netcoreapp2.0.trx
+ echo "%_dotnetexe%" test "%~dp0tests\fsharp\FSharp.Tests.FSharpSuite.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f netcoreapp2.0 -l "trx;LogFileName=!LOGFILE!"
+ "%_dotnetexe%" test "%~dp0tests\fsharp\FSharp.Tests.FSharpSuite.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f netcoreapp2.0 -l "trx;LogFileName=!LOGFILE!"
if errorlevel 1 (
echo ----------------------------------------------------------------
@@ -974,12 +1020,19 @@ if "%TEST_CORECLR_FSHARP_SUITE%" == "1" (
echo ----------------------------------------------------------------
goto :failure
)
+
+ if not exist "!LOGFILE!" (
+ echo --------------------------------------------------------
+ echo Test results file !LOGFILE! not found, ensure tests ran.
+ echo --------------------------------------------------------
+ goto :failure
+ )
)
REM ---------------- vs-ideunit -----------------------
if "%TEST_VS_IDEUNIT_SUITE%" == "1" (
- set LOGFILE=%~dp0tests\TestResults\GetTypesVSUnitTests.net40.trx
+ set LOGFILE=%TESTLOGDIR%\GetTypesVSUnitTests_net46.trx
echo "%_dotnetexe%" test "%~dp0vsintegration\tests\GetTypesVSUnitTests\GetTypesVSUnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
"%_dotnetexe%" test "%~dp0vsintegration\tests\GetTypesVSUnitTests\GetTypesVSUnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
@@ -990,15 +1043,29 @@ if "%TEST_VS_IDEUNIT_SUITE%" == "1" (
goto :failure
)
- set LOGFILE=%~dp0tests\TestResults\VisualFSharp.UnitTests.net40.trx
- echo "%_dotnetexe%" test "%~dp0vsintegration\tests\UnitTests\VisualFSharp.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!" -o "%~dp0%BUILD_CONFIG%\net40\bin"
- "%_dotnetexe%" test "%~dp0vsintegration\tests\UnitTests\VisualFSharp.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!" -o "%~dp0%BUILD_CONFIG%\net40\bin"
+ if not exist "!LOGFILE!" (
+ echo --------------------------------------------------------
+ echo Test results file !LOGFILE! not found, ensure tests ran.
+ echo --------------------------------------------------------
+ goto :failure
+ )
+
+ set LOGFILE=%TESTLOGDIR%\VisualFSharp.UnitTests_net46.trx
+ echo "%_dotnetexe%" test "%~dp0vsintegration\tests\UnitTests\VisualFSharp.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
+ "%_dotnetexe%" test "%~dp0vsintegration\tests\UnitTests\VisualFSharp.UnitTests.fsproj" --no-restore --no-build -c %BUILD_CONFIG% -f net46 -l "trx;LogFileName=!LOGFILE!"
if errorlevel 1 (
echo ------------------------------------------------------------
echo Error: Running tests vs-ideunit failed, see file `!LOGFILE!`
echo ------------------------------------------------------------
goto :failure
)
+
+ if not exist "!LOGFILE!" (
+ echo --------------------------------------------------------
+ echo Test results file !LOGFILE! not found, ensure tests ran.
+ echo --------------------------------------------------------
+ goto :failure
+ )
)
goto :success
diff --git a/build/config/AssemblySignToolData.json b/build/config/AssemblySignToolData.json
index 6857a57f0dd..3cd0f5b61c1 100644
--- a/build/config/AssemblySignToolData.json
+++ b/build/config/AssemblySignToolData.json
@@ -4,55 +4,45 @@
"certificate": "Microsoft",
"strongName": "StrongName",
"values": [
- "net40\\bin\\FSharp.Core.dll",
- "net40\\bin\\*\\FSharp.Core.resources.dll",
- "net40\\bin\\FSharp.Build.dll",
- "net40\\bin\\*\\FSharp.Build.resources.dll",
- "net40\\bin\\FSharp.Compiler.Private.dll",
- "net40\\bin\\*\\FSharp.Compiler.Private.resources.dll",
- "net40\\bin\\FSharp.Compiler.Server.Shared.dll",
- "net40\\bin\\FSharp.Compiler.Interactive.Settings.dll",
- "net40\\bin\\*\\FSharp.Compiler.Interactive.Settings.resources.dll",
- "net40\\bin\\fsc.exe",
- "net40\\bin\\fsi.exe",
- "net40\\bin\\fsiAnyCpu.exe",
- "net40\\bin\\FSharp.VS.FSI.dll",
- "net40\\bin\\*\\FSharp.VS.FSI.resources.dll",
- "net40\\bin\\FSharp.LanguageService.Base.dll",
- "net40\\bin\\*\\FSharp.LanguageService.Base.resources.dll",
- "net40\\bin\\FSharp.LanguageService.dll",
- "net40\\bin\\*\\FSharp.LanguageService.resources.dll",
- "net40\\bin\\FSharp.UIResources.dll",
- "net40\\bin\\*\\FSharp.UIResources.resources.dll",
- "net40\\bin\\FSharp.Editor.dll",
- "net40\\bin\\*\\FSharp.Editor.resources.dll",
- "net40\\bin\\FSharp.ProjectSystem.Base.dll",
- "net40\\bin\\*\\FSharp.ProjectSystem.Base.resources.dll",
- "net40\\bin\\FSharp.ProjectSystem.PropertyPages.dll",
- "net40\\bin\\*\\FSharp.ProjectSystem.PropertyPages.resources.dll",
- "net40\\bin\\FSharp.ProjectSystem.FSharp.dll",
- "net40\\bin\\*\\FSharp.ProjectSystem.FSharp.resources.dll",
- "net40\\bin\\FSharp.PatternMatcher.dll",
- "coreclr\\bin\\FSharp.Core.dll",
- "coreclr\\bin\\*\\FSharp.Core.resources.dll",
- "coreclr\\bin\\FSharp.Build.dll",
- "coreclr\\bin\\*\\FSharp.Build.resources.dll",
- "coreclr\\bin\\FSharp.Compiler.Private.dll",
- "coreclr\\bin\\*\\FSharp.Compiler.Private.resources.dll",
- "coreclr\\bin\\FSharp.Compiler.Interactive.Settings.dll",
- "coreclr\\bin\\*\\FSharp.Compiler.Interactive.Settings.resources.dll",
- "coreclr\\bin\\fsc.exe",
- "coreclr\\bin\\fsi.exe"
+ "FSharp.Core\\*\\*\\FSharp.Core.dll",
+ "FSharp.Core\\*\\*\\*\\FSharp.Core.resources.dll",
+ "FSharp.Build\\*\\*\\FSharp.Build.dll",
+ "FSharp.Build\\*\\*\\*\\FSharp.Build.resources.dll",
+ "FSharp.Compiler.Private\\*\\*\\FSharp.Compiler.Private.dll",
+ "FSharp.Compiler.Private\\*\\*\\*\\FSharp.Compiler.Private.resources.dll",
+ "FSharp.Compiler.Server.Shared\\*\\*\\FSharp.Compiler.Server.Shared.dll",
+ "FSharp.Compiler.Interactive.Settings\\*\\*\\FSharp.Compiler.Interactive.Settings.dll",
+ "FSharp.Compiler.Interactive.Settings\\*\\*\\*\\FSharp.Compiler.Interactive.Settings.resources.dll",
+ "fsc\\*\\*\\fsc.exe",
+ "fsi\\*\\*\\fsi.exe",
+ "fsiAnyCpu\\*\\*\\fsiAnyCpu.exe",
+ "FSharp.VS.FSI\\*\\*\\FSharp.VS.FSI.dll",
+ "FSharp.VS.FSI\\*\\*\\*\\FSharp.VS.FSI.resources.dll",
+ "FSharp.LanguageService.Base\\*\\*\\FSharp.LanguageService.Base.dll",
+ "FSharp.LanguageService.Base\\*\\*\\*\\FSharp.LanguageService.Base.resources.dll",
+ "FSharp.LanguageService\\*\\*\\FSharp.LanguageService.dll",
+ "FSharp.LanguageService\\*\\*\\*\\FSharp.LanguageService.resources.dll",
+ "FSharp.UIResources\\*\\*\\FSharp.UIResources.dll",
+ "FSharp.UIResources\\*\\*\\*\\FSharp.UIResources.resources.dll",
+ "FSharp.Editor\\*\\*\\FSharp.Editor.dll",
+ "FSharp.Editor\\*\\*\\*\\FSharp.Editor.resources.dll",
+ "FSharp.ProjectSystem.Base\\*\\*\\FSharp.ProjectSystem.Base.dll",
+ "FSharp.ProjectSystem.Base\\*\\*\\*\\FSharp.ProjectSystem.Base.resources.dll",
+ "FSharp.ProjectSystem.PropertyPages\\*\\*\\FSharp.ProjectSystem.PropertyPages.dll",
+ "FSharp.ProjectSystem.PropertyPages\\*\\*\\*\\FSharp.ProjectSystem.PropertyPages.resources.dll",
+ "FSharp.ProjectSystem.FSharp\\*\\*\\FSharp.ProjectSystem.FSharp.dll",
+ "FSharp.ProjectSystem.FSharp\\*\\*\\*\\FSharp.ProjectSystem.FSharp.resources.dll",
+ "FSharp.PatternMatcher\\*\\*\\FSharp.PatternMatcher.dll"
]
},
{
"certificate": "VsixSHA2",
"strongName": null,
"values": [
- "net40\\bin\\VisualFSharpFull.vsix",
- "net40\\bin\\VisualFSharpTemplate.vsix",
- "insertion\\Microsoft.FSharp.Dependencies.vsix",
- "insertion\\Microsoft.FSharp.VSIX.Full.Resources.*.vsix"
+ "VisualFSharpFull\\*\\*VisualFSharpFull.vsix",
+ "VisualFSharpTemplates\\*\\*\\VisualFSharpTemplate.vsix",
+ "..\\VSSetup\\*\\Insertion\\Microsoft.FSharp.Dependencies.vsix",
+ "..\\VSSetup\\*\\Insertion\\Microsoft.FSharp.VSIX.Full.Resources.*.vsix"
]
}
],
diff --git a/build/config/InsertionSignToolData.json b/build/config/InsertionSignToolData.json
index ec8432ca9ad..d81579b12c9 100644
--- a/build/config/InsertionSignToolData.json
+++ b/build/config/InsertionSignToolData.json
@@ -4,11 +4,11 @@
"certificate": "VsixSHA2",
"strongName": null,
"values": [
- "insertion\\Microsoft.FSharp.Compiler.vsix",
- "insertion\\Microsoft.FSharp.Compiler.Resources.*.vsix",
- "insertion\\Microsoft.FSharp.Dependencies.vsix",
- "insertion\\Microsoft.FSharp.IDE.vsix",
- "insertion\\Microsoft.FSharp.SDK.vsix"
+ "Microsoft.FSharp.Compiler.vsix",
+ "Microsoft.FSharp.Compiler.Resources.*.vsix",
+ "Microsoft.FSharp.Dependencies.vsix",
+ "Microsoft.FSharp.IDE.vsix",
+ "Microsoft.FSharp.SDK.vsix"
]
}
],
diff --git a/build/config/PackageSignToolData.json b/build/config/PackageSignToolData.json
index 20007f59e36..5bc74386355 100644
--- a/build/config/PackageSignToolData.json
+++ b/build/config/PackageSignToolData.json
@@ -4,8 +4,7 @@
"certificate": "NuGet",
"strongName": null,
"values": [
- "artifacts\\*.nupkg",
- "artifacts\\*\\*.nupkg"
+ "*.nupkg"
]
}
],
diff --git a/build/projects/Signing.proj b/build/projects/Signing.proj
index 4999fb6d085..9e981e135ec 100644
--- a/build/projects/Signing.proj
+++ b/build/projects/Signing.proj
@@ -3,7 +3,6 @@
net46
- $(RepoRoot)$(Configuration)
$(NuGetPackageRoot)RoslynTools.SignTool\$(RoslynToolsSignToolPackageVersion)\tools\SignTool.exe
-msbuildPath "$(MSBuildBinPath)\msbuild.exe" -nugetPackagesPath "$(NuGetPackageRoot.TrimEnd('\'))" -config "$(ConfigFile)"
-testSign $(SignToolArgs)
@@ -17,11 +16,12 @@
+
-
+
diff --git a/build/targets/ConvertPortablePdbs.targets b/build/targets/ConvertPortablePdbs.targets
index 474fe091a5d..c43042a499e 100644
--- a/build/targets/ConvertPortablePdbs.targets
+++ b/build/targets/ConvertPortablePdbs.targets
@@ -6,20 +6,33 @@
- $(FinalOutputPath)\ConvertedPdbs
$(NuGetPackageRoot)Pdb2Pdb\$(Pdb2PdbPackageVersion)\tools\Pdb2Pdb.exe
- "$(TargetPath)" /out "$(ConvertedPdbsDirectory)\$(TargetName).pdb" /srcsvrvar SRC_INDEX=public
+ "$(TargetPath)" /out "$(SymStoreDirectory)\$(TargetName).pdb" /srcsvrvar SRC_INDEX=public
-
+
+
+
+ $(TargetDir)\$(TargetName).pdb
+
+
+
+
+
+
diff --git a/build/targets/GenerateAssemblyAttributes.targets b/build/targets/GenerateAssemblyAttributes.targets
index 1be6bdb8315..7b747c9dd92 100644
--- a/build/targets/GenerateAssemblyAttributes.targets
+++ b/build/targets/GenerateAssemblyAttributes.targets
@@ -82,8 +82,7 @@
Inputs="$(MSBuildThisFileFullPath);$(MSBuildProjectFile)"
Outputs="$(GeneratedFSharpAssemblyVersionFile)"
DependsOnTargets="PrepareGenerateAssemblyFileVersion;PrepareForBuild"
- BeforeTargets="CoreCompile"
- Condition="'$(Configuration)' != 'Proto'">
+ BeforeTargets="CoreCompile">
$(PB_RestoreSource);$(RestoreSources)
- $(MSBuildThisFileDirectory)..\..\Tools\dependencyUptake\PackageVersions.props
+ $(MSBuildThisFileDirectory)..\..\artifacts\dependencyUptake\PackageVersions.props
$([System.IO.File]::ReadAllText('$(MSBuildThisFileDirectory)..\..\RoslynPackageVersion.txt').Trim())
diff --git a/fcs/Directory.Build.props b/fcs/Directory.Build.props
index cdcbdd4b8b3..6535dbd2aea 100644
--- a/fcs/Directory.Build.props
+++ b/fcs/Directory.Build.props
@@ -4,17 +4,19 @@
$(HOME)/.nuget/packages/
$(NuGetPackageRoot)\
$(NuGetPackageRoot)/
+ $(MSBuildThisFileDirectory)..\artifacts
+ $(ArtifactsDir)\bin
+ $(ArtifactsDir)\obj
+ $(ArtifactsBinDir)\fcs
+ $(ArtifactsObjDir)\fcs
- $(MSBuildThisFileDirectory)..\Proto\net40\bin
+ $(ArtifactsBinDir)\FSharp.Build\Proto\net46
-
$(ProtoOutputPath)\Microsoft.FSharp.Targets
$(ProtoOutputPath)\Microsoft.FSharp.NetSdk.props
$(ProtoOutputPath)\Microsoft.FSharp.NetSdk.targets
diff --git a/fcs/FSharp.Compiler.Service.MSBuild.v12/FSharp.Compiler.Service.MSBuild.v12.fsproj b/fcs/FSharp.Compiler.Service.MSBuild.v12/FSharp.Compiler.Service.MSBuild.v12.fsproj
index 42b99d95a05..1126a60f2b6 100644
--- a/fcs/FSharp.Compiler.Service.MSBuild.v12/FSharp.Compiler.Service.MSBuild.v12.fsproj
+++ b/fcs/FSharp.Compiler.Service.MSBuild.v12/FSharp.Compiler.Service.MSBuild.v12.fsproj
@@ -7,7 +7,6 @@
net45
true
- ..\..\$(Configuration.ToLower())\fcs
$(DefineConstants);CROSS_PLATFORM_COMPILER
$(DefineConstants);ENABLE_MONO_SUPPORT
diff --git a/fcs/FSharp.Compiler.Service.ProjectCracker/FSharp.Compiler.Service.ProjectCracker.fsproj b/fcs/FSharp.Compiler.Service.ProjectCracker/FSharp.Compiler.Service.ProjectCracker.fsproj
index 1bf41b7bf27..c132ae80bb1 100644
--- a/fcs/FSharp.Compiler.Service.ProjectCracker/FSharp.Compiler.Service.ProjectCracker.fsproj
+++ b/fcs/FSharp.Compiler.Service.ProjectCracker/FSharp.Compiler.Service.ProjectCracker.fsproj
@@ -1,13 +1,9 @@
-
- $(MSBuildProjectDirectory)\..\..\src
-
net45
true
- ..\..\$(Configuration.ToLower())\fcs
Legacy project file cracker for the F# compiler service.
@@ -25,8 +21,8 @@
-
-
+
+
diff --git a/fcs/FSharp.Compiler.Service.ProjectCrackerTool/FSharp.Compiler.Service.ProjectCrackerTool.fsproj b/fcs/FSharp.Compiler.Service.ProjectCrackerTool/FSharp.Compiler.Service.ProjectCrackerTool.fsproj
index 9dddb1cb616..9f690c58ea1 100644
--- a/fcs/FSharp.Compiler.Service.ProjectCrackerTool/FSharp.Compiler.Service.ProjectCrackerTool.fsproj
+++ b/fcs/FSharp.Compiler.Service.ProjectCrackerTool/FSharp.Compiler.Service.ProjectCrackerTool.fsproj
@@ -13,7 +13,6 @@
$(OtherFlags) --staticlink:FSharp.Core
true
false
- ..\..\$(Configuration.ToLower())\fcs
diff --git a/fcs/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj b/fcs/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj
index 8d09c3a26f1..abe71b6159a 100644
--- a/fcs/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj
+++ b/fcs/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj
@@ -76,7 +76,7 @@
-
+
diff --git a/fcs/FSharp.Compiler.Service/FSharp.Compiler.Service.fsproj b/fcs/FSharp.Compiler.Service/FSharp.Compiler.Service.fsproj
index c5f1122386c..c5357aab06b 100644
--- a/fcs/FSharp.Compiler.Service/FSharp.Compiler.Service.fsproj
+++ b/fcs/FSharp.Compiler.Service/FSharp.Compiler.Service.fsproj
@@ -12,7 +12,6 @@
$(DefineConstants);COMPILER
$(DefineConstants);ENABLE_MONO_SUPPORT
$(DefineConstants);NO_STRONG_NAMES
- ..\..\$(Configuration.ToLower())\fcs
$(TargetFramework)\
$(TargetFramework)\
$(OtherFlags) /warnon:1182
diff --git a/fcs/build.fsx b/fcs/build.fsx
index 204faa244ab..7f9f96f3574 100644
--- a/fcs/build.fsx
+++ b/fcs/build.fsx
@@ -13,8 +13,8 @@ open Fake.ReleaseNotesHelper
#if MONO
// prevent incorrect output encoding (e.g. https://github.com/fsharp/FAKE/issues/1196)
System.Console.OutputEncoding <- System.Text.Encoding.UTF8
-CleanDir (__SOURCE_DIRECTORY__ + "/../tests/TestResults")
-File.WriteAllText(__SOURCE_DIRECTORY__ + "/../tests/TestResults/notestsyet.txt","No tests yet")
+CleanDir (__SOURCE_DIRECTORY__ + "/../artifacts/TestResults")
+File.WriteAllText(__SOURCE_DIRECTORY__ + "/../artifacts/TestResults/notestsyet.txt","No tests yet")
let isMono = true
#else
let isMono = false
@@ -54,7 +54,7 @@ let runCmdIn workDir (exe:string) = Printf.ksprintf (fun (args:string) ->
// The rest of the code is standard F# build script
// --------------------------------------------------------------------------------------
-let releaseDir = Path.Combine(__SOURCE_DIRECTORY__, "../release/fcs")
+let releaseDir = Path.Combine(__SOURCE_DIRECTORY__, "../artifacts/bin/fcs")
// Read release notes & version info from RELEASE_NOTES.md
let release = LoadReleaseNotes (__SOURCE_DIRECTORY__ + "/RELEASE_NOTES.md")
diff --git a/fsharp.proj b/fsharp.proj
index 42d2f15b16f..e695da391c9 100644
--- a/fsharp.proj
+++ b/fsharp.proj
@@ -41,25 +41,25 @@
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
@@ -70,41 +70,40 @@
-
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
+
-
-
-
+
+
+
-
-
-
-
+
+
+
-
+
@@ -116,24 +115,20 @@
-
-
-
-
-
+
-
+
-
+
-
+
diff --git a/init-tools.cmd b/init-tools.cmd
index 2c1b6d60bdb..cbdeb27afef 100644
--- a/init-tools.cmd
+++ b/init-tools.cmd
@@ -2,7 +2,7 @@
setlocal enabledelayedexpansion
set /p DOTNET_TOOLS_VERSION=<"%~dp0DotnetCLIToolsVersion.txt"
-set DOTNET_TOOLS_PATH=%~dp0Tools\dotnet20
+set DOTNET_TOOLS_PATH=%~dp0artifacts\toolset\dotnet
set dotnetexe=%DOTNET_TOOLS_PATH%\dotnet.exe
set sdksentinel=%DOTNET_TOOLS_PATH%\sdk-version.txt
diff --git a/proto.proj b/proto.proj
index 96f223470ec..c3a704496ee 100644
--- a/proto.proj
+++ b/proto.proj
@@ -8,7 +8,7 @@
-
+
diff --git a/setup/Directory.Build.props b/setup/Directory.Build.props
index 64b72eafc9f..bd233e75785 100644
--- a/setup/Directory.Build.props
+++ b/setup/Directory.Build.props
@@ -1,12 +1,21 @@
-
-
+
true
false
+ $(MSBuildThisFileDirectory)
+ $(SetupRootFolder)resources
+ $(SetupRootFolder)..\artifacts\bin
+ $(ArtifactsDir)\VSSetup\$(Configuration)
+ $(ArtifactsDir)\VSSetup.obj\$(Configuration)\$(MSBuildProjectName)
+ $(SetupRootFolder)..\artifacts\VSSetup\$(Configuration)
+ $(SetupRootFolder)..\artifacts\VSSetup\$(Configuration)\Insertion
+
+
+ $(VSMajorVersion).$(VSMinorVersion).$(BUILD_BUILDNUMBER)
diff --git a/setup/Directory.Build.targets b/setup/Directory.Build.targets
index 0619a12001e..ccd47cc0a9a 100644
--- a/setup/Directory.Build.targets
+++ b/setup/Directory.Build.targets
@@ -1,4 +1,3 @@
-
diff --git a/setup/FSharp.Setup.props b/setup/FSharp.Setup.props
deleted file mode 100644
index 25398779040..00000000000
--- a/setup/FSharp.Setup.props
+++ /dev/null
@@ -1,142 +0,0 @@
-
-
-
-
- $(MSBuildThisFileDirectory)
-
-
-
-
- $(VSMajorVersion).$(VSMinorVersion).$(BUILD_BUILDNUMBER)
-
-
-
- Debug
- AnyCPU
-
-
-
- $(SetupRootFolder)\..\$(Configuration)
- $(BinariesDir)\net40\bin\
- $(BinariesDir)\insertion
- obj\$(Configuration)\
- $(BinariesDir)\setup
- $(BinariesDir)\setup\$(Lang)
-
-
-
-
- ENU
- 1033
- 9
- en
- en-US
- false
-
-
- CHT
- 1028
- 31748
- zh-Hant
- zh-TW
- true
-
-
- CSY
- 1029
- 5
- cs
- cs-CZ
- true
-
-
- DEU
- 1031
- 7
- de
- de-DE
- true
-
-
- FRA
- 1036
- 12
- fr
- fr-FR
- true
-
-
- ITA
- 1040
- 16
- it
- it-IT
- true
-
-
- JPN
- 1041
- 17
- ja
- ja-JP
- true
-
-
- KOR
- 1042
- 18
- ko
- ko-KR
- true
-
-
- PLK
- 1045
- 21
- pl
- pl-PL
- true
-
-
- PTB
- 1046
- 1046
- pt-BR
- pt-BR
- true
-
-
- RUS
- 1049
- 25
- ru
- ru-RU
- true
-
-
- TRK
- 1055
- 31
- tr
- tr-TR
- true
-
-
- CHS
- 2052
- 4
- zh-Hans
- zh-CN
- true
-
-
- ESN
- 3082
- 10
- es
- es-ES
- true
-
-
-
-
diff --git a/setup/Localization.props b/setup/Localization.props
new file mode 100644
index 00000000000..37c13afcd2c
--- /dev/null
+++ b/setup/Localization.props
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+ ENU
+ 1033
+ 9
+ en
+ en-US
+ false
+
+
+ CHT
+ 1028
+ 31748
+ zh-Hant
+ zh-TW
+ true
+
+
+ CSY
+ 1029
+ 5
+ cs
+ cs-CZ
+ true
+
+
+ DEU
+ 1031
+ 7
+ de
+ de-DE
+ true
+
+
+ FRA
+ 1036
+ 12
+ fr
+ fr-FR
+ true
+
+
+ ITA
+ 1040
+ 16
+ it
+ it-IT
+ true
+
+
+ JPN
+ 1041
+ 17
+ ja
+ ja-JP
+ true
+
+
+ KOR
+ 1042
+ 18
+ ko
+ ko-KR
+ true
+
+
+ PLK
+ 1045
+ 21
+ pl
+ pl-PL
+ true
+
+
+ PTB
+ 1046
+ 1046
+ pt-BR
+ pt-BR
+ true
+
+
+ RUS
+ 1049
+ 25
+ ru
+ ru-RU
+ true
+
+
+ TRK
+ 1055
+ 31
+ tr
+ tr-TR
+ true
+
+
+ CHS
+ 2052
+ 4
+ zh-Hans
+ zh-CN
+ true
+
+
+ ESN
+ 3082
+ 10
+ es
+ es-ES
+ true
+
+
+
+
diff --git a/setup/Swix/Directory.Build.props b/setup/Swix/Directory.Build.props
index 92203d4e217..f64df1d29de 100644
--- a/setup/Swix/Directory.Build.props
+++ b/setup/Swix/Directory.Build.props
@@ -1,14 +1,14 @@
+
+ Debug
neutral
false
vsix
true
- $(FSharpSourcesRoot)\..\$(Configuration)
- $(BinariesFolder)\insertion
- $(MSBuildProjectDirectory)\obj
+ $(ArtifactsBinDir)
diff --git a/setup/Swix/Directory.Build.targets b/setup/Swix/Directory.Build.targets
index 14437118703..974c6da4f1b 100644
--- a/setup/Swix/Directory.Build.targets
+++ b/setup/Swix/Directory.Build.targets
@@ -1,3 +1,10 @@
+
+
+
+ $(ArtifactsDir)\VSSetup\$(Configuration)\Insertion\$(OutputName).vsix
+
+
+
diff --git a/setup/Swix/Microsoft.FSharp.Compiler.Resources/Files.swr b/setup/Swix/Microsoft.FSharp.Compiler.Resources/Files.swr
index 464fdd774ee..f3f60d490b9 100644
--- a/setup/Swix/Microsoft.FSharp.Compiler.Resources/Files.swr
+++ b/setup/Swix/Microsoft.FSharp.Compiler.Resources/Files.swr
@@ -5,7 +5,7 @@ package name=Microsoft.FSharp.Compiler.Resources
vs.package.language=$(LocaleSpecificCulture)
folder "InstallDir:Common7\IDE\CommonExtensions\Microsoft\FSharpCompiler\$(LocaleParentCulture)"
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.Build.resources.dll"
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.Compiler.Interactive.Settings.resources.dll"
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.Compiler.Private.resources.dll"
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.Core.resources.dll"
+ file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\net46\$(LocaleParentCulture)\FSharp.Build.resources.dll"
+ file source="$(BinariesFolder)\FSharp.Compiler.Interactive.Settings\$(Configuration)\net46\$(LocaleParentCulture)\FSharp.Compiler.Interactive.Settings.resources.dll"
+ file source="$(BinariesFolder)\FSharp.Compiler.Private\$(Configuration)\net46\$(LocaleParentCulture)\FSharp.Compiler.Private.resources.dll"
+ file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\net45\$(LocaleParentCulture)\FSharp.Core.resources.dll"
diff --git a/setup/Swix/Microsoft.FSharp.Compiler.Resources/Microsoft.FSharp.Compiler.Resources.swixproj b/setup/Swix/Microsoft.FSharp.Compiler.Resources/Microsoft.FSharp.Compiler.Resources.swixproj
index 166cbb2d519..ac8e74d4854 100644
--- a/setup/Swix/Microsoft.FSharp.Compiler.Resources/Microsoft.FSharp.Compiler.Resources.swixproj
+++ b/setup/Swix/Microsoft.FSharp.Compiler.Resources/Microsoft.FSharp.Compiler.Resources.swixproj
@@ -10,6 +10,7 @@
$(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder)
+ $(PackagePreprocessorDefinitions);Configuration=$(Configuration)
$(PackagePreprocessorDefinitions);FSharpPackageVersion=$(FSharpPackageVersion)
$(PackagePreprocessorDefinitions);LocaleParentCulture=$(LocaleParentCulture)
$(PackagePreprocessorDefinitions);LocaleSpecificCulture=$(LocaleSpecificCulture)
diff --git a/setup/Swix/Microsoft.FSharp.Compiler/Files.swr b/setup/Swix/Microsoft.FSharp.Compiler/Files.swr
index 58129a51ee0..b56667d2465 100644
--- a/setup/Swix/Microsoft.FSharp.Compiler/Files.swr
+++ b/setup/Swix/Microsoft.FSharp.Compiler/Files.swr
@@ -5,35 +5,35 @@ package name=Microsoft.FSharp.Compiler
folder "InstallDir:Common7\IDE\CommonExtensions\Microsoft\FSharp"
- file source=$(BinariesFolder)\net40\bin\fsc.exe vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2 vs.file.ngenApplication="[installDir]\Common7\IDE\CommonExtensions\Microsoft\FSharp\fsc.exe"
- file source="$(BinariesFolder)\net40\bin\fsc.exe.config"
+ file source=$(BinariesFolder)\fsc\$(Configuration)\net46\fsc.exe vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2 vs.file.ngenApplication="[installDir]\Common7\IDE\CommonExtensions\Microsoft\FSharp\fsc.exe"
+ file source="$(BinariesFolder)\fsc\$(Configuration)\net46\fsc.exe.config"
- file source=$(BinariesFolder)\net40\bin\fsi.exe vs.file.ngen=yes vs.file.ngenArchitecture=X86 vs.file.ngenPriority=2 vs.file.ngenApplication="[installDir]\Common7\IDE\CommonExtensions\Microsoft\FSharp\fsi.exe"
- file source="$(BinariesFolder)\net40\bin\fsi.exe.config"
+ file source=$(BinariesFolder)\fsi\$(Configuration)\net46\fsi.exe vs.file.ngen=yes vs.file.ngenArchitecture=X86 vs.file.ngenPriority=2 vs.file.ngenApplication="[installDir]\Common7\IDE\CommonExtensions\Microsoft\FSharp\fsi.exe"
+ file source="$(BinariesFolder)\fsi\$(Configuration)\net46\fsi.exe.config"
- file source="$(BinariesFolder)\net40\bin\fsiAnyCpu.exe" vs.file.ngen=yes vs.file.ngenArchitecture=X64 vs.file.ngenPriority=2 vs.file.ngenApplication="[installDir]\Common7\IDE\CommonExtensions\Microsoft\FSharp\fsiAnyCpu.exe"
- file source="$(BinariesFolder)\net40\bin\fsiAnyCpu.exe.config"
+ file source="$(BinariesFolder)\fsiAnyCpu\$(Configuration)\net46\fsiAnyCpu.exe" vs.file.ngen=yes vs.file.ngenArchitecture=X64 vs.file.ngenPriority=2 vs.file.ngenApplication="[installDir]\Common7\IDE\CommonExtensions\Microsoft\FSharp\fsiAnyCpu.exe"
+ file source="$(BinariesFolder)\fsiAnyCpu\$(Configuration)\net46\fsiAnyCpu.exe.config"
- file source="$(BinariesFolder)\net40\bin\FSharp.Compiler.Interactive.Settings.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2
- file source="$(BinariesFolder)\net40\bin\FSharp.Compiler.Private.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2
- file source="$(BinariesFolder)\net40\bin\FSharp.Compiler.Server.Shared.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2
+ file source="$(BinariesFolder)\FSharp.Compiler.Interactive.Settings\$(Configuration)\net46\FSharp.Compiler.Interactive.Settings.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2
+ file source="$(BinariesFolder)\FSharp.Compiler.Private\$(Configuration)\net46\FSharp.Compiler.Private.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2
+ file source="$(BinariesFolder)\FSharp.Compiler.Server.Shared\$(Configuration)\net46\FSharp.Compiler.Server.Shared.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2
- file source="$(BinariesFolder)\net40\bin\FSharp.Core.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2
- file source="$(BinariesFolder)\net40\bin\FSharp.Core.optdata"
- file source="$(BinariesFolder)\net40\bin\FSharp.Core.sigdata"
+ file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\net45\FSharp.Core.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2
+ file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\net45\FSharp.Core.optdata"
+ file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\net45\FSharp.Core.sigdata"
- file source="$(BinariesFolder)\net40\bin\FSharp.Build.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2
+ file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\net46\FSharp.Build.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2
file source="$(PackagesFolder)\Microsoft.VisualFSharp.Type.Providers.Redist\$(MicrosoftVisualFSharpTypeProvidersRedistPackageVersion)\content\4.3.0.0\FSharp.Data.TypeProviders.dll"
- file source="$(BinariesFolder)\net40\bin\Microsoft.Build.dll"
- file source="$(BinariesFolder)\net40\bin\Microsoft.Build.Framework.dll"
- file source="$(BinariesFolder)\net40\bin\Microsoft.Build.Tasks.Core.dll"
- file source="$(BinariesFolder)\net40\bin\Microsoft.Build.Utilities.Core.dll"
- file source="$(BinariesFolder)\net40\bin\Microsoft.Portable.FSharp.Targets"
- file source="$(BinariesFolder)\net40\bin\System.Collections.Immutable.dll"
- file source="$(BinariesFolder)\net40\bin\System.Reflection.Metadata.dll"
- file source="$(BinariesFolder)\net40\bin\System.ValueTuple.dll"
- file source="$(BinariesFolder)\net40\bin\Microsoft.FSharp.NetSdk.props"
- file source="$(BinariesFolder)\net40\bin\Microsoft.FSharp.NetSdk.targets"
- file source="$(BinariesFolder)\net40\bin\Microsoft.FSharp.Overrides.NetSdk.targets"
- file source="$(BinariesFolder)\net40\bin\Microsoft.FSharp.Targets"
+ file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\net46\Microsoft.Build.dll"
+ file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\net46\Microsoft.Build.Framework.dll"
+ file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\net46\Microsoft.Build.Tasks.Core.dll"
+ file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\net46\Microsoft.Build.Utilities.Core.dll"
+ file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\net46\Microsoft.Portable.FSharp.Targets"
+ file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\net46\System.Collections.Immutable.dll"
+ file source="$(BinariesFolder)\FSharp.Compiler.Private\$(Configuration)\net46\System.Reflection.Metadata.dll"
+ file source="$(BinariesFolder)\FSharp.Compiler.Private\$(Configuration)\net46\System.ValueTuple.dll"
+ file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\net46\Microsoft.FSharp.NetSdk.props"
+ file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\net46\Microsoft.FSharp.NetSdk.targets"
+ file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\net46\Microsoft.FSharp.Overrides.NetSdk.targets"
+ file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\net46\Microsoft.FSharp.Targets"
diff --git a/setup/Swix/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.swixproj b/setup/Swix/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.swixproj
index 955da213a71..f256dd46779 100644
--- a/setup/Swix/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.swixproj
+++ b/setup/Swix/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.swixproj
@@ -10,6 +10,7 @@
$(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder)
+ $(PackagePreprocessorDefinitions);Configuration=$(Configuration)
$(PackagePreprocessorDefinitions);PackagesFolder=$(NuGetPackageRoot)
$(PackagePreprocessorDefinitions);FSharpTreeRoot=$(FSharpTreeRoot)
$(PackagePreprocessorDefinitions);FSharpPackageVersion=$(FSharpPackageVersion)
diff --git a/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr b/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr
index 6ded7ba325f..c1ec9568099 100644
--- a/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr
+++ b/setup/Swix/Microsoft.FSharp.Dependencies/Files.swr
@@ -4,16 +4,16 @@ package name=Microsoft.FSharp.Dependencies
version=$(FSharpPackageVersion)
folder "InstallDir:MSBuild\Microsoft\VisualStudio\v$(VSGeneralVersion)\FSharp"
- file "Microsoft.FSharp.targets" source="$(BinariesFolder)\setup\$(TargetFramework)\resources\Microsoft.FSharp.Shim.targets"
- file "Microsoft.Portable.FSharp.targets" source="$(BinariesFolder)\setup\$(TargetFramework)\resources\Microsoft.Portable.FSharp.Shim.targets"
- file "Microsoft.FSharp.NetSdk.targets" source="$(BinariesFolder)\setup\$(TargetFramework)\resources\Microsoft.FSharp.NetSdk.Shim.targets"
- file "Microsoft.FSharp.Overrides.NetSdk.targets" source="$(BinariesFolder)\setup\$(TargetFramework)\resources\Microsoft.FSharp.Overrides.NetSdk.Shim.targets"
- file "Microsoft.FSharp.NetSdk.props" source="$(BinariesFolder)\setup\$(TargetFramework)\resources\Microsoft.FSharp.NetSdk.Shim.props"
+ file "Microsoft.FSharp.targets" source="$(SetupShimsDir)\Microsoft.FSharp.Shim.targets"
+ file "Microsoft.Portable.FSharp.targets" source="$(SetupShimsDir)\Microsoft.Portable.FSharp.Shim.targets"
+ file "Microsoft.FSharp.NetSdk.targets" source="$(SetupShimsDir)\Microsoft.FSharp.NetSdk.Shim.targets"
+ file "Microsoft.FSharp.Overrides.NetSdk.targets" source="$(SetupShimsDir)\Microsoft.FSharp.Overrides.NetSdk.Shim.targets"
+ file "Microsoft.FSharp.NetSdk.props" source="$(SetupShimsDir)\Microsoft.FSharp.NetSdk.Shim.props"
folder "InstallDir:Common7\IDE\PublicAssemblies"
- file source="$(BinariesFolder)\net40\bin\FSharp.Core.dll" vs.file.ngen=yes
- file source="$(BinariesFolder)\net40\bin\FSharp.Core.optdata"
- file source="$(BinariesFolder)\net40\bin\FSharp.Core.sigdata"
+ file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\net45\FSharp.Core.dll" vs.file.ngen=yes
+ file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\net45\FSharp.Core.optdata"
+ file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\net45\FSharp.Core.sigdata"
folder "InstallDir:Common7\Tools\VsDevCmd\Ext"
file source="fsharp.bat"
diff --git a/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj b/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj
index dd1452bbefc..e30eaaf0fe1 100644
--- a/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj
+++ b/setup/Swix/Microsoft.FSharp.Dependencies/Microsoft.FSharp.Dependencies.swixproj
@@ -10,7 +10,9 @@
$(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder)
+ $(PackagePreprocessorDefinitions);Configuration=$(Configuration)
$(PackagePreprocessorDefinitions);FSharpPackageVersion=$(FSharpPackageVersion)
+ $(PackagePreprocessorDefinitions);SetupShimsDir=$(MSBuildThisFileDirectory)..\..\shims
$(PackagePreprocessorDefinitions);TargetFramework=$(TargetFramework)
$(PackagePreprocessorDefinitions);VSGeneralVersion=$(VSGeneralVersion)
diff --git a/setup/Swix/Microsoft.FSharp.IDE/Files.swr b/setup/Swix/Microsoft.FSharp.IDE/Files.swr
index 0d47c502090..2e0ee2bcf3b 100644
--- a/setup/Swix/Microsoft.FSharp.IDE/Files.swr
+++ b/setup/Swix/Microsoft.FSharp.IDE/Files.swr
@@ -4,10 +4,10 @@ package name=Microsoft.FSharp.IDE
version=$(FSharpPackageVersion)
folder "InstallDir:Common7\IDE\NewScriptItems"
- file source="$(BinariesFolder)\setup\$(TargetFramework)\resources\NewFileDialog\Script\NewFSharpScriptItems.vsdir"
- file source="$(BinariesFolder)\setup\$(TargetFramework)\resources\NewFileDialog\Script\Script.fsx"
+ file source="$(SetupResourcesDir)\NewFileDialog\Script\NewFSharpScriptItems.vsdir"
+ file source="$(SetupResourcesDir)\NewFileDialog\Script\Script.fsx"
folder "InstallDir:Common7\IDE\NewFileItems"
- file source="$(BinariesFolder)\setup\$(TargetFramework)\resources\NewFileDialog\General\NewFSharpFileItems.vsdir"
- file source="$(BinariesFolder)\setup\$(TargetFramework)\resources\NewFileDialog\General\File.fs"
- file source="$(BinariesFolder)\setup\$(TargetFramework)\resources\NewFileDialog\General\Script.fsx"
+ file source="$(SetupResourcesDir)\NewFileDialog\General\NewFSharpFileItems.vsdir"
+ file source="$(SetupResourcesDir)\NewFileDialog\General\File.fs"
+ file source="$(SetupResourcesDir)\NewFileDialog\General\Script.fsx"
diff --git a/setup/Swix/Microsoft.FSharp.IDE/Microsoft.FSharp.IDE.swixproj b/setup/Swix/Microsoft.FSharp.IDE/Microsoft.FSharp.IDE.swixproj
index b26924e23c2..223a7262fcb 100644
--- a/setup/Swix/Microsoft.FSharp.IDE/Microsoft.FSharp.IDE.swixproj
+++ b/setup/Swix/Microsoft.FSharp.IDE/Microsoft.FSharp.IDE.swixproj
@@ -9,8 +9,8 @@
- $(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder)
$(PackagePreprocessorDefinitions);FSharpPackageVersion=$(FSharpPackageVersion)
+ $(PackagePreprocessorDefinitions);SetupResourcesDir=$(MSBuildThisFileDirectory)..\..\resources
$(PackagePreprocessorDefinitions);TargetFramework=$(TargetFramework)
diff --git a/setup/Swix/Microsoft.FSharp.Vsix.Resources/Files.swr b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Files.swr
index a8c5becc80e..f3b95d49900 100644
--- a/setup/Swix/Microsoft.FSharp.Vsix.Resources/Files.swr
+++ b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Files.swr
@@ -5,16 +5,16 @@ package name=Microsoft.FSharp.VSIX.Full.Resources
vs.package.language=$(LocaleSpecificCulture)
folder "InstallDir:Common7\IDE\PublicAssemblies\$(LocaleParentCulture)"
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.Core.resources.dll" vs.file.ngen=yes
+ file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\net45\$(LocaleParentCulture)\FSharp.Core.resources.dll" vs.file.ngen=yes
folder "InstallDir:Common7\IDE\CommonExtensions\Microsoft\FSharp\$(LocaleParentCulture)"
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.Compiler.Private.resources.dll" vs.file.ngen=yes
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.Core.resources.dll" vs.file.ngen=yes
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.Editor.resources.dll" vs.file.ngen=yes
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.LanguageService.Base.resources.dll" vs.file.ngen=yes
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.LanguageService.resources.dll" vs.file.ngen=yes
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.ProjectSystem.Base.resources.dll" vs.file.ngen=yes
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.ProjectSystem.FSharp.resources.dll" vs.file.ngen=yes
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.ProjectSystem.PropertyPages.resources.dll" vs.file.ngen=yes
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.UIResources.resources.dll" vs.file.ngen=yes
- file source="$(BinariesFolder)\net40\bin\$(LocaleParentCulture)\FSharp.VS.FSI.resources.dll" vs.file.ngen=yes
+ file source="$(BinariesFolder)\FSharp.Compiler.Private\$(Configuration)\net46\$(LocaleParentCulture)\FSharp.Compiler.Private.resources.dll" vs.file.ngen=yes
+ file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\net45\$(LocaleParentCulture)\FSharp.Core.resources.dll" vs.file.ngen=yes
+ file source="$(BinariesFolder)\FSharp.Editor\$(Configuration)\net46\$(LocaleParentCulture)\FSharp.Editor.resources.dll" vs.file.ngen=yes
+ file source="$(BinariesFolder)\FSharp.LanguageService.Base\$(Configuration)\net46\$(LocaleParentCulture)\FSharp.LanguageService.Base.resources.dll" vs.file.ngen=yes
+ file source="$(BinariesFolder)\FSharp.LanguageService\$(Configuration)\net46\$(LocaleParentCulture)\FSharp.LanguageService.resources.dll" vs.file.ngen=yes
+ file source="$(BinariesFolder)\ProjectSystem.Base\$(Configuration)\net46\$(LocaleParentCulture)\FSharp.ProjectSystem.Base.resources.dll" vs.file.ngen=yes
+ file source="$(BinariesFolder)\ProjectSystem\$(Configuration)\net46\$(LocaleParentCulture)\FSharp.ProjectSystem.FSharp.resources.dll" vs.file.ngen=yes
+ file source="$(BinariesFolder)\FSharp.PropertiesPages\$(Configuration)\net46\$(LocaleParentCulture)\FSharp.ProjectSystem.PropertyPages.resources.dll" vs.file.ngen=yes
+ file source="$(BinariesFolder)\FSharp.UIResources\$(Configuration)\net46\$(LocaleParentCulture)\FSharp.UIResources.resources.dll" vs.file.ngen=yes
+ file source="$(BinariesFolder)\FSharp.VS.FSI\$(Configuration)\net46\$(LocaleParentCulture)\FSharp.VS.FSI.resources.dll" vs.file.ngen=yes
diff --git a/setup/Swix/Microsoft.FSharp.Vsix.Resources/Microsoft.FSharp.Vsix.Resources.swixproj b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Microsoft.FSharp.Vsix.Resources.swixproj
index fd39c147b4c..d8952b40fe7 100644
--- a/setup/Swix/Microsoft.FSharp.Vsix.Resources/Microsoft.FSharp.Vsix.Resources.swixproj
+++ b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Microsoft.FSharp.Vsix.Resources.swixproj
@@ -9,6 +9,7 @@
+ $(PackagePreprocessorDefinitions);Configuration=$(Configuration)
$(PackagePreprocessorDefinitions);BinariesFolder=$(BinariesFolder)
$(PackagePreprocessorDefinitions);FSharpPackageVersion=$(FSharpPackageVersion)
$(PackagePreprocessorDefinitions);LocaleCode=$(LocaleCode)
diff --git a/setup/Swix/Microsoft.FSharp.Vsix.Resources/Templates.swr b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Templates.swr
index 770d904e226..5de89f0cadd 100644
--- a/setup/Swix/Microsoft.FSharp.Vsix.Resources/Templates.swr
+++ b/setup/Swix/Microsoft.FSharp.Vsix.Resources/Templates.swr
@@ -6,8 +6,8 @@ package name=Microsoft.FSharp.VSIX.Full.Resources
folder "InstallDir:Common7\IDE\ProjectTemplates\FSharp\$(LocaleId)"
folder "ConsoleApplication"
- file source="$(BinariesFolder)\net40\bin\ProjectTemplates\FSharp\$(LocaleParentId)\ConsoleApplication.zip"
+ file source="$(BinariesFolder)\ConsoleProject\$(Configuration)\$(LocaleParentId)\ConsoleApplication.zip"
folder "Library"
- file source="$(BinariesFolder)\net40\bin\ProjectTemplates\FSharp\$(LocaleParentId)\Library.zip"
+ file source="$(BinariesFolder)\LibraryProject\$(Configuration)\$(LocaleParentId)\Library.zip"
folder "Tutorial"
- file source="$(BinariesFolder)\net40\bin\ProjectTemplates\FSharp\$(LocaleParentId)\Tutorial.zip"
+ file source="$(BinariesFolder)\TutorialProject\$(Configuration)\$(LocaleParentId)\Tutorial.zip"
diff --git a/setup/Swix/Microsoft.FSharp.vsmanproj b/setup/Swix/Microsoft.FSharp.vsmanproj
index d2b0388c272..ec9461e1137 100644
--- a/setup/Swix/Microsoft.FSharp.vsmanproj
+++ b/setup/Swix/Microsoft.FSharp.vsmanproj
@@ -6,7 +6,7 @@
true
true
- $(OutputPath)
+ $(OutputPath)\Insertion
$(FSharpPackageVersion)
@@ -23,17 +23,17 @@
-
-
+
+
-
+
-
-
+
+
-
-
-
+
+
+
diff --git a/setup/publish-assets.ps1 b/setup/publish-assets.ps1
index 29604698b4c..bfa905bbad9 100644
--- a/setup/publish-assets.ps1
+++ b/setup/publish-assets.ps1
@@ -16,7 +16,8 @@ The API key used to authenticate with MyGet.
Param(
[string]$binariesPath = $null,
[string]$branchName = $null,
- [string]$apiKey = $null
+ [string]$apiKey = $null,
+ [string]$configuration = $null
)
Set-StrictMode -Version 2.0
@@ -40,7 +41,7 @@ try {
}
$branchName = $branchName.Replace("/", "_") # can't have slashes in the branch name
- $vsix = Join-Path $binariesPath "net40\bin\VisualFSharpFull.vsix"
+ $vsix = Join-Path $binariesPath "VisualFSharpFull\$configuration\net46\VisualFSharpFull.vsix"
Write-Host " Uploading '$vsix' to '$requestUrl'."
diff --git a/setup/resources/Microsoft.FSharp.NetSdk.Shim.props b/setup/shims/Microsoft.FSharp.NetSdk.Shim.props
similarity index 100%
rename from setup/resources/Microsoft.FSharp.NetSdk.Shim.props
rename to setup/shims/Microsoft.FSharp.NetSdk.Shim.props
diff --git a/setup/resources/Microsoft.FSharp.NetSdk.Shim.targets b/setup/shims/Microsoft.FSharp.NetSdk.Shim.targets
similarity index 100%
rename from setup/resources/Microsoft.FSharp.NetSdk.Shim.targets
rename to setup/shims/Microsoft.FSharp.NetSdk.Shim.targets
diff --git a/setup/resources/Microsoft.FSharp.Overrides.NetSdk.Shim.targets b/setup/shims/Microsoft.FSharp.Overrides.NetSdk.Shim.targets
similarity index 100%
rename from setup/resources/Microsoft.FSharp.Overrides.NetSdk.Shim.targets
rename to setup/shims/Microsoft.FSharp.Overrides.NetSdk.Shim.targets
diff --git a/setup/resources/Microsoft.FSharp.Shim.targets b/setup/shims/Microsoft.FSharp.Shim.targets
similarity index 100%
rename from setup/resources/Microsoft.FSharp.Shim.targets
rename to setup/shims/Microsoft.FSharp.Shim.targets
diff --git a/setup/resources/Microsoft.Portable.FSharp.Shim.targets b/setup/shims/Microsoft.Portable.FSharp.Shim.targets
similarity index 100%
rename from setup/resources/Microsoft.Portable.FSharp.Shim.targets
rename to setup/shims/Microsoft.Portable.FSharp.Shim.targets
diff --git a/src/buildtools/Directory.Build.props b/src/buildtools/Directory.Build.props
index bb5b23d29d0..12d9ad073ec 100644
--- a/src/buildtools/Directory.Build.props
+++ b/src/buildtools/Directory.Build.props
@@ -1,3 +1,3 @@
-
+
diff --git a/src/buildtools/Directory.Build.targets b/src/buildtools/Directory.Build.targets
index bb5b23d29d0..14437118703 100644
--- a/src/buildtools/Directory.Build.targets
+++ b/src/buildtools/Directory.Build.targets
@@ -1,3 +1,3 @@
-
+
diff --git a/src/buildtools/buildtools.targets b/src/buildtools/buildtools.targets
index 9285a376e88..9b00e18cf72 100644
--- a/src/buildtools/buildtools.targets
+++ b/src/buildtools/buildtools.targets
@@ -15,7 +15,7 @@
BeforeTargets="CoreCompile">
- $(MSBuildThisFileDirectory)fslex\bin\Proto\netcoreapp2.0\fslex.dll
+ $(ArtifactsBinDir)\fslex\Proto\netcoreapp2.0\fslex.dll
@@ -38,7 +38,7 @@
BeforeTargets="CoreCompile">
- $(MSBuildThisFileDirectory)fsyacc\bin\Proto\netcoreapp2.0\fsyacc.dll
+ $(ArtifactsBinDir)\fsyacc\Proto\netcoreapp2.0\fsyacc.dll
diff --git a/src/fsharp/Directory.Build.props b/src/fsharp/Directory.Build.props
index 57c8aa24ba7..151415117e4 100644
--- a/src/fsharp/Directory.Build.props
+++ b/src/fsharp/Directory.Build.props
@@ -6,6 +6,7 @@
true
true
false
+ $(ArtifactsPackagesDir)\$(Configuration)
diff --git a/src/fsharp/Directory.Nuget.props b/src/fsharp/Directory.Nuget.props
index 97266b7c79d..6521936cfe3 100644
--- a/src/fsharp/Directory.Nuget.props
+++ b/src/fsharp/Directory.Nuget.props
@@ -20,6 +20,7 @@
tags=$(PackageTags);
githeadsha=$(NormalizedGitHeadSha);
configuration=$(Configuration);
+ artifactsbindir=$(ArtifactsBinDir);
diff --git a/src/fsharp/Directory.Nuget.targets b/src/fsharp/Directory.Nuget.targets
index f3ae171dc38..e30b155faad 100644
--- a/src/fsharp/Directory.Nuget.targets
+++ b/src/fsharp/Directory.Nuget.targets
@@ -8,14 +8,4 @@
-
-
-
-
-
-
-
-
-
diff --git a/src/fsharp/FSharp.Compiler.Private/FSharp.Compiler.Private.fsproj b/src/fsharp/FSharp.Compiler.Private/FSharp.Compiler.Private.fsproj
index 97d17b10972..46e8888f03b 100644
--- a/src/fsharp/FSharp.Compiler.Private/FSharp.Compiler.Private.fsproj
+++ b/src/fsharp/FSharp.Compiler.Private/FSharp.Compiler.Private.fsproj
@@ -21,14 +21,17 @@
+
+ $(BaseOutputPath)\$(Configuration)\$(TargetFramework)
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/src/fsharp/FSharp.Compiler.nuget/Directory.Build.targets b/src/fsharp/FSharp.Compiler.nuget/Directory.Build.targets
index a20d4be41e6..7d885b518db 100644
--- a/src/fsharp/FSharp.Compiler.nuget/Directory.Build.targets
+++ b/src/fsharp/FSharp.Compiler.nuget/Directory.Build.targets
@@ -4,8 +4,8 @@
-
-
+
+
diff --git a/src/fsharp/FSharp.Compiler.nuget/Microsoft.FSharp.Compiler.nuspec b/src/fsharp/FSharp.Compiler.nuget/Microsoft.FSharp.Compiler.nuspec
index ac76a4a2403..87ef49f5521 100644
--- a/src/fsharp/FSharp.Compiler.nuget/Microsoft.FSharp.Compiler.nuspec
+++ b/src/fsharp/FSharp.Compiler.nuget/Microsoft.FSharp.Compiler.nuspec
@@ -54,30 +54,30 @@
this approach gives a very small deployment. Which is kind of necessary.
-->
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
+
+
+
+
diff --git a/src/fsharp/FSharp.Core/FSharp.Core.nuspec b/src/fsharp/FSharp.Core/FSharp.Core.nuspec
index 21b484cb8ab..443388a8278 100644
--- a/src/fsharp/FSharp.Core/FSharp.Core.nuspec
+++ b/src/fsharp/FSharp.Core/FSharp.Core.nuspec
@@ -56,18 +56,18 @@
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
+
+
diff --git a/src/fsharp/Fsc/InternalsVisibleTo.fs b/src/fsharp/fsc/InternalsVisibleTo.fs
similarity index 100%
rename from src/fsharp/Fsc/InternalsVisibleTo.fs
rename to src/fsharp/fsc/InternalsVisibleTo.fs
diff --git a/src/fsharp/Fsc/app.config b/src/fsharp/fsc/app.config
similarity index 100%
rename from src/fsharp/Fsc/app.config
rename to src/fsharp/fsc/app.config
diff --git a/src/fsharp/Fsc/Fsc.fsproj b/src/fsharp/fsc/fsc.fsproj
similarity index 100%
rename from src/fsharp/Fsc/Fsc.fsproj
rename to src/fsharp/fsc/fsc.fsproj
diff --git a/src/fsharp/fsi/Fsi.fsproj b/src/fsharp/fsi/fsi.fsproj
similarity index 96%
rename from src/fsharp/fsi/Fsi.fsproj
rename to src/fsharp/fsi/fsi.fsproj
index 9fbc4dc1331..6a4b7df15d5 100644
--- a/src/fsharp/fsi/Fsi.fsproj
+++ b/src/fsharp/fsi/fsi.fsproj
@@ -28,10 +28,10 @@
+
-
diff --git a/src/fsharp/fsiAnyCpu/FsiAnyCPU.fsproj b/src/fsharp/fsiAnyCpu/fsiAnyCpu.fsproj
similarity index 100%
rename from src/fsharp/fsiAnyCpu/FsiAnyCPU.fsproj
rename to src/fsharp/fsiAnyCpu/fsiAnyCpu.fsproj
diff --git a/tests/.gitignore b/tests/.gitignore
index 2de72583ada..bf970a32fde 100644
--- a/tests/.gitignore
+++ b/tests/.gitignore
@@ -1,6 +1,5 @@
FSharp_*
net40-fsharpqa-suite-*
CoreUnit_*
-TestResults
*.il
dont.run.peverify
\ No newline at end of file
diff --git a/tests/FSharp.Directory.Build.props b/tests/FSharp.Directory.Build.props
index 19257808542..bb8eac309b1 100644
--- a/tests/FSharp.Directory.Build.props
+++ b/tests/FSharp.Directory.Build.props
@@ -1,9 +1,3 @@
-
-
-
-
-
-
diff --git a/tests/fsharp/SDKTests/AllSdkTargetsTests.proj b/tests/fsharp/SDKTests/AllSdkTargetsTests.proj
index 857e3efd636..9da3a21fea1 100644
--- a/tests/fsharp/SDKTests/AllSdkTargetsTests.proj
+++ b/tests/fsharp/SDKTests/AllSdkTargetsTests.proj
@@ -1,7 +1,7 @@
- release
+ Release
diff --git a/tests/fsharp/SDKTests/tests/Test.props b/tests/fsharp/SDKTests/tests/Test.props
index fdfc314758e..b4665ec5749 100644
--- a/tests/fsharp/SDKTests/tests/Test.props
+++ b/tests/fsharp/SDKTests/tests/Test.props
@@ -6,14 +6,14 @@
<_TargetFrameworkVersionWithoutV Condition="'$(_TargetFrameworkVersionWithoutV)' == ''">4.6
.NETFramework
- release
- $(MSBuildThisFileDirectory)..\..\..\..\$(Configuration)\net40\bin
+ Release
+ $(MSBuildThisFileDirectory)..\..\..\..\artifacts\bin\FSharp.Build\$(Configuration)\net46
AnyCPU
$(MSBuildThisFileDirectory)
-
+
diff --git a/tests/fsharp/SDKTests/tests/Test.targets b/tests/fsharp/SDKTests/tests/Test.targets
index 5526c118403..6f1638051d8 100644
--- a/tests/fsharp/SDKTests/tests/Test.targets
+++ b/tests/fsharp/SDKTests/tests/Test.targets
@@ -1,6 +1,6 @@
-
+
diff --git a/tests/fsharp/Test.Directory.Build.props b/tests/fsharp/Test.Directory.Build.props
deleted file mode 100644
index 6603d10e659..00000000000
--- a/tests/fsharp/Test.Directory.Build.props
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
- $(CompilerTestPath)\Microsoft.FSharp.Targets
- $(CompilerTestPath)\Microsoft.FSharp.NetSdk.props
- $(CompilerTestPath)\Microsoft.FSharp.NetSdk.targets
- $(CompilerTestPath)\Microsoft.FSharp.Overrides.NetSdk.targets
-
-
diff --git a/tests/fsharp/single-test.fs b/tests/fsharp/single-test.fs
index 4e221bed17c..14a79c360d2 100644
--- a/tests/fsharp/single-test.fs
+++ b/tests/fsharp/single-test.fs
@@ -62,10 +62,10 @@ type ProjectConfiguration = {
let replaceTokens tag (replacement:string) (template:string) = template.Replace(tag, replacement)
-let generateProps testCompilerVersion=
+let generateProps testCompilerVersion =
let template = @"
- release
+ Release
$(TESTCOMPILERVERSION)
@@ -96,13 +96,13 @@ let generateProjectArtifacts (pc:ProjectConfiguration) targetFramework =
let condition = if addCondition then " Condition=\"Exists('" + fileName + "')\"" else ""
match compileItem with
| CompileItem.Compile ->
- "\n "
+ "\n "
| CompileItem.Reference ->
- "\n "
+ "\n "
| CompileItem.UseSource ->
- "\n "
+ "\n "
| CompileItem.LoadSource ->
- "\n "
+ "\n "
sources
|> List.map(fun src -> computeInclude src)
@@ -215,7 +215,7 @@ let singleTestBuildAndRunCore cfg copyFiles p =
let projectBody = generateProjectArtifacts pc targetFramework
emitFile projectFileName projectBody
use testOkFile = new FileGuard(Path.Combine(directory, "test.ok"))
- exec { cfg with Directory = directory } cfg.DotNet20Exe (sprintf "run -f %s" targetFramework)
+ exec { cfg with Directory = directory } cfg.DotNetExe (sprintf "run -f %s" targetFramework)
testOkFile.CheckExists()
executeFsc compilerType targetFramework
else
@@ -225,7 +225,7 @@ let singleTestBuildAndRunCore cfg copyFiles p =
let projectBody = generateProjectArtifacts pc targetFramework
emitFile projectFileName projectBody
use testOkFile = new FileGuard(Path.Combine(directory, "test.ok"))
- exec { cfg with Directory = directory } cfg.DotNet20Exe "build /t:RunFSharpScript"
+ exec { cfg with Directory = directory } cfg.DotNetExe "build /t:RunFSharpScript"
testOkFile.CheckExists()
executeFsi compilerType targetFramework
result <- true
diff --git a/tests/fsharp/test-framework.fs b/tests/fsharp/test-framework.fs
index e00fc7111e7..85bc6319f19 100644
--- a/tests/fsharp/test-framework.fs
+++ b/tests/fsharp/test-framework.fs
@@ -122,19 +122,19 @@ type TestConfig =
BUILD_CONFIG : string
FSC : string
fsc_flags : string
- BinPath : string
FSCOREDLLPATH : string
FSI : string
#if !FSHARP_SUITE_DRIVES_CORECLR_TESTS
FSIANYCPU : string
#endif
FSI_FOR_SCRIPTS : string
+ FSharpBuild : string
+ FSharpCompilerInteractiveSettings : string
fsi_flags : string
ILDASM : string
PEVERIFY : string
Directory: string
DotNetExe: string
- DotNet20Exe: string
DefaultPlatform: string}
@@ -157,11 +157,21 @@ let config configurationName envVars =
let SCRIPT_ROOT = __SOURCE_DIRECTORY__
let packagesDir = Environment.GetEnvironmentVariable("USERPROFILE") ++ ".nuget" ++ "packages"
#if NET46
- let architecture = "net40"
+ let fscArchitecture = "net46"
+ let fsiArchitecture = "net46"
+ let fsharpCoreArchitecture = "net45"
+ let fsharpBuildArchitecture = "net46"
+ let fsharpCompilerInteractiveSettingsArchitecture = "net46"
#else
- let architecture = "coreclr"
+ let fscArchitecture = "netcoreapp2.1"
+ let fsiArchitecture = "netcoreapp2.0"
+ let fsharpCoreArchitecture = "netstandard1.6"
+ let fsharpBuildArchitecture = "netstandard2.0"
+ let fsharpCompilerInteractiveSettingsArchitecture = "netstandard1.6"
#endif
- let BINPATH = SCRIPT_ROOT ++ ".." ++ ".." ++ configurationName ++ architecture ++ "bin"
+ let repoRoot = SCRIPT_ROOT ++ ".." ++ ".."
+ let artifactsPath = repoRoot ++ "artifacts"
+ let artifactsBinPath = artifactsPath ++ "bin"
let csc_flags = "/nologo"
let fsc_flags = "-r:System.Core.dll --nowarn:20 --define:COMPILED"
let fsi_flags = "-r:System.Core.dll --nowarn:20 --define:INTERACTIVE --maxerrors:1 --abortonerror"
@@ -170,20 +180,20 @@ let config configurationName envVars =
let CSC = requireFile (packagesDir ++ "Microsoft.Net.Compilers" ++ "2.7.0" ++ "tools" ++ "csc.exe")
let ILDASM = requireFile (packagesDir ++ ("runtime.win-" + architectureMoniker + ".Microsoft.NETCore.ILDAsm") ++ "2.0.3" ++ "runtimes" ++ ("win-" + architectureMoniker) ++ "native" ++ "ildasm.exe")
let coreclrdll = requireFile (packagesDir ++ ("runtime.win-" + architectureMoniker + ".Microsoft.NETCore.Runtime.CoreCLR") ++ "2.0.3" ++ "runtimes" ++ ("win-" + architectureMoniker) ++ "native" ++ "coreclr.dll")
- let PEVERIFY = requireFile (SCRIPT_ROOT ++ ".." ++ "fsharpqa" ++ "testenv" ++ "src" ++ "PEVerify" ++ "bin" ++ configurationName ++ "net46" ++ "PEVerify.exe")
- let FSI_FOR_SCRIPTS = BINPATH ++ "fsi.exe"
- let toolsDir = SCRIPT_ROOT ++ ".." ++ ".." ++ "Tools"
- let dotNetExe = toolsDir ++ "dotnetcli" ++ "dotnet.exe"
- let dotNet20Exe = toolsDir ++ "dotnet20" ++ "dotnet.exe"
+ let PEVERIFY = requireFile (artifactsBinPath ++ "PEVerify" ++ configurationName ++ "net46" ++ "PEVerify.exe")
+ let FSI_FOR_SCRIPTS = artifactsBinPath ++ "fsi" ++ configurationName ++ fsiArchitecture ++ "fsi.exe"
+ let FSharpBuild = requireFile (artifactsBinPath ++ "FSharp.Build" ++ configurationName ++ fsharpBuildArchitecture ++ "FSharp.Build.dll")
+ let FSharpCompilerInteractiveSettings = requireFile (artifactsBinPath ++ "FSharp.Compiler.Interactive.Settings" ++ configurationName ++ fsharpCompilerInteractiveSettingsArchitecture ++ "FSharp.Compiler.Interactive.Settings.dll")
+ let dotNetExe = artifactsPath ++ "toolset" ++ "dotnet" ++ "dotnet.exe"
// ildasm requires coreclr.dll to run which has already been restored to the packages directory
File.Copy(coreclrdll, Path.GetDirectoryName(ILDASM) ++ "coreclr.dll", overwrite=true)
- let FSI = requireFile (BINPATH ++ "fsi.exe")
+ let FSI = requireFile (FSI_FOR_SCRIPTS)
#if !FSHARP_SUITE_DRIVES_CORECLR_TESTS
- let FSIANYCPU = requireFile (BINPATH ++ "fsiAnyCpu.exe")
+ let FSIANYCPU = requireFile (artifactsBinPath ++ "fsiAnyCpu" ++ configurationName ++ "net46" ++ "fsiAnyCpu.exe")
#endif
- let FSC = requireFile (BINPATH ++ "fsc.exe")
- let FSCOREDLLPATH = requireFile (BINPATH ++ "FSharp.Core.dll")
+ let FSC = requireFile (artifactsBinPath ++ "fsc" ++ configurationName ++ fscArchitecture ++ "fsc.exe")
+ let FSCOREDLLPATH = requireFile (artifactsBinPath ++ "FSharp.Core" ++ configurationName ++ fsharpCoreArchitecture ++ "FSharp.Core.dll")
let defaultPlatform =
match Is64BitOperatingSystem with
@@ -193,7 +203,6 @@ let config configurationName envVars =
| false -> "win7-x86"
{ EnvironmentVariables = envVars
- BinPath = BINPATH |> Commands.pathAddBackslash
FSCOREDLLPATH = FSCOREDLLPATH
ILDASM = ILDASM
PEVERIFY = PEVERIFY
@@ -205,12 +214,13 @@ let config configurationName envVars =
FSIANYCPU = FSIANYCPU
#endif
FSI_FOR_SCRIPTS = FSI_FOR_SCRIPTS
+ FSharpBuild = FSharpBuild
+ FSharpCompilerInteractiveSettings = FSharpCompilerInteractiveSettings
csc_flags = csc_flags
fsc_flags = fsc_flags
fsi_flags = fsi_flags
Directory=""
DotNetExe = dotNetExe
- DotNet20Exe = dotNet20Exe
DefaultPlatform = defaultPlatform }
let logConfig (cfg: TestConfig) =
@@ -222,7 +232,6 @@ let logConfig (cfg: TestConfig) =
log "csc_flags =%s" cfg.csc_flags
log "FSC =%s" cfg.FSC
log "fsc_flags =%s" cfg.fsc_flags
- log "BINPATH =%s" cfg.BinPath
log "FSCOREDLLPATH =%s" cfg.FSCOREDLLPATH
log "FSI =%s" cfg.FSI
#if !FSHARP_SUITE_DRIVES_CORECLR_TESTS
@@ -452,6 +461,7 @@ let rm cfg x = Commands.rm cfg.Directory x
let rmdir cfg x = Commands.rmdir cfg.Directory x
let mkdir cfg = Commands.mkdir_p cfg.Directory
let copy_y cfg f = Commands.copy_y cfg.Directory f >> checkResult
+let copySystemValueTuple cfg = copy_y cfg (getDirectoryName(cfg.FSC) ++ "System.ValueTuple.dll") ("." ++ "System.ValueTuple.dll")
let diff normalize path1 path2 =
let result = System.Text.StringBuilder()
diff --git a/tests/fsharp/tests.fs b/tests/fsharp/tests.fs
index d18197ee20d..7f5804ea1f2 100644
--- a/tests/fsharp/tests.fs
+++ b/tests/fsharp/tests.fs
@@ -326,7 +326,7 @@ module CoreTests =
fsc cfg "%s -a -o:lib.dll" cfg.fsc_flags ["lib.fs"]
- copy_y cfg (cfg.BinPath ++ "System.ValueTuple.dll") ("." ++ "System.ValueTuple.dll")
+ copySystemValueTuple cfg
peverify cfg "lib.dll"
fsc cfg "%s -r:lib.dll" cfg.fsc_flags ["test.fsx"]
@@ -479,7 +479,7 @@ module CoreTests =
fsc cfg "%s -a -o:lib.dll -g" cfg.fsc_flags ["lib.fs"]
- copy_y cfg (cfg.BinPath ++ "System.ValueTuple.dll") ("." ++ "System.ValueTuple.dll")
+ copySystemValueTuple cfg
peverify cfg "lib.dll"
@@ -789,7 +789,7 @@ module CoreTests =
fsc cfg "%s -o:test.exe -r cslib.dll -g" cfg.fsc_flags ["test.fsx"]
- copy_y cfg (cfg.BinPath ++ "System.ValueTuple.dll") ("." ++ "System.ValueTuple.dll")
+ copySystemValueTuple cfg
peverify cfg "test.exe"
@@ -1072,7 +1072,7 @@ module CoreTests =
echo "Test 6================================================="
- fscAppend cfg stdoutPath stderrPath "--nologo -r FSharp.Compiler.Interactive.Settings" ["usesfsi.fsx"]
+ fscAppend cfg stdoutPath stderrPath "--nologo -r \"%s\"" cfg.FSharpCompilerInteractiveSettings ["usesfsi.fsx"]
echo "Test 7================================================="
@@ -1632,13 +1632,13 @@ module CoreTests =
let verify () =
let cfg = testConfig "core/verify"
- peverifyWithArgs cfg "/nologo" (cfg.BinPath ++ "FSharp.Build.dll")
+ peverifyWithArgs cfg "/nologo" (cfg.FSharpBuild)
- // peverifyWithArgs cfg "/nologo /MD" (cfg.BinPath ++ "FSharp.Compiler.dll")
+ // peverifyWithArgs cfg "/nologo /MD" (getDirectoryName(cfg.FSC) ++ "FSharp.Compiler.dll")
- peverifyWithArgs cfg "/nologo" (cfg.BinPath ++ "fsi.exe")
+ peverifyWithArgs cfg "/nologo" (cfg.FSI)
- peverifyWithArgs cfg "/nologo" (cfg.BinPath ++ "FSharp.Compiler.Interactive.Settings.dll")
+ peverifyWithArgs cfg "/nologo" (cfg.FSharpCompilerInteractiveSettings)
fsc cfg "%s -o:xmlverify.exe -g" cfg.fsc_flags ["xmlverify.fs"]
@@ -1957,7 +1957,7 @@ module TypecheckTests =
let ``sigs pos27`` () =
let cfg = testConfig "typecheck/sigs"
fsc cfg "%s --target:exe -o:pos27.exe" cfg.fsc_flags ["pos27.fs"]
- copy_y cfg (cfg.BinPath ++ "System.ValueTuple.dll") ("." ++ "System.ValueTuple.dll")
+ copySystemValueTuple cfg
peverify cfg "pos27.exe"
[]
diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/CompareIL.cmd b/tests/fsharpqa/Source/CodeGen/EmittedIL/CompareIL.cmd
index da8260013c7..1786d4bc552 100644
--- a/tests/fsharpqa/Source/CodeGen/EmittedIL/CompareIL.cmd
+++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/CompareIL.cmd
@@ -3,7 +3,7 @@ REM == %1 --> assembly
ildasm /TEXT /LINENUM /NOBAR "%~nx1" >"%~n1.il"
IF NOT ERRORLEVEL 0 exit 1
-echo ..\..\..\..\testenv\bin\ILComparer.exe "%~n1.il.bsl" "%~n1.il"
-..\..\..\..\testenv\bin\ILComparer.exe "%~n1.il.bsl" "%~n1.il"
+echo %~dp0..\..\..\testenv\bin\ILComparer.exe "%~n1.il.bsl" "%~n1.il"
+ %~dp0..\..\..\testenv\bin\ILComparer.exe "%~n1.il.bsl" "%~n1.il"
exit /b %ERRORLEVEL%
diff --git a/tests/fsharpqa/Source/run.pl b/tests/fsharpqa/Source/run.pl
index c999def6387..d9c3de8c3de 100644
--- a/tests/fsharpqa/Source/run.pl
+++ b/tests/fsharpqa/Source/run.pl
@@ -265,12 +265,12 @@
my $PEVERIFY = $ENV{PEVERIFY};
unless(defined($PEVERIFY)) {
my $scriptPath = dirname(__FILE__);
- $PEVERIFY = "$scriptPath\\..\\testenv\\src\\PEVerify\\bin\\Release\\net46\\PEVerify.exe";
+ $PEVERIFY = "$scriptPath\\..\\..\\..\\artifacts\\bin\\PEVerify\\Release\\net46\\PEVerify.exe";
if (-e $PEVERIFY) {
$ENV{PEVERIFY} = $PEVERIFY;
}
else {
- $ENV{PEVERIFY} = "$scriptPath\\..\\testenv\\src\\PEVerify\\bin\\Debug\\net46\\PEVerify.exe";
+ $ENV{PEVERIFY} = "$scriptPath\\..\\..\\..\\artifacts\\bin\\PEVerify\\Debug\\net46\\PEVerify.exe";
}
}
diff --git a/tests/service/FscTests.fs b/tests/service/FscTests.fs
index 82914dbdbae..553f5e468b0 100644
--- a/tests/service/FscTests.fs
+++ b/tests/service/FscTests.fs
@@ -48,7 +48,7 @@ type PEVerifier () =
Some ("pedump", "--verify all")
else
let peverifyPath configuration =
- Path.Combine(__SOURCE_DIRECTORY__, "..", "fsharpqa", "testenv", "src", "PEVerify", "bin", configuration, "net46", "PEVerify.exe")
+ Path.Combine(__SOURCE_DIRECTORY__, "..", "..", "artifacts", "bin", "PEVerify", configuration, "net46", "PEVerify.exe")
let peverify =
if File.Exists(peverifyPath "Debug") then peverifyPath "Debug"
else peverifyPath "Release"
diff --git a/verify-translations.cmd b/verify-translations.cmd
index 6717de0f778..2580890c6fb 100644
--- a/verify-translations.cmd
+++ b/verify-translations.cmd
@@ -1,3 +1,3 @@
@echo off
-%~dp0release\net40\bin\fsi.exe %~dp0src\scripts\VerifyAllTranslations.fsx -- %~dp0
+%~dp0artifacts\bin\fsi\Release\net46\fsi.exe %~dp0src\scripts\VerifyAllTranslations.fsx -- %~dp0
diff --git a/vsintegration/ItemTemplates/.gitignore b/vsintegration/ItemTemplates/.gitignore
new file mode 100644
index 00000000000..cd42ee34e87
--- /dev/null
+++ b/vsintegration/ItemTemplates/.gitignore
@@ -0,0 +1,2 @@
+bin/
+obj/
diff --git a/vsintegration/ProjectTemplates/.gitignore b/vsintegration/ProjectTemplates/.gitignore
new file mode 100644
index 00000000000..cd42ee34e87
--- /dev/null
+++ b/vsintegration/ProjectTemplates/.gitignore
@@ -0,0 +1,2 @@
+bin/
+obj/
diff --git a/vsintegration/Templates.Directory.Build.props b/vsintegration/Templates.Directory.Build.props
index 9be1daa15b8..c6a5cea2009 100644
--- a/vsintegration/Templates.Directory.Build.props
+++ b/vsintegration/Templates.Directory.Build.props
@@ -2,6 +2,12 @@
+
+
+
+
+
+
net46
v4.6
diff --git a/vsintegration/Templates.Directory.Build.targets b/vsintegration/Templates.Directory.Build.targets
index 84513c489fc..4d8df139274 100644
--- a/vsintegration/Templates.Directory.Build.targets
+++ b/vsintegration/Templates.Directory.Build.targets
@@ -11,4 +11,21 @@
+
+
+
+
+ $(OutputPath)$(TemplateCategory)\FSharp
+ $(MSBuildProjectDirectory)\$(TemplatesRootPath)
+
+
+
+
+
+
+
+
+
+
diff --git a/vsintegration/Vsix/Directory.Build.targets b/vsintegration/Vsix/Directory.Build.targets
index fa37bc2cd13..677cf0afc9d 100644
--- a/vsintegration/Vsix/Directory.Build.targets
+++ b/vsintegration/Vsix/Directory.Build.targets
@@ -2,6 +2,11 @@
+
+ $(ArtifactsDir)\VSSetup\$(Configuration)
+ $(ArtifactsDir)\VSSetup.obj\$(Configuration)\Microsoft.FSharp\
+
+
False
diff --git a/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj b/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj
index 54b61728a7f..95a623bfa12 100644
--- a/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj
+++ b/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj
@@ -85,7 +85,7 @@
True
TargetFramework=net45
-
+
{8B3E283D-B5FE-4055-9D80-7E3A32F3967B}
FsiAnyCPU
BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3b
@@ -97,7 +97,7 @@
True
TargetFramework=net46
-
+
{D0E98C0D-490B-4C61-9329-0862F6E87645}
Fsi
BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3b
@@ -109,7 +109,7 @@
True
TargetFramework=net46
-
+
{C94C257C-3C0A-4858-B5D8-D746498D1F08}
fsc
BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3b
diff --git a/vsintegration/src/Directory.Build.props b/vsintegration/src/Directory.Build.props
new file mode 100644
index 00000000000..1ad6fb80ecd
--- /dev/null
+++ b/vsintegration/src/Directory.Build.props
@@ -0,0 +1,9 @@
+
+
+
+
+
+ false
+
+
+
diff --git a/vsintegration/src/FSharp.ProjectSystem.PropertyPages/FSharp.PropertiesPages.vbproj b/vsintegration/src/FSharp.ProjectSystem.PropertyPages/FSharp.PropertiesPages.vbproj
index 8e8042c83a0..a04064212fd 100644
--- a/vsintegration/src/FSharp.ProjectSystem.PropertyPages/FSharp.PropertiesPages.vbproj
+++ b/vsintegration/src/FSharp.ProjectSystem.PropertyPages/FSharp.PropertiesPages.vbproj
@@ -4,8 +4,7 @@
Debug
- net40
- $(FSharpSourcesRoot)\..\$(Configuration)\$(TargetDotnetProfile)\bin
+ $(ArtifactsBinDir)\$(MSBuildProjectName)\$(Configuration)\$(TargetFramework)
AnyCPU
9.0.21022
2.0
@@ -24,6 +23,7 @@
false
41999,42016,42017,42018,42019,42020,42021,42022,42032,42036
40026;42105;42107;42353
+ win
v4.6
diff --git a/vsintegration/tests/GetTypesVSUnitTests/GetTypesVSUnitTests.fsproj b/vsintegration/tests/GetTypesVSUnitTests/GetTypesVSUnitTests.fsproj
index 1167ad2577c..68470cf046d 100644
--- a/vsintegration/tests/GetTypesVSUnitTests/GetTypesVSUnitTests.fsproj
+++ b/vsintegration/tests/GetTypesVSUnitTests/GetTypesVSUnitTests.fsproj
@@ -10,6 +10,8 @@
false
true
true
+ true
+ true
@@ -19,6 +21,7 @@
+
diff --git a/vsintegration/tests/Salsa/salsa.fs b/vsintegration/tests/Salsa/salsa.fs
index 8a86f834180..9314dbf3662 100644
--- a/vsintegration/tests/Salsa/salsa.fs
+++ b/vsintegration/tests/Salsa/salsa.fs
@@ -43,13 +43,13 @@ module internal Salsa =
{ new System.IDisposable with
member this.Dispose() = actuallyBuild <- true }
member th.Results = capturedFlags, capturedSources
- member th.Compile(compile:System.Converter, flags:string[], sources:string[]) =
+ member th.Compile(compile:System.Func, flags:string[], sources:string[]) =
capturedFlags <- flags
capturedSources <- sources
if actuallyBuild then
- compile.Invoke(0)
+ compile.Invoke()
else
- 0
+ 0
interface ITaskHost
type BuildResult = {
diff --git a/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.ParameterInfo.fs b/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.ParameterInfo.fs
index 9339aaa02a8..06b42d32efc 100644
--- a/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.ParameterInfo.fs
+++ b/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.ParameterInfo.fs
@@ -433,19 +433,15 @@ type UsingMSBuild() =
| [] -> System.String.Format((*Mark*)
| x :: xs -> f xs"""
// Note, 3 of these 8 are only available on .NET 4.6.1. On .NET 4.5 only 5 overloads are returned.
- let expected45 = [["format"; "arg0"]; //Net4.5
- ["format"; "args"]; //Net4.5
- ["provider"; "format"; "args"]; //Net4.5
- ["format"; "arg0"; "arg1"]; //Net4.5
- ["format"; "arg0"; "arg1"; "arg2"]] //Net4.5
- let expected461 = [["provider"; "format"; "arg0"]; //Net4.6.1
- ["provider"; "format"; "arg0"; "arg1"]; //Net4.6.1
- ["provider"; "format"; "arg0"; "arg1"; "arg2"]] //Net4.6.1
-
- let expected =
- if Environment.Version.CompareTo(v461) >= 0 then
- List.concat [expected45;expected461]
- else expected45
+ let expected = [["format"; "arg0"]; //Net4.5
+ ["format"; "args"]; //Net4.5
+ ["provider"; "format"; "args"]; //Net4.5
+ ["format"; "arg0"; "arg1"]; //Net4.5
+ ["format"; "arg0"; "arg1"; "arg2"]; //Net4.5
+ ["provider"; "format"; "arg0"]; //Net4.6.1
+ ["provider"; "format"; "arg0"; "arg1"]; //Net4.6.1
+ ["provider"; "format"; "arg0"; "arg1"; "arg2"]] //Net4.6.1
+
this.VerifyParameterInfoAtStartOfMarker(fileContent,"(*Mark*)", expected)
(* --- Parameter Info Systematic Tests ------------------------------------------------- *)
diff --git a/vsintegration/tests/UnitTests/Tests.Build.fs b/vsintegration/tests/UnitTests/Tests.Build.fs
index ecdf69f5cf3..b1b7228a16f 100644
--- a/vsintegration/tests/UnitTests/Tests.Build.fs
+++ b/vsintegration/tests/UnitTests/Tests.Build.fs
@@ -40,8 +40,8 @@ type MyLogger(f : string -> unit) =
type FauxHostObject() =
let mutable myFlags : string[] = null
let mutable mySources : string[] = null
- member x.Compile(compile:System.Converter, flags:string[], sources:string[]) =
- myFlags <- flags
+ member x.Compile(compile:System.Func, flags:string[], sources:string[]) =
+ myFlags <- flags
mySources <- sources
0
member x.Flags = myFlags
@@ -77,7 +77,7 @@ type Build() =
let p = tool.InternalGenerateFullPathToTool()
Assert.Fail("should not succeed")
with e ->
- e.Message.AssertMatchesPattern("ToolPath is unknown; specify the path to fsc.exe as the ToolPath property.")
+ e.Message.AssertMatchesPattern("ToolPath is unknown; specify the path to the tool.")
[]
member public this.TestCodePage() =
@@ -92,7 +92,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -107,7 +108,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -122,7 +124,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -139,7 +142,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -154,7 +158,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -168,7 +173,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -183,7 +189,8 @@ type Build() =
"--warnaserror-:52,109" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -198,7 +205,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -213,7 +221,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -228,7 +237,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -243,7 +253,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -258,7 +269,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -272,7 +284,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -287,7 +300,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -302,6 +316,7 @@ type Build() =
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
"--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine +
"--yadda" + Environment.NewLine +
"yadda" + Environment.NewLine)
cmd
@@ -318,7 +333,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -333,7 +349,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -348,7 +365,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -363,7 +381,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -379,7 +398,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -395,7 +415,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine) cmd
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine) cmd
[]
member public this.TestReferencePathWithSpaces() =
@@ -410,7 +431,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -425,7 +447,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -442,6 +465,7 @@ type Build() =
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
"--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine +
src + Environment.NewLine +
src + Environment.NewLine)
cmd
@@ -459,7 +483,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -474,7 +499,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -489,7 +515,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -503,7 +530,8 @@ type Build() =
"--utf8output" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -517,7 +545,8 @@ type Build() =
"--win32res:foo.res" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -531,7 +560,8 @@ type Build() =
"--win32manifest:foo.manifest" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -544,7 +574,8 @@ type Build() =
"--warnaserror:76" + Environment.NewLine +
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
- "--highentropyva+" + Environment.NewLine)
+ "--highentropyva+" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -558,7 +589,8 @@ type Build() =
"--fullpaths" + Environment.NewLine +
"--flaterrors" + Environment.NewLine +
"--subsystemversion:6.02" + Environment.NewLine +
- "--highentropyva-" + Environment.NewLine)
+ "--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine)
cmd
[]
@@ -627,6 +659,7 @@ type Build() =
"--flaterrors" + Environment.NewLine +
"--subsystemversion:4.0" + Environment.NewLine +
"--highentropyva-" + Environment.NewLine +
+ "--nocopyfsharpcore" + Environment.NewLine +
"--yadda:yadda" + Environment.NewLine +
"--other:internal quote" + Environment.NewLine +
"blah" + Environment.NewLine +
@@ -670,6 +703,7 @@ type Build() =
"--flaterrors"
"--subsystemversion:4.0"
"--highentropyva-"
+ "--nocopyfsharpcore"
"--yadda:yadda"
"--other:internal quote" // note stripped internal quotes
"blah" |]
diff --git a/vsintegration/tests/UnitTests/VisualFSharp.UnitTests.fsproj b/vsintegration/tests/UnitTests/VisualFSharp.UnitTests.fsproj
index 27b6d0224e3..310ebf78089 100644
--- a/vsintegration/tests/UnitTests/VisualFSharp.UnitTests.fsproj
+++ b/vsintegration/tests/UnitTests/VisualFSharp.UnitTests.fsproj
@@ -13,6 +13,8 @@
true
true
false
+ true
+ true
@@ -160,6 +162,7 @@
+
@@ -172,6 +175,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+