Fixup/cleanup/refactorings to build infra

This commit is contained in:
latkin 2015-02-09 13:46:25 -08:00
Родитель 005d0e9ce5
Коммит 95bfc9e37e
31 изменённых файлов: 235 добавлений и 360 удалений

1
.gitignore поставляемый
Просмотреть файл

@ -11,7 +11,6 @@ src/*.userprefs
src/fsharp/FSStrings.resources
lkg
packages
packages
src/fsharp/FSharp.Build/*.resx
src/fsharp/FSharp.Build-proto/*.resx
src/fsharp/FSharp.Build-proto/*.resources

Просмотреть файл

@ -5,14 +5,17 @@ set APPVEYOR_CI=1
:: Check prerequisites
if not '%VisualStudioVersion%' == '' goto vsversionset
if exist "%ProgramFiles(x86)%\Microsoft Visual Studio 14.0\common7\ide\devenv.exe" set VisualStudioVersion=14.0
if exist "%ProgramFiles%\Microsoft Visual Studio 14.0\common7\ide\devenv.exe" set VisualStudioVersion=14.0
if not '%VisualStudioVersion%' == '' goto vsversionset
if exist "%ProgramFiles(x86)%\Microsoft Visual Studio 12.0\common7\ide\devenv.exe" set VisualStudioVersion=12.0
:vsversionset
if '%VisualStudioVersion%' == '' echo Error: Could not find a Visual Studio Installed.MSBuild.exe. Please see http://www.visualstudio.com/en-us/news/vs2015-vs.aspx. && goto :eof
if exist "%ProgramFiles%\Microsoft Visual Studio 12.0\common7\ide\devenv.exe" set VisualStudioVersion=12.0
if '%VisualStudioVersion%'=='14.0' set _msbuildexe="%ProgramFiles(x86)%\MSBuild\14.0\Bin\MSBuild.exe"
if '%VisualStudioVersion%'=='12.0' set _msbuildexe="%ProgramFiles(x86)%\MSBuild\12.0\Bin\MSBuild.exe"
if not exist %_msbuildexe% echo Error: Could not find MSBuild.exe. Please see http://www.microsoft.com/en-us/download/details.aspx?id=40760. && goto :eof
:vsversionset
if '%VisualStudioVersion%' == '' echo Error: Could not find an installation of Visual Studio && goto :eof
if exist "%ProgramFiles(x86)%\MSBuild\%VisualStudioVersion%\Bin\MSBuild.exe" set _msbuildexe="%ProgramFiles(x86)%\MSBuild\%VisualStudioVersion%\Bin\MSBuild.exe"
if exist "%ProgramFiles%\MSBuild\%VisualStudioVersion%\Bin\MSBuild.exe" set _msbuildexe="%ProgramFiles%\MSBuild\%VisualStudioVersion%\Bin\MSBuild.exe"
if not exist %_msbuildexe% echo Error: Could not find MSBuild.exe. && goto :eof
set _ngenexe="%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\ngen.exe"
if not exist %_ngenexe% echo Error: Could not find ngen.exe. && goto :eof
@ -24,9 +27,6 @@ if not exist %_ngenexe% echo Error: Could not find ngen.exe. && goto :eof
%_msbuildexe% src\fsharp-proto-build.proj
@if ERRORLEVEL 1 echo Error: compiler proto build failed && goto :eof
%_ngenexe% install proto\net40\bin\FSharp.Compiler-proto.dll
%_ngenexe% install proto\net40\bin\fsharp.core.dll
%_ngenexe% install proto\net40\bin\FSharp.Build-proto.dll
%_ngenexe% install Proto\net40\bin\fsc-proto.exe
@if ERRORLEVEL 1 echo Error: NGen of proto failed && goto :eof
@ -34,7 +34,7 @@ if not exist %_ngenexe% echo Error: Could not find ngen.exe. && goto :eof
@if ERRORLEVEL 1 echo Error: library release build failed && goto :eof
%_msbuildexe% src/fsharp-compiler-build.proj /p:Configuration=Release
@if ERRORLEVEL 1 echo Error: compile Release build failed && goto :eof
@if ERRORLEVEL 1 echo Error: compiler build failed && goto :eof
%_msbuildexe% src/fsharp-library-build.proj /p:TargetFramework=portable47 /p:Configuration=Release
@if ERRORLEVEL 1 echo Error: library portable47 build failed && goto :eof
@ -65,11 +65,12 @@ if not exist %_ngenexe% echo Error: Could not find ngen.exe. && goto :eof
%_msbuildexe% src/fsharp-library-unittests-build.proj /p:TargetFramework=portable259 /p:Configuration=Release
@if ERRORLEVEL 1 echo Error: library unittests build failed portable259 && goto :eof
%_msbuildexe% vsintegration\fsharp-vsintegration-build.proj /p:TargetFramework=net40 /p:Configuration=Release
@if ERRORLEVEL 1 echo Error: library unittests build failed vsintegration-unittests && goto :eof
@if ERRORLEVEL 1 echo Error: VS integration build failed && goto :eof
%_msbuildexe% vsintegration\fsharp-vsintegration-unittests-build.proj /p:TargetFramework=net40 /p:Configuration=Release
@if ERRORLEVEL 1 echo Error: library unittests build failed vsintegration-unittests && goto :eof
@if ERRORLEVEL 1 echo Error: VS integration unit tests build failed && goto :eof
@echo on
call src\update.cmd release -ngen

Просмотреть файл

@ -71,4 +71,14 @@
<OutputPath Condition="'$(OutputPath)' == ''">bin\$(Configuration)</OutputPath>
<WarningLevel Condition=" '$(WarningLevel)' == '' ">3</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<DefineConstants Condition="'$(VisualStudioVersion)'=='12.0' AND '$(ProjectLanguage)' == 'VisualBasic'">$(DefineConstants),VS_VERSION_DEV12=True</DefineConstants>
<DefineConstants Condition="'$(VisualStudioVersion)'=='12.0' AND '$(ProjectLanguage)' != 'VisualBasic'">$(DefineConstants);VS_VERSION_DEV12</DefineConstants>
</PropertyGroup>
<PropertyGroup>
<MSBuildVersionSuffix>core</MSBuildVersionSuffix>
<MSBuildVersionSuffix Condition="'$(VisualStudioVersion)' == '12.0'">V12.0</MSBuildVersionSuffix>
</PropertyGroup>
</Project>

Просмотреть файл

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft Open Technologies, Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- F# compiler has a depedency on MsBuild. Different VS and F# Deployments carry various MsBuild versions -->
<!-- This section sets the MsBuild references the compiler requires depending on the value of the environment variable -->
<!-- VisualStudioVersion, 12.0 for VS2013, 1 for VS2015 -->
<!-- By Default uses VS2013 values -->
<Choose>
<When Condition="'$(VisualStudioVersion)' == '14.0'">
<PropertyGroup>
<MsBuild_FrameworkReference>Microsoft.Build.Framework, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</MsBuild_FrameworkReference>
<MsBuild_EngineReference>Microsoft.Build.Engine, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</MsBuild_EngineReference>
<MsBuild_Reference>Microsoft.Build, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</MsBuild_Reference>
<MsBuild_UtilitiesReference>Microsoft.Build.Utilities.core, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</MsBuild_UtilitiesReference>
<MsBuild_TaskReference>Microsoft.Build.Tasks.core, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</MsBuild_TaskReference>
<MsBuild_ConversionReference>Microsoft.Build.Conversion.core, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</MsBuild_ConversionReference>
</PropertyGroup>
</When>
<Otherwise>
<PropertyGroup>
<MsBuild_FrameworkReference>Microsoft.Build.Framework, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</MsBuild_FrameworkReference>
<MsBuild_EngineReference>Microsoft.Build.Engine, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</MsBuild_EngineReference>
<MsBuild_Reference>Microsoft.Build, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</MsBuild_Reference>
<MsBuild_UtilitiesReference>Microsoft.Build.Utilities.V12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</MsBuild_UtilitiesReference>
<MsBuild_TaskReference>Microsoft.Build.Tasks.V12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</MsBuild_TaskReference>
<MsBuild_ConversionReference>Microsoft.Build.Conversion.V12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</MsBuild_ConversionReference>
</PropertyGroup>
</Otherwise>
</Choose>
</Project>

Просмотреть файл

@ -64,8 +64,6 @@
</Otherwise>
</Choose>
<Import Project="FSharpSource.msbuildreferences.targets" />
<!-- For the proto build, portable and Silverlight framework implementations, we don't use strong names. -->
<!-- For Silverlight, there is no way to disable strong name verification, so using the Microsoft name is not possible -->
<PropertyGroup Condition="'$(StrongNames)' != 'true'">
@ -97,6 +95,13 @@
<PropertyGroup>
<DefineConstants>$(DefineConstants);OPEN_BUILD</DefineConstants>
</PropertyGroup>
<PropertyGroup>
<NUnitVersion>2.6.3</NUnitVersion>
<NUnitFullVersion>2.6.3.13283</NUnitFullVersion>
<NUnitLibDir>$(FSharpSourcesRoot)\..\packages\NUnit.$(NUnitVersion)\lib\</NUnitLibDir>
<NunitToolsLibDir>$(FSharpSourcesRoot)\..\packages\NUnit.Runners.$(NUnitVersion)\tools\lib\</NunitToolsLibDir>
</PropertyGroup>
<!-- v2.0-specific flags -->
@ -724,7 +729,7 @@
Outputs="@(CustomCopyLocal->'$(OutDir)%(TargetFilename)')"
Condition="'$(targetCLIDir)'!='Silverlight/4.0/'"
>
<Exec Command="$(FSharpSourcesRoot)\fsharp\FSharp.Build\subst.exe &quot;%(CustomCopyLocal.FullPath)&quot; {FinalDir} &quot;$([System.IO.Path]::GetFullPath('$(OutputPath)'))\&quot; {LkgVersion} $(LkgVersion) {BuildSuffix} &quot;$(FsBuildSuffix)&quot; {FSharpTargetsDir} &quot;%24(MSBuildThisFileDirectory)&quot; &gt; $(OutDir)%(CustomCopyLocal.TargetFilename) "/>
<Exec Command="$(FSharpSourcesRoot)\fsharp\FSharp.Build\subst.exe &quot;%(CustomCopyLocal.FullPath)&quot; {VisualStudioVersion} $(VisualStudioVersion) {FinalDir} &quot;$([System.IO.Path]::GetFullPath('$(OutputPath)'))\&quot; {LkgVersion} $(LkgVersion) {BuildSuffix} &quot;$(FsBuildSuffix)&quot; {FSharpTargetsDir} &quot;%24(MSBuildThisFileDirectory)&quot; &gt; $(OutDir)%(CustomCopyLocal.TargetFilename) "/>
<!-- Make sure it will get cleaned -->
<CreateItem Include="$(OutDir)%(CustomCopyLocal.TargetFilename)">
<Output TaskParameter="Include" ItemName="FileWrites"/>
@ -745,11 +750,4 @@
<Target Name="BeforeBuild" BeforeTargets="Build">
<Exec Command=".\.nuget\NuGet.exe restore packages.config -PackagesDirectory packages" WorkingDirectory="$(FSharpSourcesRoot)\.."/>
</Target>
<Target Name="BeforeResolveReferences">
<CreateProperty Value="$(ProjectDir)..\..\..\packages\NUnit.2.6.3\lib\;$(ProjectDir)..\..\..\packages\NUnit.Runners.2.6.3\tools\lib\;$(AssemblySearchPaths)">
<Output TaskParameter="Value"
PropertyName="AssemblySearchPaths" />
</CreateProperty>
</Target>
</Project>

Просмотреть файл

@ -44,11 +44,11 @@
<ItemGroup>
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="$(MsBuild_FrameworkReference)" />
<Reference Include="$(MsBuild_EngineReference)" />
<Reference Include="$(MsBuild_Reference)" />
<Reference Include="$(MsBuild_UtilitiesReference)" />
<Reference Include="$(MsBuild_TaskReference)" />
<Reference Include="Microsoft.Build.Framework, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Engine, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Utilities.$(MSBuildVersionSuffix)" />
<Reference Include="Microsoft.Build.Tasks.$(MSBuildVersionSuffix)" />
<ProjectReference Include="$(FSharpSourcesRoot)\fsharp\FSharp.Core\FSharp.Core.fsproj">
<Project>{DED3BBD7-53F4-428A-8C9F-27968E768605}</Project>
<Name>FSharp.Core</Name>

Просмотреть файл

@ -43,12 +43,10 @@
<WarningLevel>3</WarningLevel>
</PropertyGroup>
<ItemGroup>
<!-- need full name and SpecificVersion = true in order to convince msbuild to allow this reference when targeting portable47 -->
<Reference Include="nunit.framework, Version=2.6.3.13283, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77" Condition="'$(TargetFramework)' != 'sl5' AND '$(TargetFramework)' != 'sl3-wp'" >
<SpecificVersion>true</SpecificVersion>
<HintPath>$(FSharpSourcesRoot)\..\packages\NUnit.2.6.3\lib\nunit.framework.dll</HintPath>
<Reference Include="nunit.framework" >
<Private>True</Private>
<HintPath>$(NUnitLibDir)\nunit.framework.dll</HintPath>
</Reference>
<Reference Include="NUnitFramework" Condition="'$(TargetFramework)' == 'sl5' OR '$(TargetFramework)' == 'sl3-wp'" />
</ItemGroup>
<ItemGroup Condition="!$(TargetFramework.Contains('portable'))">
<Reference Include="mscorlib" />

Просмотреть файл

@ -528,11 +528,11 @@
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Runtime.Remoting" />
<Reference Include="ISymWrapper, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="$(MsBuild_FrameworkReference)" />
<Reference Include="$(MsBuild_EngineReference)" />
<Reference Include="$(MsBuild_Reference)" />
<Reference Include="$(MsBuild_UtilitiesReference)" />
<Reference Include="$(MsBuild_TaskReference)" />
<Reference Include="Microsoft.Build.Framework, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Engine, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Utilities.$(MSBuildVersionSuffix)" />
<Reference Include="Microsoft.Build.Tasks.$(MSBuildVersionSuffix)" />
<ProjectReference Include="$(FSharpSourcesRoot)\fsharp\FSharp.Core\FSharp.Core.fsproj">
<Project>{DED3BBD7-53F4-428A-8C9F-27968E768605}</Project>
<Name>FSharp.Core</Name>

Просмотреть файл

@ -25,10 +25,6 @@
<DefineConstants Condition=" '$(TargetFramework)' == 'sl5' ">$(DefineConstants);SILVERLIGHT</DefineConstants>
<DefineConstants>$(DefineConstants);EXTENSIONTYPING;$(TargetFramework.ToLower())</DefineConstants>
</PropertyGroup>
<PropertyGroup>
<DefineConstants Condition=" '$(VisualStudioVersion)' == '12.0' ">$(DefineConstants);FX_4_3_1_0</DefineConstants>
<DefineConstants Condition=" '$(VisualStudioVersion)' == '14.0' ">$(DefineConstants);FX_4_4_0_0</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
@ -48,9 +44,10 @@
</PropertyGroup>
<ItemGroup>
<!-- need full name and SpecificVersion = true in order to convince msbuild to allow this reference when targeting portable47 -->
<Reference Include="nunit.framework, Version=2.6.3.13283, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77" Condition="'$(TargetFramework)' != 'sl5' AND '$(TargetFramework)' != 'sl3-wp'" >
<Reference Include="nunit.framework, Version=$(NUnitFullVersion), Culture=neutral, PublicKeyToken=96d09a1eb7f44a77" Condition="'$(TargetFramework)' != 'sl5' AND '$(TargetFramework)' != 'sl3-wp'" >
<SpecificVersion>true</SpecificVersion>
<HintPath>$(FSharpSourcesRoot)\..\packages\NUnit.2.6.3\lib\nunit.framework.dll</HintPath>
<Private>True</Private>
<HintPath>$(NUnitLibDir)\nunit.framework.dll</HintPath>
</Reference>
<Reference Include="NUnitFramework" Condition="'$(TargetFramework)' == 'sl5' OR '$(TargetFramework)' == 'sl3-wp'" />
<ProjectReference Include="$(FSharpSourcesRoot)\fsharp\FSharp.Core\FSharp.Core.fsproj">
@ -109,10 +106,4 @@
<Compile Include="SurfaceArea.$(TargetFramework).fs" />
</ItemGroup>
<Import Project="$(FSharpSourcesRoot)\FSharpSource.targets" />
<Target Name="BeforeResolveReferences" Condition="'$(UseNugetPackages)'=='true'">
<CreateProperty Value="$(ProjectDir)..\..\..\packages\NUnit.2.6.3\lib\;$(ProjectDir)..\..\..\packages\NUnit.Runners.2.6.3\tools\lib\;$(AssemblySearchPaths)">
<Output TaskParameter="Value"
PropertyName="AssemblySearchPath" />
</CreateProperty>
</Target>
</Project>

Просмотреть файл

@ -473,11 +473,11 @@
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Runtime.Remoting" />
<Reference Include="ISymWrapper, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="$(MsBuild_FrameworkReference)" />
<Reference Include="$(MsBuild_EngineReference)" />
<Reference Include="$(MsBuild_Reference)" />
<Reference Include="$(MsBuild_UtilitiesReference)" />
<Reference Include="$(MsBuild_TaskReference)" />
<Reference Include="Microsoft.Build.Framework, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Engine, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Utilities.$(MSBuildVersionSuffix)" />
<Reference Include="Microsoft.Build.Tasks.$(MSBuildVersionSuffix)" />
<ProjectReference Include="$(FSharpSourcesRoot)\fsharp\FSharp.Core\FSharp.Core.fsproj" >
<Project>{DED3BBD7-53F4-428A-8C9F-27968E768605}</Project>
<Name>FSharp.Core</Name>

Просмотреть файл

@ -96,8 +96,8 @@ module internal MSBuildResolver =
let SupportedNetFrameworkVersions = set [ Net20; Net30; Net35; Net40; Net45; Net451; (*SL only*) "v5.0" ]
#if FX_ATLEAST_45
let GetPathToDotNetFramework(v) =
#if FX_ATLEAST_45
let v =
match v with
| Net11 -> Some TargetDotNetFrameworkVersion.Version11
@ -115,13 +115,13 @@ module internal MSBuildResolver =
| x -> [x]
| _ -> []
#else
let GetPathToDotNetFramework(_) =
// FX_ATLEAST_45 is not defined for step when we build compiler with proto compiler.
ignore v
[]
#endif
#if FX_ATLEAST_45
let DeriveTargetFrameworkDirectoriesFor40Plus(version) =
#if FX_ATLEAST_45
// starting with .Net 4.0, the runtime dirs (WindowsFramework) are never used by MSBuild RAR
let v =
match version with
@ -136,8 +136,8 @@ module internal MSBuildResolver =
| x -> [x]
| None -> []
#else
let DeriveTargetFrameworkDirectoriesFor40Plus(_) =
// FX_ATLEAST_45 is not defined for step when we build compiler with proto compiler.
ignore version
[]
#endif

Просмотреть файл

@ -1706,20 +1706,6 @@ let ParseAssemblyCodeType s m =
IL.EcmaILGlobals.typ_Object
#endif
#if BUILDING_PROTO
let last (source : seq<_>) =
use e = source.GetEnumerator()
if e.MoveNext() then
let mutable res = e.Current
while (e.MoveNext()) do res <- e.Current
res
else
raise (new System.InvalidOperationException())
#else
let last = Seq.last
#endif
//------------------------------------------------------------------------
// AST constructors
//------------------------------------------------------------------------
@ -1755,7 +1741,7 @@ let mkSynDotBrackSeqSliceGet m mDot arr (argslist:list<SynIndexerArg>) =
| SynIndexerArg.One x -> yield x
| _ -> () ]
if notsliced.Length = argslist.Length then
SynExpr.DotIndexedGet(arr,[SynIndexerArg.One (SynExpr.Tuple(notsliced,[],unionRanges (Seq.head notsliced).Range (last notsliced).Range))],mDot,m)
SynExpr.DotIndexedGet(arr,[SynIndexerArg.One (SynExpr.Tuple(notsliced,[],unionRanges (List.head notsliced).Range (List.last notsliced).Range))],mDot,m)
else
SynExpr.DotIndexedGet(arr,argslist,mDot,m)

Просмотреть файл

@ -18,14 +18,17 @@ exit /b 1
:: Check prerequisites
if not '%VisualStudioVersion%' == '' goto vsversionset
if exist "%ProgramFiles(x86)%\Microsoft Visual Studio 14.0\common7\ide\devenv.exe" set VisualStudioVersion=14.0
if exist "%ProgramFiles%\Microsoft Visual Studio 14.0\common7\ide\devenv.exe" set VisualStudioVersion=14.0
if not '%VisualStudioVersion%' == '' goto vsversionset
if exist "%ProgramFiles(x86)%\Microsoft Visual Studio 12.0\common7\ide\devenv.exe" set VisualStudioVersion=12.0
:vsversionset
if '%VisualStudioVersion%' == '' echo Error: Could not find a Visual Studio Installed.MSBuild.exe. Please see http://www.visualstudio.com/en-us/news/vs2015-vs.aspx. && goto :eof
if exist "%ProgramFiles%\Microsoft Visual Studio 12.0\common7\ide\devenv.exe" set VisualStudioVersion=12.0
if '%VisualStudioVersion%'=='14.0' set _msbuildexe="%ProgramFiles(x86)%\MSBuild\14.0\Bin\MSBuild.exe"
if '%VisualStudioVersion%'=='12.0' set _msbuildexe="%ProgramFiles(x86)%\MSBuild\12.0\Bin\MSBuild.exe"
if not exist %_msbuildexe% echo Error: Could not find MSBuild.exe. Please see http://www.microsoft.com/en-us/download/details.aspx?id=40760. && goto :eof
:vsversionset
if '%VisualStudioVersion%' == '' echo Error: Could not find an installation of Visual Studio && goto :eof
if exist "%ProgramFiles(x86)%\MSBuild\%VisualStudioVersion%\Bin\MSBuild.exe" set _msbuildexe="%ProgramFiles(x86)%\MSBuild\%VisualStudioVersion%\Bin\MSBuild.exe"
if exist "%ProgramFiles%\MSBuild\%VisualStudioVersion%\Bin\MSBuild.exe" set _msbuildexe="%ProgramFiles%\MSBuild\%VisualStudioVersion%\Bin\MSBuild.exe"
if not exist %_msbuildexe% echo Error: Could not find MSBuild.exe. && goto :eof
if not exist "%~dp0\fsharpqa\testenv\bin" mkdir "%~dp0\fsharpqa\testenv\bin" || goto :error
%_msbuildexe% %~dp0\fsharpqa\testenv\src\ILComparer\ILComparer.fsproj /p:Configuration=%1 /t:Build || goto :error

Просмотреть файл

@ -10,8 +10,8 @@ goto :USAGE
:flavor_ok
set nunitpath=%~dp0%..\packages\NUnit.Runners.2.6.3\tools\
if not exist "%nunitpath%" (
set NUNITPATH=%~dp0%..\packages\NUnit.Runners.2.6.3\tools\
if not exist "%NUNITPATH%" (
pushd %~dp0..
.\.nuget\nuget.exe restore packages.config -PackagesDirectory packages
popd
@ -191,8 +191,8 @@ set XMLFILE=CoreUnit_%coreunitsuffix%_Xml.xml
set OUTPUTFILE=CoreUnit_%coreunitsuffix%_Output.log
set ERRORFILE=CoreUnit_%coreunitsuffix%_Error.log
echo %nunitpath%\nunit-console.exe /nologo /result=%XMLFILE% /output=%OUTPUTFILE% /err=%ERRORFILE% /work=%RESULTSDIR% %FSCBINPATH%\..\..\%coreunitsuffix%\bin\FSharp.Core.Unittests.dll
%nunitpath%\nunit-console.exe /nologo /result=%XMLFILE% /output=%OUTPUTFILE% /err=%ERRORFILE% /work=%RESULTSDIR% %FSCBINPATH%\..\..\%coreunitsuffix%\bin\FSharp.Core.Unittests.dll
echo "%NUNITPATH%\nunit-console.exe" /nologo /result=%XMLFILE% /output=%OUTPUTFILE% /err=%ERRORFILE% /work=%RESULTSDIR% %FSCBINPATH%\..\..\%coreunitsuffix%\bin\FSharp.Core.Unittests.dll
"%NUNITPATH%\nunit-console.exe" /nologo /result=%XMLFILE% /output=%OUTPUTFILE% /err=%ERRORFILE% /work=%RESULTSDIR% %FSCBINPATH%\..\..\%coreunitsuffix%\bin\FSharp.Core.Unittests.dll
goto :EOF
@ -202,8 +202,8 @@ set XMLFILE=ComplierUnit_%compilerunitsuffix%_Xml.xml
set OUTPUTFILE=ComplierUnit_%compilerunitsuffix%_Output.log
set ERRORFILE=ComplierUnit_%compilerunitsuffix%_Error.log
echo %nunitpath%\nunit-console.exe /nologo /result=%XMLFILE% /output=%OUTPUTFILE% /err=%ERRORFILE% /work=%RESULTSDIR% %FSCBINPATH%\..\..\%compilerunitsuffix%\bin\FSharp.Compiler.Unittests.dll
%nunitpath%\nunit-console.exe /nologo /result=%XMLFILE% /output=%OUTPUTFILE% /err=%ERRORFILE% /work=%RESULTSDIR% %FSCBINPATH%\..\..\%compilerunitsuffix%\bin\FSharp.Compiler.Unittests.dll
echo "%NUNITPATH%\nunit-console.exe" /nologo /result=%XMLFILE% /output=%OUTPUTFILE% /err=%ERRORFILE% /work=%RESULTSDIR% %FSCBINPATH%\..\..\%compilerunitsuffix%\bin\FSharp.Compiler.Unittests.dll
"%NUNITPATH%\nunit-console.exe" /nologo /result=%XMLFILE% /output=%OUTPUTFILE% /err=%ERRORFILE% /work=%RESULTSDIR% %FSCBINPATH%\..\..\%compilerunitsuffix%\bin\FSharp.Compiler.Unittests.dll
goto :EOF
@ -213,7 +213,7 @@ set XMLFILE=IDEUnit_Xml.xml
set OUTPUTFILE=IDEUnit_Output.log
set ERRORFILE=IDEUnit_Error.log
echo %nunitpath%\nunit-console-x86.exe /nologo /result=%XMLFILE% /output=%OUTPUTFILE% /err=%ERRORFILE% /work=%RESULTSDIR% %FSCBINPATH%\Unittests.dll
%nunitpath%\nunit-console-x86.exe /nologo /result=%XMLFILE% /output=%OUTPUTFILE% /err=%ERRORFILE% /work=%RESULTSDIR% %FSCBINPATH%\Unittests.dll
echo "%NUNITPATH%\nunit-console-x86.exe" /nologo /result=%XMLFILE% /output=%OUTPUTFILE% /err=%ERRORFILE% /work=%RESULTSDIR% %FSCBINPATH%\Unittests.dll
"%NUNITPATH%\nunit-console-x86.exe" /nologo /result=%XMLFILE% /output=%OUTPUTFILE% /err=%ERRORFILE% /work=%RESULTSDIR% %FSCBINPATH%\Unittests.dll
goto :EOF

Просмотреть файл

@ -7,7 +7,6 @@
<SIGN_WITH_MSFT_KEY>true</SIGN_WITH_MSFT_KEY>
</PropertyGroup>
<Import Project="$(FSharpSourcesRoot)\FSharpSource.settings.targets" />
<Import Project="$(ProjectDirectory)..\fsharp.vsreferences.targets" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@ -18,10 +17,6 @@
<NoWarn>$(NoWarn);45;47;52;58;75</NoWarn>
<DefineConstants>FX_ATLEAST_45;$(DefineConstants)</DefineConstants>
</PropertyGroup>
<PropertyGroup>
<DefineConstants Condition=" '$(VisualStudioVersion)' == '12.0' ">$(DefineConstants);VS_VERSION_DEV12</DefineConstants>
<DefineConstants Condition=" '$(VisualStudioVersion)' == '14.0' ">$(DefineConstants);VS_VERSION_DEV14</DefineConstants>
</PropertyGroup>
<ItemGroup>
<Compile Include="$(FSharpSourcesRoot)\utils\CompilerLocationUtils.fs" />
<Compile Include="..\unittests\TestLib.Utils.fs">
@ -41,11 +36,11 @@
<Reference Include="System.Xml" />
<Reference Include="System.Windows.Forms" />
<Reference Include="$(VS_Shell_Reference)" />
<Reference Include="$(MsBuild_FrameworkReference)" />
<Reference Include="$(MsBuild_EngineReference)" />
<Reference Include="$(MsBuild_Reference)" />
<Reference Include="$(MsBuild_UtilitiesReference)" />
<Reference Include="Microsoft.VisualStudio.Shell.$(VisualStudioVersion)" />
<Reference Include="Microsoft.Build.Framework, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Engine, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Utilities.$(MSBuildVersionSuffix)" />
<Reference Include="EnvDTE.dll" />
<Reference Include="EnvDTE80.dll" />
<Reference Include="VSLangProj" />
@ -66,8 +61,14 @@
<Reference Include="Microsoft.VisualStudio.VSHelp.dll" />
<Reference Include="Microsoft.VisualStudio.Text.Data" />
<Reference Include="Microsoft.VisualStudio.CoreUtility" />
<Reference Include="nunit.framework"><Private>True</Private></Reference>
<Reference Include="nunit.util"><Private>True</Private></Reference>
<Reference Include="nunit.framework">
<Private>True</Private>
<HintPath>$(NUnitLibDir)\nunit.framework.dll</HintPath>
</Reference>
<Reference Include="nunit.util">
<Private>True</Private>
<HintPath>$(NunitToolsLibDir)\nunit.util.dll</HintPath>
</Reference>
<ProjectReference Include="$(FSharpSourcesRoot)\fsharp\FSharp.Core\FSharp.Core.fsproj">
<Project>{DED3BBD7-53F4-428A-8C9F-27968E768605}</Project>
<Name>FSharp.Core</Name>

Просмотреть файл

@ -1635,10 +1635,10 @@ module internal VsActual =
open Microsoft.VisualStudio.Text
let vsInstallDir =
#if VS_VERSION_DEV14
let key = @"SOFTWARE\Microsoft\VisualStudio\14.0"
#else
#if VS_VERSION_DEV12
let key = @"SOFTWARE\Microsoft\VisualStudio\12.0"
#else
let key = @"SOFTWARE\Microsoft\VisualStudio\14.0"
#endif
let hklm = Microsoft.Win32.RegistryKey.OpenBaseKey(Microsoft.Win32.RegistryHive.LocalMachine, Microsoft.Win32.RegistryView.Registry32)
let rkey = hklm.OpenSubKey(key)

Просмотреть файл

@ -1,27 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft Open Technologies, Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- F# VS Addins have a depedency on VS. Different VS and F# Deployments are dependent on various MsBuild versions -->
<!-- This section sets the VS references the addins require depending on the value of the environment variable -->
<!-- VisualStudioVersion, 12.0 for VS2013, 1 for VS2015 -->
<!-- By Default uses VS2013 values -->
<Choose>
<When Condition="'$(VisualStudioVersion)' == '14.0'">
<PropertyGroup>
<VS_Shell_Reference>Microsoft.VisualStudio.Shell.14.0, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL</VS_Shell_Reference>
<VS_Shell_UI_InternalReference>Microsoft.VisualStudio.Shell.UI.Internal, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL</VS_Shell_UI_InternalReference>
<VS_UtilitiesReference>Microsoft.VisualStudio.Utilities, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL</VS_UtilitiesReference>
<VS_PackageLanguageServiceReference>Microsoft.VisualStudio.Package.LanguageService.14.0, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL</VS_PackageLanguageServiceReference>
</PropertyGroup>
</When>
<Otherwise>
<PropertyGroup>
<VS_Shell_Reference>Microsoft.VisualStudio.Shell.12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL</VS_Shell_Reference>
<VS_Shell_UI_InternalReference>Microsoft.VisualStudio.Shell.UI.Internal, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL</VS_Shell_UI_InternalReference>
<VS_UtilitiesReference>Microsoft.VisualStudio.Utilities, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL</VS_UtilitiesReference>
<VS_PackageLanguageServiceReference>Microsoft.VisualStudio.Package.LanguageService.12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL</VS_PackageLanguageServiceReference>
</PropertyGroup>
</Otherwise>
</Choose>
</Project>

Просмотреть файл

@ -568,11 +568,11 @@ type ScriptTests() as this =
[<Test>]
[<Category("fsx closure")>]
// Nunit still registers itself in AssemblyFoldersEx so try to locate it. And we know that nunit exists on a machine running tests
// 'Microsoft.VisualStudio.QualityTools.Common.dll' is resolved via AssemblyFoldersEx over recent VS releases
member public this.``Fsx.NoError.HashR.ResolveFromAssemblyFoldersEx``() =
let fileContent = """
#light
#r "nunit.framework.dll"
#r "Microsoft.VisualStudio.QualityTools.Common.dll"
"""
this.VerifyFSXNoErrorList(fileContent)
@ -904,10 +904,10 @@ type ScriptTests() as this =
[<Test>]
[<Category("fsx closure")>]
member public this.``Fsx.HashR_QuickInfo.ResolveFromAssemblyFoldersEx``() =
let fileContent = """#r "nunit.framework.dll" """ // 'nunit.framework.dll' is located via AssemblyFoldersEx
let marker = "#r \"nunit.fra"
this.AssertQuickInfoContainsAtEndOfMarkerInFsxFile fileContent marker "nunit.framework, Version="
this.AssertQuickInfoContainsAtEndOfMarkerInFsxFile fileContent marker "nunit.framework.dll"
let fileContent = """#r "Microsoft.VisualStudio.QualityTools.Common.dll" """ // 'Microsoft.VisualStudio.QualityTools.Common.dll' is located via AssemblyFoldersEx
let marker = "#r \"Microsoft.Vis"
this.AssertQuickInfoContainsAtEndOfMarkerInFsxFile fileContent marker "Microsoft.VisualStudio.QualityTools.Common, Version="
this.AssertQuickInfoContainsAtEndOfMarkerInFsxFile fileContent marker "Microsoft.VisualStudio.QualityTools.Common.dll"
[<Test>]
[<Category("fsx closure")>]
@ -1298,45 +1298,24 @@ type ScriptTests() as this =
use _guard = this.UsingNewVS()
let solution = this.CreateSolution()
let project = CreateProject(solution,"testproject")
#if FX_ATLEAST_45
let fsVersion =
#if VS_VERSION_DEV12
PlaceIntoProjectFileBeforeImport
(project, @"
<ItemGroup>
<!-- Subtle: You need this reference to compile but not to get language service -->
<Reference Include=""FSharp.Compiler.Interactive.Settings, Version=3.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"">
<SpecificVersion>True</SpecificVersion>
</Reference>
<Reference Include=""FSharp.Compiler, Version=3.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"">
<SpecificVersion>True</SpecificVersion>
</Reference>
</ItemGroup>")
"4.3.1.0"
#else
"4.4.0.0"
#endif
PlaceIntoProjectFileBeforeImport
(project, @"
(project, sprintf @"
<ItemGroup>
<!-- Subtle: You need this reference to compile but not to get language service -->
<Reference Include=""FSharp.Compiler.Interactive.Settings, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"">
<Reference Include=""FSharp.Compiler.Interactive.Settings, Version=%s, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"">
<SpecificVersion>True</SpecificVersion>
</Reference>
<Reference Include=""FSharp.Compiler, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"">
<Reference Include=""FSharp.Compiler, Version=%s, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"">
<SpecificVersion>True</SpecificVersion>
</Reference>
</ItemGroup>")
#endif
#else
PlaceIntoProjectFileBeforeImport
(project, @"
<ItemGroup>
<!-- Subtle: You need this reference to compile but not to get language service -->
<Reference Include=""FSharp.Compiler.Interactive.Settings, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"">
<SpecificVersion>True</SpecificVersion>
</Reference>
<Reference Include=""FSharp.Compiler, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"">
<SpecificVersion>True</SpecificVersion>
</Reference>
</ItemGroup>")
#endif
</ItemGroup>" fsVersion fsVersion)
let fsx = AddFileFromTextEx(project,"Script.fsx","Script.fsx",BuildAction.Compile,
["let x = fsi.CommandLineArgs"])
let build = time1 Build project "Time to build project"

Просмотреть файл

@ -22,18 +22,20 @@ type References() =
inherit TheTests()
//TODO: look for a way to remove the helper functions
static let Net35RefAssemPathOnThisMachine() =
static let Net35RefAssemPath () =
let key = @"SOFTWARE\Microsoft\.NETFramework\AssemblyFolders\Microsoft .NET Framework 3.5 Reference Assemblies"
let hklm = Registry.LocalMachine
let rkey = hklm.OpenSubKey(key)
rkey.GetValue("") :?> string
static let Net20AssemExPathOnThisMachine() =
let path = rkey.GetValue("") :?> string
if String.IsNullOrEmpty(path) then None
else Some(path)
static let Net20AssemExPath () =
let key = @"SOFTWARE\Microsoft\.NETFramework\v2.0.50727\AssemblyFoldersEx\Public Assemblies (Common Files)"
let hklm = Registry.LocalMachine
let rkey = hklm.OpenSubKey(key)
rkey.GetValue("") :?> string
static let IsNet20AssemExPathOnThisMachine() =
if Net20AssemExPathOnThisMachine() <> "" then false else true
let path = rkey.GetValue("") :?> string
if String.IsNullOrEmpty(path) then None
else Some(path)
/////////////////////////////////
// project helpers
@ -174,9 +176,10 @@ type References() =
[<Test>]
member public this.``ReferenceResolution.Bug4423.LoadedFsProj.WorksWithFilenames``() =
if IsNet20AssemExPathOnThisMachine() then
let edte = Path.Combine(Net20AssemExPathOnThisMachine(), "EnvDTE80.dll")
let ssmw = Path.Combine(Net35RefAssemPathOnThisMachine(), "System.ServiceModel.Web.dll")
match (Net20AssemExPath(), Net35RefAssemPath()) with
| Some(net20), Some(net35) ->
let edte = Path.Combine(net20, "EnvDTE80.dll")
let ssmw = Path.Combine(net35, "System.ServiceModel.Web.dll")
this.MakeProjectAndDo(["doesNotMatter.fs"], [edte; ssmw], "", "v3.5", (fun project ->
let expectedRefInfo = [ edte, true
ssmw, true ]
@ -189,8 +192,7 @@ type References() =
]
AssertEqual expectedRefInfo actualRefInfo
))
else
()
|_ -> ()
[<Test>]
member public this.``ReferenceResolution.Bug4423.LoadedFsProj.WeirdCases``() =
@ -230,65 +232,79 @@ type References() =
[<Test>]
member public this.``ReferenceResolution.Bug4423.FxAssembly.NetTab.AddDuplicate1``() =
try
this.ReferenceResolutionHelper(AddReferenceDialogTab.DotNetTab,
Path.Combine(Net35RefAssemPathOnThisMachine(), "System.ServiceModel.Web.dll"),
@"whatever, expectation does not matter, will throw before then",
"v3.5",
["System.ServiceModel.Web"]) // assembly name
Assert.Fail("adding a duplicate reference should have failed")
with e ->
TheTests.HelpfulAssertMatches ' ' "A reference to '.*' \\(with assembly name '.*'\\) could not be added. A reference to the component '.*' with the same assembly name already exists in the project." e.Message
match Net35RefAssemPath() with
| Some(net35) ->
try
this.ReferenceResolutionHelper(AddReferenceDialogTab.DotNetTab,
Path.Combine(net35, "System.ServiceModel.Web.dll"),
@"whatever, expectation does not matter, will throw before then",
"v3.5",
["System.ServiceModel.Web"]) // assembly name
Assert.Fail("adding a duplicate reference should have failed")
with e ->
TheTests.HelpfulAssertMatches ' ' "A reference to '.*' \\(with assembly name '.*'\\) could not be added. A reference to the component '.*' with the same assembly name already exists in the project." e.Message
| _ -> ()
// see 5491 [<Test>]
member public this.``ReferenceResolution.Bug4423.FxAssembly.NetTab.AddDuplicate2``() =
try
this.ReferenceResolutionHelper(AddReferenceDialogTab.DotNetTab,
Path.Combine(Net35RefAssemPathOnThisMachine(), "System.ServiceModel.Web.dll"),
@"whatever, expectation does not matter, will throw before then",
"v3.5",
["System.ServiceModel.Web.dll"]) // filename
Assert.Fail("adding a duplicate reference should have failed")
with e ->
TheTests.HelpfulAssertMatches ' ' "A reference to '.*' could not be added. A reference to the component '.*' already exists in the project." e.Message
match Net35RefAssemPath() with
| Some(net35) ->
try
this.ReferenceResolutionHelper(AddReferenceDialogTab.DotNetTab,
Path.Combine(net35, "System.ServiceModel.Web.dll"),
@"whatever, expectation does not matter, will throw before then",
"v3.5",
["System.ServiceModel.Web.dll"]) // filename
Assert.Fail("adding a duplicate reference should have failed")
with e ->
TheTests.HelpfulAssertMatches ' ' "A reference to '.*' could not be added. A reference to the component '.*' already exists in the project." e.Message
| _ -> ()
[<Test>]
member public this.``ReferenceResolution.Bug4423.FxAssembly.NetTab``() =
this.ReferenceResolutionHelper(AddReferenceDialogTab.DotNetTab,
Path.Combine(Net35RefAssemPathOnThisMachine(), "System.ServiceModel.Web.dll"),
// TODO the intent here is to match whatever C# does; below is a snapshot from July 7, 2009
@"<Reference Include=""System.ServiceModel.Web"" />")
match Net35RefAssemPath() with
| Some(net35) ->
this.ReferenceResolutionHelper(AddReferenceDialogTab.DotNetTab,
Path.Combine(net35, "System.ServiceModel.Web.dll"),
// TODO the intent here is to match whatever C# does; below is a snapshot from July 7, 2009
@"<Reference Include=""System.ServiceModel.Web"" />")
| _ -> ()
[<Test>]
member public this.``ReferenceResolution.Bug4423.FxAssembly.BrowseTab.SameVersion``() =
let sysCoreRefAssemPath = Path.Combine(Net35RefAssemPathOnThisMachine(), "System.ServiceModel.Web.dll")
let dirName = Path.GetTempPath()
let copy = Path.Combine(dirName, "System.ServiceModel.Web.dll")
try
File.Copy(sysCoreRefAssemPath, copy, true)
this.ReferenceResolutionHelper(AddReferenceDialogTab.BrowseTab,
copy,
// TODO the intent here is to match whatever C# does; below is a snapshot from July 7, 2009
@"<Reference Include=""System.ServiceModel.Web"" />")
finally
File.Delete(copy)
match Net35RefAssemPath() with
| Some(net35) ->
let sysCoreRefAssemPath = Path.Combine(net35, "System.ServiceModel.Web.dll")
let dirName = Path.GetTempPath()
let copy = Path.Combine(dirName, "System.ServiceModel.Web.dll")
try
File.Copy(sysCoreRefAssemPath, copy, true)
this.ReferenceResolutionHelper(AddReferenceDialogTab.BrowseTab,
copy,
// TODO the intent here is to match whatever C# does; below is a snapshot from July 7, 2009
@"<Reference Include=""System.ServiceModel.Web"" />")
finally
File.Delete(copy)
| _ -> ()
[<Test>]
member public this.``ReferenceResolution.Bug4423.FxAssembly.BrowseTab.DifferentVersion``() =
let sysCoreRefAssemPath = Path.Combine(Net35RefAssemPathOnThisMachine(), "System.ServiceModel.Web.dll")
let dirName = Path.GetTempPath()
let copy = Path.Combine(dirName, "System.ServiceModel.Web.dll")
try
File.Copy(sysCoreRefAssemPath, copy, true)
this.ReferenceResolutionHelper(AddReferenceDialogTab.BrowseTab,
copy,
// TODO the intent here is to match whatever C# does; below is a snapshot from July 7, 2009
@"<Reference Include=""System.ServiceModel.Web"" />",
"v4.0", // TargetFramework is 4.0, but browsing to 3.5 reference assembly
[])
finally
File.Delete(copy)
match Net35RefAssemPath() with
| Some(net35) ->
let sysCoreRefAssemPath = Path.Combine(net35, "System.ServiceModel.Web.dll")
let dirName = Path.GetTempPath()
let copy = Path.Combine(dirName, "System.ServiceModel.Web.dll")
try
File.Copy(sysCoreRefAssemPath, copy, true)
this.ReferenceResolutionHelper(AddReferenceDialogTab.BrowseTab,
copy,
// TODO the intent here is to match whatever C# does; below is a snapshot from July 7, 2009
@"<Reference Include=""System.ServiceModel.Web"" />",
"v4.0", // TargetFramework is 4.0, but browsing to 3.5 reference assembly
[])
finally
File.Delete(copy)
| _ -> ()
[<Test>]
member public this.``ReferenceResolution.NonFxAssembly.SeveralCandidates``() =
@ -332,8 +348,9 @@ type References() =
[<Test>]
member public this.``ReferenceResolution.Bug4423.NonFxAssembly.NetTab``() =
if IsNet20AssemExPathOnThisMachine() then
this.ReferenceResolutionHelper(AddReferenceDialogTab.DotNetTab, Path.Combine(Net20AssemExPathOnThisMachine(), "EnvDTE80.dll"),
match Net20AssemExPath() with
| Some(net20) ->
this.ReferenceResolutionHelper(AddReferenceDialogTab.DotNetTab, Path.Combine(net20, "EnvDTE80.dll"),
(* TODO, no NoPIA support yet, so *)
@"<Reference Include=""EnvDTE80, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"" />")
(* instead of below
@ -342,13 +359,13 @@ type References() =
+ @"\s*<EmbedInteropTypes>True</EmbedInteropTypes>"
+ @"\s*</Reference>")
*)
else
()
| _ -> ()
[<Test>]
member public this.``ReferenceResolution.Bug4423.NonFxAssembly.BrowseTab.SameVersion``() =
if IsNet20AssemExPathOnThisMachine() then
let envDte80RefAssemPath = Path.Combine(Net20AssemExPathOnThisMachine(), "EnvDTE80.dll")
match Net20AssemExPath() with
| Some(net20) ->
let envDte80RefAssemPath = Path.Combine(net20, "EnvDTE80.dll")
let dirName = Path.GetTempPath()
let copy = Path.Combine(dirName, "EnvDTE80.dll")
try
@ -372,12 +389,12 @@ type References() =
*)
finally
File.Delete(copy)
else
()
| _ -> ()
[<Test>]
member public this.``ReferenceResolution.Bug650591.AutomationReference.Add.FullPath``() =
if IsNet20AssemExPathOnThisMachine() then
match Net20AssemExPath() with
| Some(net20) ->
let invoker =
{
new Microsoft.Internal.VisualStudio.Shell.Interop.IVsInvokerPrivate with
@ -414,7 +431,7 @@ type References() =
}
let _ = Microsoft.VisualStudio.Shell.ServiceProvider.CreateFromSetSite(mockProvider)
let envDte80RefAssemPath = Path.Combine(Net20AssemExPathOnThisMachine(), "EnvDTE80.dll")
let envDte80RefAssemPath = Path.Combine(net20, "EnvDTE80.dll")
let dirName = Path.GetTempPath()
let copy = Path.Combine(dirName, "EnvDTE80.dll")
try
@ -439,8 +456,7 @@ type References() =
)
finally
File.Delete(copy)
else
()
| _ -> ()
/// Create a dummy project named 'Test', build it, and then call k with the full path to the resulting exe
member public this.CreateDummyTestProjectBuildItAndDo(k : string -> unit) =

Просмотреть файл

@ -20,11 +20,11 @@
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Build.Framework" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="2.0.0.0-14.0.0.0" newVersion="14.0.0.0"/>
<bindingRedirect oldVersion="2.0.0.0-{VisualStudioVersion}.0.0" newVersion="{VisualStudioVersion}.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Build.Utilities" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="2.0.0.0-14.0.0.0" newVersion="14.0.0.0"/>
<bindingRedirect oldVersion="2.0.0.0-{VisualStudioVersion}.0.0" newVersion="{VisualStudioVersion}.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="FSharp.Core" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>

Просмотреть файл

@ -1,35 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft Open Technologies, Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<configuration>
<appSettings>
<add key="fsharp-compiler-location" value="{FinalDir}" />
</appSettings>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="EnvDTE" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="7.0.3300.0" newVersion="8.0.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.VisualStudio.Package.LanguageService.10.0" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="2.0.0.0-11.0.0.0" newVersion="10.0.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.VisualStudio.Shell.10.0" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="2.0.0.0-10.0.0.0" newVersion="11.0.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Build.Framework" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="2.0.0.0-12.0.0.0" newVersion="12.0.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Build.Utilities" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="2.0.0.0-12.0.0.0" newVersion="12.0.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="FSharp.Core" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="2.0.0.0-4.4.0.0" newVersion="4.4.0.9055"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

Просмотреть файл

@ -7,7 +7,6 @@
<SIGN_WITH_MSFT_KEY>true</SIGN_WITH_MSFT_KEY>
</PropertyGroup>
<Import Project="$(FSharpSourcesRoot)\FSharpSource.settings.targets" />
<Import Project="$(ProjectDirectory)..\fsharp.vsreferences.targets" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<SchemaVersion>2.0</SchemaVersion>
@ -19,10 +18,6 @@
<NoWarn>58;75</NoWarn>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<PropertyGroup>
<DefineConstants Condition=" '$(VisualStudioVersion)' == '12.0' ">$(DefineConstants);VS_VERSION_DEV12</DefineConstants>
<DefineConstants Condition=" '$(VisualStudioVersion)' == '14.0' ">$(DefineConstants);VS_VERSION_DEV14</DefineConstants>
</PropertyGroup>
<ItemGroup>
<Compile Include="$(FSharpSourcesRoot)\fsharp\InternalCollections.fsi">
<Link>Internal.Utilities.Collections.fsi</Link>
@ -67,10 +62,7 @@
<Compile Include="Tests.ProjectSystem.References.fs" />
<Compile Include="Tests.ProjectSystem.RoundTrip.fs" />
<Compile Include="Tests.ProjectSystem.UpToDate.fs" />
<CustomCopyLocal Include="Unittests.dll.config" Condition="'$(VisualStudioVersion)' == '14.0'">
<TargetFilename>Unittests.dll.config</TargetFilename>
</CustomCopyLocal>
<CustomCopyLocal Include="Unittests.dll.v12.config" Condition="'$(VisualStudioVersion)' == '12.0'">
<CustomCopyLocal Include="Unittests.dll.config">
<TargetFilename>Unittests.dll.config</TargetFilename>
</CustomCopyLocal>
</ItemGroup>
@ -88,16 +80,16 @@
<Reference Include="System.Xaml" />
<Reference Include="WindowsBase" />
<Reference Include="UIAutomationTypes" />
<Reference Include="$(MsBuild_FrameworkReference)" />
<Reference Include="$(MsBuild_EngineReference)" />
<Reference Include="$(MsBuild_Reference)" />
<Reference Include="$(MsBuild_UtilitiesReference)" />
<Reference Include="Microsoft.Build.Framework, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Engine, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Utilities.$(MSBuildVersionSuffix)" />
<Reference Include="EnvDTE.dll" />
<Reference Include="EnvDTE80.dll" />
<Reference Include="VSLangProj" />
<Reference Include="VSLangProj80" />
<Reference Include="Microsoft.VisualStudio.OLE.Interop.dll" />
<Reference Include="$(VS_Shell_Reference)" />
<Reference Include="Microsoft.VisualStudio.Shell.$(VisualStudioVersion)" />
<Reference Include="Microsoft.VisualStudio.Threading" />
<Reference Include="Microsoft.VisualStudio.Shell.Interop.8.0.dll" />
<Reference Include="Microsoft.VisualStudio.Shell.Interop.9.0.dll" />
@ -112,8 +104,14 @@
<Reference Include="Microsoft.VisualStudio.Designer.Interfaces" />
<Reference Include="Microsoft.VisualStudio.CommonIDE" />
<Reference Include="Microsoft.VisualStudio.VSHelp.dll" />
<Reference Include="nunit.util.dll"><Private>True</Private></Reference>
<Reference Include="nunit.framework.dll"><Private>True</Private></Reference>
<Reference Include="nunit.util">
<Private>True</Private>
<HintPath>$(NunitToolsLibDir)\nunit.util.dll</HintPath>
</Reference>
<Reference Include="nunit.framework">
<Private>True</Private>
<HintPath>$(NUnitLibDir)\nunit.framework.dll</HintPath>
</Reference>
<ProjectReference Include="$(FSharpSourcesRoot)\fsharp\Fsc\Fsc.fsproj">
<Project>{ffde9e47-9675-4498-b540-69b2583dd600}</Project>
<Name>Fsc</Name>

Просмотреть файл

@ -7,7 +7,6 @@
<SIGN_WITH_MSFT_KEY>true</SIGN_WITH_MSFT_KEY>
</PropertyGroup>
<Import Project="$(FSharpSourcesRoot)\FSharpSource.settings.targets" />
<Import Project="$(ProjectDirectory)..\..\..\fsharp.vsreferences.targets" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>

Просмотреть файл

@ -37,10 +37,9 @@
<DelaySign>true</DelaySign>
</PropertyGroup>
<Import Project="$(FSharpSourcesRoot)\FSharpSource.settings.targets" />
<Import Project="$(ProjectDirectory)..\..\..\..\fsharp.vsreferences.targets" />
<ItemGroup>
<Reference Include="$(MsBuild_FrameworkReference)" />
<Reference Include="$(MsBuild_EngineReference)" />
<Reference Include="Microsoft.Build.Framework, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Engine, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="microsoft.msxml" />
<Reference Include="System.Drawing" />
<Reference Include="System" />
@ -53,7 +52,7 @@
<Reference Include="VSLangProj" />
<Reference Include="VSLangProj80" />
<Reference Include="Microsoft.VisualStudio.OLE.Interop.dll" />
<Reference Include="$(VS_Shell_Reference)" />
<Reference Include="Microsoft.VisualStudio.Shell.$(VisualStudioVersion)" />
<Reference Include="Microsoft.VisualStudio.Shell.Interop.8.0.dll" />
<Reference Include="Microsoft.VisualStudio.Shell.Interop.9.0.dll" />
<Reference Include="Microsoft.VisualStudio.Shell.Interop.10.0.dll" />

Просмотреть файл

@ -21,7 +21,6 @@
<SIGN_WITH_MSFT_KEY>true</SIGN_WITH_MSFT_KEY>
</PropertyGroup>
<Import Project="$(FSharpSourcesRoot)\FSharpSource.settings.targets" />
<Import Project="$(ProjectDirectory)..\..\..\fsharp.vsreferences.targets" />
<ItemGroup>
<EmbeddedResource Include="VSPackage.resx" />
<EmbeddedResource Include="FSLangSvcStrings.resx" />
@ -58,14 +57,14 @@
<Reference Include="System.Configuration" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="$(MsBuild_FrameworkReference)" />
<Reference Include="$(MsBuild_EngineReference)" />
<Reference Include="Microsoft.Build.Framework, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Engine, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="EnvDTE.dll" />
<Reference Include="EnvDTE80.dll" />
<Reference Include="VSLangProj" />
<Reference Include="VSLangProj80" />
<Reference Include="Microsoft.VisualStudio.OLE.Interop.dll" />
<Reference Include="$(VS_Shell_Reference)" />
<Reference Include="Microsoft.VisualStudio.Shell.$(VisualStudioVersion)" />
<Reference Include="Microsoft.VisualStudio.Threading" />
<Reference Include="Microsoft.VisualStudio.Shell.Interop.8.0.dll" />
<Reference Include="Microsoft.VisualStudio.Shell.Interop.9.0.dll" />
@ -73,7 +72,7 @@
<Reference Include="Microsoft.VisualStudio.Shell.Interop.11.0.dll" />
<Reference Include="Microsoft.VisualStudio.Shell.Interop.dll" />
<Reference Include="Microsoft.VisualStudio.Shell.Design" />
<Reference Include="$(VS_PackageLanguageServiceReference)" />
<Reference Include="Microsoft.VisualStudio.Package.LanguageService.$(VisualStudioVersion)" />
<Reference Include="Microsoft.VisualStudio.Shell.Immutable.11.0" />
<Reference Include="Microsoft.VisualStudio.ProjectAggregator" />
<Reference Include="Microsoft.VisualStudio.TextManager.Interop.dll" />

Просмотреть файл

@ -21,10 +21,10 @@ namespace Microsoft.VisualStudio.FSharp.ProjectSystem
{
public static class LoggingConstants
{
#if VS_VERSION_DEV14
public const string DefaultVSRegistryRoot = @"Software\Microsoft\VisualStudio\14.0";
#else
#if VS_VERSION_DEV12
public const string DefaultVSRegistryRoot = @"Software\Microsoft\VisualStudio\12.0";
#else
public const string DefaultVSRegistryRoot = @"Software\Microsoft\VisualStudio\14.0";
#endif
public const string BuildVerbosityRegistrySubKey = @"General";
public const string BuildVerbosityRegistryValue = "MSBuildLoggerVerbosity";

Просмотреть файл

@ -1658,10 +1658,10 @@ namespace Microsoft.VisualStudio.FSharp.ProjectSystem
{
#if FX_ATLEAST_45
#if VS_VERSION_DEV14
private static string RegistryRoot = @"SOFTWARE\Microsoft\VisualStudio\14.0\";
#else
#if VS_VERSION_DEV12
private static string RegistryRoot = @"SOFTWARE\Microsoft\VisualStudio\12.0\";
#else
private static string RegistryRoot = @"SOFTWARE\Microsoft\VisualStudio\14.0\";
#endif
private static bool? isMultiThreadedBuildEnabled = null;
internal static bool IsMultiThreadedBuildEnabled()

Просмотреть файл

@ -29,8 +29,6 @@
<TargetFrameworkProfile></TargetFrameworkProfile>
</PropertyGroup>
<Import Project="$(FSharpSourcesRoot)\FSharpSource.settings.targets" />
<Import Project="$(FSharpSourcesRoot)\FSharpSource.msbuildreferences.targets" />
<Import Project="$(ProjectDirectory)..\..\..\..\..\fsharp.vsreferences.targets" />
<PropertyGroup>
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>$(FSharpSourcesRoot)\fsharp\msft.pubkey</AssemblyOriginatorKeyFile>
@ -38,17 +36,12 @@
<StrongNames>true</StrongNames>
<DelaySign>true</DelaySign>
</PropertyGroup>
<PropertyGroup>
<DefineConstants Condition=" '$(VisualStudioVersion)' == '12.0' ">$(DefineConstants);VS_VERSION_DEV12</DefineConstants>
<DefineConstants Condition=" '$(VisualStudioVersion)' == '14.0' ">$(DefineConstants);VS_VERSION_DEV14</DefineConstants>
</PropertyGroup>
<ItemGroup>
<Reference Include="$(MsBuild_FrameworkReference)" />
<Reference Include="$(MsBuild_EngineReference)" />
<Reference Include="$(MsBuild_Reference)" />
<Reference Include="$(MsBuild_UtilitiesReference)" />
<Reference Include="$(MsBuild_TaskReference)" />
<Reference Include="$(MsBuild_ConversionReference)" />
<Reference Include="Microsoft.Build, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
<Reference Include="Microsoft.Build.Engine, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
<Reference Include="Microsoft.Build.Framework, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
<Reference Include="Microsoft.Build.Utilities.$(MSBuildVersionSuffix)" />
<Reference Include="Microsoft.Build.Conversion.$(MSBuildVersionSuffix)" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml" />
@ -67,7 +60,7 @@
<Reference Include="VSLangProj80" />
<Reference Include="microsoft.visualstudio.vcprojectengine" />
<Reference Include="Microsoft.VisualStudio.OLE.Interop.dll" />
<Reference Include="$(VS_Shell_Reference)" />
<Reference Include="Microsoft.VisualStudio.Shell.$(VisualStudioVersion)" />
<Reference Include="Microsoft.VisualStudio.Shell.Immutable.10.0.dll" />
<Reference Include="Microsoft.VisualStudio.Shell.Immutable.11.0.dll" />
<Reference Include="Microsoft.VisualStudio.Shell.Interop.8.0.dll" />

Просмотреть файл

@ -26,7 +26,6 @@
<RCResourceFile>ProjectResources.rc</RCResourceFile>
</PropertyGroup>
<Import Project="$(FSharpSourcesRoot)\FSharpSource.settings.targets" />
<Import Project="$(ProjectDirectory)..\..\..\..\fsharp.vsreferences.targets" />
<ItemGroup>
<VSCTCompile Include="MenusAndCommands.vsct" />
<EmbeddedResource Include="VSPackage.resx">
@ -66,13 +65,13 @@
<Reference Include="Microsoft.VisualStudio.TextManager.Interop.8.0.dll" />
<Reference Include="Microsoft.VisualStudio.Designer.Interfaces" />
<Reference Include="Microsoft.VisualStudio.VSHelp.dll" />
<Reference Include="$(MsBuild_FrameworkReference)" />
<Reference Include="$(MsBuild_EngineReference)" />
<Reference Include="$(MsBuild_Reference)" />
<Reference Include="$(MsBuild_UtilitiesReference)" />
<Reference Include="$(VS_Shell_Reference)" />
<Reference Include="$(VS_Shell_UI_InternalReference)" />
<Reference Include="$(VS_UtilitiesReference)" />
<Reference Include="Microsoft.Build.Framework, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Engine, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="Microsoft.Build.Utilities.$(MSBuildVersionSuffix)" />
<Reference Include="Microsoft.VisualStudio.Shell.$(VisualStudioVersion)" />
<Reference Include="Microsoft.VisualStudio.Shell.UI.Internal, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
<Reference Include="Microsoft.VisualStudio.Utilities, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Design" />

Просмотреть файл

@ -47,7 +47,6 @@
<DelaySign>true</DelaySign>
</PropertyGroup>
<Import Project="$(FSharpSourcesRoot)\FSharpSource.settings.targets" />
<Import Project="$(ProjectDirectory)..\..\..\..\..\fsharp.vsreferences.targets" />
<ItemGroup>
<Reference Include="envdte.dll" />
<Reference Include="envdte80.dll" />
@ -60,7 +59,7 @@
<Reference Include="Microsoft.VisualStudio.Shell.Interop.9.0.dll" />
<Reference Include="Microsoft.VisualStudio.Shell.Interop.10.0.dll" />
<Reference Include="Microsoft.VisualStudio.Shell.Interop.11.0.dll" />
<Reference Include="$(VS_Shell_Reference)" />
<Reference Include="Microsoft.VisualStudio.Shell.$(VisualStudioVersion)" />
<Reference Include="Microsoft.VisualStudio.TextManager.Interop.dll" />
<Reference Include="Microsoft.VisualStudio.VSHelp.dll" />
<Reference Include="Microsoft.VisualStudio.WCFReference.Interop.dll" />

Просмотреть файл

@ -8,7 +8,6 @@
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
</PropertyGroup>
<Import Project="$(FSharpSourcesRoot)\FSharpSource.settings.targets" />
<Import Project="$(ProjectDirectory)..\..\..\fsharp.vsreferences.targets" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@ -40,13 +39,14 @@
</ItemGroup>
<ItemGroup>
<Reference Include="Microsoft.VisualStudio.OLE.Interop.dll"/>
<Reference Include="$(VS_PackageLanguageServiceReference)" />
<Reference Include="Microsoft.VisualStudio.Package.LanguageService.$(VisualStudioVersion)" />
<Reference Include="EnvDTE.dll" />
<Reference Include="EnvDTE80.dll" />
<Reference Include="VSLangProj" />
<Reference Include="VSLangProj80" />
<Reference Include="Microsoft.VisualStudio.OLE.Interop.dll" />
<Reference Include="$(VS_Shell_Reference)" />
<Reference Include="Microsoft.VisualStudio.Shell.$(VisualStudioVersion)" />
<Reference Include="Microsoft.VisualStudio.Utilities, Version=$(VisualStudioVersion).0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" Condition="'$(VisualStudioVersion)' != '12.0'" />
<Reference Include="Microsoft.VisualStudio.Threading" />
<Reference Include="Microsoft.VisualStudio.Shell.Interop.8.0.dll" />
<Reference Include="Microsoft.VisualStudio.Shell.Interop.9.0.dll" />
@ -79,7 +79,6 @@
<Reference Include="System.Drawing"/>
<Reference Include="System.Windows.Forms"/>
<Reference Include="System.Xml"/>
<Reference Include="$(VS_UtilitiesReference)" Condition= "'$(VS_UtilitiesReference)' != ''" />
<ProjectReference Include="$(FSharpSourcesRoot)\fsharp\FSharp.Core\FSharp.Core.fsproj">
<Project>{DED3BBD7-53F4-428A-8C9F-27968E768605}</Project>
<Name>FSharp.Core</Name>