Skip to content

Commit

Permalink
Merge pull request #2059 from dotnet/merge_master_into_3xx
Browse files Browse the repository at this point in the history
Merge master into release/2.1.3xx
  • Loading branch information
Livar authored Mar 19, 2018
2 parents ae70af6 + 2e6c593 commit b570ca1
Show file tree
Hide file tree
Showing 147 changed files with 3,562 additions and 1,409 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,6 @@ obj/
# Visual Studio
###############################################################################
.vs/

# OS X Device Services Store
.DS_Store
3 changes: 3 additions & 0 deletions Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@
</PropertyGroup>

<PropertyGroup>
<ArtifactsDir>$(DOTNET_SDK_ARTIFACTS_DIR)</ArtifactsDir>
<ArtifactsDir Condition="'$(ArtifactsDir)' == ''">$(RepoRoot)artifacts\</ArtifactsDir>
<ArtifactsDir>$([MSBuild]::EnsureTrailingSlash($(ArtifactsDir)))</ArtifactsDir>
<DOTNET_INSTALL_DIR Condition="'$(DOTNET_INSTALL_DIR)' == ''">$(RepoRoot)artifacts\.dotnet\$(DotNetCliVersion)\</DOTNET_INSTALL_DIR>
</PropertyGroup>

Expand Down
2 changes: 1 addition & 1 deletion build.cmd
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
@echo off
powershell -NoLogo -NoProfile -ExecutionPolicy ByPass %~dp0build\build.ps1 -build %*
powershell -NoLogo -NoProfile -ExecutionPolicy ByPass %~dp0build\build.ps1 -build -restore -log %*
exit /b %ErrorLevel%
2 changes: 1 addition & 1 deletion build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symli
done
ScriptRoot="$( cd -P "$( dirname "$SOURCE" )" && pwd )"

. "$ScriptRoot/build/build.sh" --build $@
. "$ScriptRoot/build/build.sh" --build --restore --log $@
6 changes: 3 additions & 3 deletions build/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
<!-- Repo Version Information -->
<PropertyGroup>
<VersionBase>2.1.300</VersionBase>
<PreReleaseVersionLabel>preview1</PreReleaseVersionLabel>
<PreReleaseVersionLabel>preview2</PreReleaseVersionLabel>
</PropertyGroup>

<!-- Repo Toolset Features -->
Expand All @@ -19,8 +19,8 @@

<!-- Toolset Dependencies -->
<PropertyGroup>
<DotNetCliVersion>2.2.0-preview1-007997</DotNetCliVersion>
<RoslynToolsRepoToolsetVersion>1.0.0-beta-62519-01</RoslynToolsRepoToolsetVersion>
<DotNetCliVersion>2.1.300-preview2-008290</DotNetCliVersion>
<RoslynToolsRepoToolsetVersion>1.0.0-beta-62615-02</RoslynToolsRepoToolsetVersion>
<VSWhereVersion>2.2.7</VSWhereVersion>
</PropertyGroup>

Expand Down
52 changes: 47 additions & 5 deletions build/build.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,11 @@ function Print-Usage() {
Write-Host ""
Write-Host "Advanced settings:"
Write-Host " -dogfood Setup a dogfood environment using the local build"
Write-Host " This ignores any actions (such as -build or -restore) that were specified"
Write-Host " If any additional arguments are specified, they will be interpreted as a"
Write-Host " command to be run in the dogfood context. If no additional arguments are"
Write-Host " specified, then the value of the DOTNET_SDK_DOGFOOD_SHELL environment, if"
Write-Host " it is set, will be used."
Write-Host " -solution <value> Path to solution to build"
Write-Host " -ci Set when running on CI server"
Write-Host " -log Enable logging (by default on CI)"
Expand Down Expand Up @@ -68,11 +73,11 @@ function GetVersionsPropsVersion([string[]] $Name) {
}

function InstallDotNetCli {
$DotNetCliVersion = GetVersionsPropsVersion -Name "DotNetCliVersion"
$script:DotNetCliVersion = GetVersionsPropsVersion -Name "DotNetCliVersion"
$DotNetInstallVerbosity = ""

if (!$env:DOTNET_INSTALL_DIR) {
$env:DOTNET_INSTALL_DIR = Join-Path $RepoRoot "artifacts\.dotnet\$DotNetCliVersion"
$env:DOTNET_INSTALL_DIR = Join-Path $ArtifactsDir ".dotnet\$DotNetCliVersion"
}

$DotNetRoot = $env:DOTNET_INSTALL_DIR
Expand All @@ -84,7 +89,7 @@ function InstallDotNetCli {
$env:MSBuildSDKsPath = Join-Path $ArtifactsConfigurationDir "bin\Sdks"
$env:DOTNET_MSBUILD_SDK_RESOLVER_SDKS_DIR = $env:MSBuildSDKsPath
$env:NETCoreSdkBundledVersionsProps = Join-Path $DotNetRoot "sdk\$DotNetCliVersion\Microsoft.NETCoreSdk.BundledVersions.props"
$env:MicrosoftNETBuildExtensionsTargets = Join-Path $env:MSBuildSDKsPath "Microsoft.NET.Build.Extensions\msbuildExtensions\Microsoft.Common.Targets\ImportAfter\Microsoft.NET.Build.Extensions.targets"
$env:MicrosoftNETBuildExtensionsTargets = Join-Path $env:MSBuildSDKsPath "Microsoft.NET.Build.Extensions\msbuildExtensions\Microsoft\Microsoft.NET.Build.Extensions\Microsoft.NET.Build.Extensions.targets"
}

if (!(Test-Path $DotNetInstallScript)) {
Expand Down Expand Up @@ -158,7 +163,7 @@ function InstallDotNetCli {
}

function InstallNuGet {
$NugetInstallDir = Join-Path $RepoRoot "artifacts\.nuget"
$NugetInstallDir = Join-Path $ArtifactsDir ".nuget"
$NugetExe = Join-Path $NugetInstallDir "nuget.exe"

if (!(Test-Path -Path $NugetExe)) {
Expand Down Expand Up @@ -213,6 +218,7 @@ function LocateVisualStudio {
function Build {
InstallDotNetCli
InstallNuget
CreateBuildEnvScript
$RepoToolsetBuildProj = InstallRepoToolset

if ($prepareMachine) {
Expand All @@ -232,6 +238,20 @@ function Build {
$env:DOTNET_SDK_TEST_MSBUILD_PATH = Join-Path $env:VSInstallDir "MSBuild\15.0\Bin\msbuild.exe"
}

if ($dogfood)
{
if ($properties -eq $null -and $env:DOTNET_SDK_DOGFOOD_SHELL -ne $null)
{
$properties = , $env:DOTNET_SDK_DOGFOOD_SHELL
}
if ($properties -ne $null)
{
$Host.UI.RawUI.WindowTitle = "SDK Test ($RepoRoot) ($configuration)"
& $properties[0] $properties[1..($properties.Length-1)]
}
exit 0
}

if ($ci -or $log) {
Create-Directory $LogDir
$logCmd = "/bl:" + (Join-Path $LogDir "Build.binlog")
Expand All @@ -256,13 +276,35 @@ function Stop-Processes() {
Get-Process -Name "vbcscompiler" -ErrorAction SilentlyContinue | Stop-Process
}

function CreateBuildEnvScript()
{
Create-Directory $ArtifactsDir
$scriptPath = Join-Path $ArtifactsDir "sdk-build-env.bat"
$scriptContents = @"
@echo off
title SDK Build ($RepoRoot)
set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
set DOTNET_MULTILEVEL_LOOKUP=0
set PATH=$env:DOTNET_INSTALL_DIR;%PATH%
set NUGET_PACKAGES=$env:NUGET_PACKAGES
"@

Out-File -FilePath $scriptPath -InputObject $scriptContents -Encoding ASCII
}

if ($help -or (($properties -ne $null) -and ($properties.Contains("/help") -or $properties.Contains("/?")))) {
Print-Usage
exit 0
}

$RepoRoot = Join-Path $PSScriptRoot ".."
$ArtifactsDir = Join-Path $RepoRoot "artifacts"
$RepoRoot = [System.IO.Path]::GetFullPath($RepoRoot);

$ArtifactsDir = $env:DOTNET_SDK_ARTIFACTS_DIR
if (!($ArtifactsDir)) {
$ArtifactsDir = Join-Path $RepoRoot "artifacts"
}
$ArtifactsConfigurationDir = Join-Path $ArtifactsDir $configuration
$LogDir = Join-Path $ArtifactsConfigurationDir "log"
$VersionsProps = Join-Path $PSScriptRoot "Versions.props"
Expand Down
59 changes: 39 additions & 20 deletions build/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,9 @@ while [[ $# > 0 ]]; do
echo ""
echo "Advanced settings:"
echo " --dogfood Setup a dogfood environment using the local build"
echo " For this to have an effect, you will need to source the build script."
echo " If this option is specified, any actions (such as --build or --restore)"
echo " will be ignored."
echo " --solution <value> Path to solution to build"
echo " --ci Set when running on CI server"
echo " --log Enable logging (by default on CI)"
Expand Down Expand Up @@ -130,7 +133,7 @@ function InstallDotNetCli {

if [ -z "$DOTNET_INSTALL_DIR" ]
then
export DOTNET_INSTALL_DIR="$RepoRoot/artifacts/.dotnet/$DotNetCliVersion"
export DOTNET_INSTALL_DIR="$ArtifactsDir/.dotnet/$DotNetCliVersion"
fi

DotNetRoot=$DOTNET_INSTALL_DIR
Expand Down Expand Up @@ -275,26 +278,29 @@ function Build {
fi
fi

if $ci || $log
if [ $dogfood != true ]
then
CreateDirectory $LogDir
logCmd="/bl:$LogDir/Build.binlog"
else
logCmd=""
fi
if $ci || $log
then
CreateDirectory $LogDir
logCmd="/bl:$LogDir/Build.binlog"
else
logCmd=""
fi

if [ -z $solution ]
then
solution="$RepoRoot/sdk.sln"
fi
if [ -z $solution ]
then
solution="$RepoRoot/sdk.sln"
fi

dotnet msbuild $RepoToolsetBuildProj /m /nologo /clp:Summary /warnaserror /v:$verbosity $logCmd /p:Configuration=$configuration /p:SolutionPath=$solution /p:Restore=$restore /p:Build=$build /p:Rebuild=$rebuild /p:Deploy=$deploy /p:Test=$test /p:Sign=$sign /p:Pack=$pack /p:CIBuild=$ci $properties
LASTEXITCODE=$?
dotnet msbuild $RepoToolsetBuildProj /m /nologo /clp:Summary /warnaserror /v:$verbosity $logCmd /p:Configuration=$configuration /p:SolutionPath=$solution /p:Restore=$restore /p:Build=$build /p:Rebuild=$rebuild /p:Deploy=$deploy /p:Test=$test /p:Sign=$sign /p:Pack=$pack /p:CIBuild=$ci $properties
LASTEXITCODE=$?

if [ $LASTEXITCODE != 0 ]
then
echo "Failed to build $RepoToolsetBuildProj"
return $LASTEXITCODE
if [ $LASTEXITCODE != 0 ]
then
echo "Failed to build $RepoToolsetBuildProj"
return $LASTEXITCODE
fi
fi
}

Expand All @@ -313,15 +319,22 @@ done
ScriptRoot="$( cd -P "$( dirname "$SOURCE" )" && pwd )"

RepoRoot="$ScriptRoot/.."
ArtifactsDir="$RepoRoot/artifacts"
if [ -z $DOTNET_SDK_ARTIFACTS_DIR ]
then
ArtifactsDir="$RepoRoot/artifacts"
else
ArtifactsDir="$DOTNET_SDK_ARTIFACTS_DIR"
fi


ArtifactsConfigurationDir="$ArtifactsDir/$configuration"
LogDir="$ArtifactsConfigurationDir/log"
VersionsProps="$ScriptRoot/Versions.props"

# HOME may not be defined in some scenarios, but it is required by NuGet
if [ -z $HOME ]
then
export HOME="$RepoRoot/artifacts/.home/"
export HOME="$ArtifactsDir/.home/"
CreateDirectory "$HOME"
fi

Expand Down Expand Up @@ -349,4 +362,10 @@ then
StopProcesses
fi

exit $LASTEXITCODE
# The script should be sourced if using --dogfood, which means in that case we don't want to exit
if [ $dogfood = true ]
then
return $LASTEXITCODE
else
exit $LASTEXITCODE
fi
25 changes: 23 additions & 2 deletions sdk.sln
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.27004.2005
VisualStudioVersion = 15.0.27101.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{50A89C27-BA35-44B2-AC57-E54551791C64}"
ProjectSection(SolutionItems) = preProject
Expand Down Expand Up @@ -52,14 +52,14 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Common", "Common", "{09AD2F
src\Tasks\Common\ItemUtilities.cs = src\Tasks\Common\ItemUtilities.cs
src\Tasks\Common\MetadataKeys.cs = src\Tasks\Common\MetadataKeys.cs
src\Tasks\Common\MSBuildLog.cs = src\Tasks\Common\MSBuildLog.cs
src\Tasks\Common\MessageBase.cs = src\Tasks\Common\MessageBase.cs
src\Tasks\Common\NETSdkError.cs = src\Tasks\Common\NETSdkError.cs
src\Tasks\Common\NuGetUtils.cs = src\Tasks\Common\NuGetUtils.cs
src\Tasks\Common\TaskBase.cs = src\Tasks\Common\TaskBase.cs
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Resources", "Resources", "{7D6CD7B6-0237-40DD-9911-44FF22292131}"
ProjectSection(SolutionItems) = preProject
src\Tasks\Common\Resources\Strings.Designer.cs = src\Tasks\Common\Resources\Strings.Designer.cs
src\Tasks\Common\Resources\Strings.resx = src\Tasks\Common\Resources\Strings.resx
EndProjectSection
EndProject
Expand Down Expand Up @@ -108,10 +108,16 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Common", "Common", "{529365
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.NET.Build.Tests", "src\Tests\Microsoft.NET.Build.Tests\Microsoft.NET.Build.Tests.csproj", "{52CB4546-DD2D-4207-B6E1-494C9506D1C1}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.NET.Clean.Tests", "src\Tests\Microsoft.NET.Clean.Tests\Microsoft.NET.Clean.Tests.csproj", "{5CBFF0EE-71EA-49CC-8369-34A9A62C8116}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.NET.Pack.Tests", "src\Tests\Microsoft.NET.Pack.Tests\Microsoft.NET.Pack.Tests.csproj", "{8746DC05-3035-4F24-9F2C-BAAAB5B50FD3}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.NET.Perf.Tests", "src\Tests\Microsoft.NET.Perf.Tests\Microsoft.NET.Perf.Tests.csproj", "{AFB72217-54A0-4E76-870A-42718B8E0AE5}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.NET.Publish.Tests", "src\Tests\Microsoft.NET.Publish.Tests\Microsoft.NET.Publish.Tests.csproj", "{5B3E6EC9-AD8D-4F68-A9F8-C60CF11F4753}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.NET.Rebuild.Tests", "src\Tests\Microsoft.NET.Rebuild.Tests\Microsoft.NET.Rebuild.Tests.csproj", "{8283544E-9704-40C5-BEC2-2781413AA3CF}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.NET.Restore.Tests", "src\Tests\Microsoft.NET.Restore.Tests\Microsoft.NET.Restore.Tests.csproj", "{112668D7-322D-4F83-A6CE-B814C25AD3BF}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.NET.TestFramework", "src\Tests\Microsoft.NET.TestFramework\Microsoft.NET.TestFramework.csproj", "{CAF71BDC-7B7D-4A43-AB8C-E440A1E4F108}"
Expand Down Expand Up @@ -149,6 +155,10 @@ Global
{52CB4546-DD2D-4207-B6E1-494C9506D1C1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{52CB4546-DD2D-4207-B6E1-494C9506D1C1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{52CB4546-DD2D-4207-B6E1-494C9506D1C1}.Release|Any CPU.Build.0 = Release|Any CPU
{5CBFF0EE-71EA-49CC-8369-34A9A62C8116}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5CBFF0EE-71EA-49CC-8369-34A9A62C8116}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5CBFF0EE-71EA-49CC-8369-34A9A62C8116}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5CBFF0EE-71EA-49CC-8369-34A9A62C8116}.Release|Any CPU.Build.0 = Release|Any CPU
{8746DC05-3035-4F24-9F2C-BAAAB5B50FD3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8746DC05-3035-4F24-9F2C-BAAAB5B50FD3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8746DC05-3035-4F24-9F2C-BAAAB5B50FD3}.Release|Any CPU.ActiveCfg = Release|Any CPU
Expand All @@ -157,6 +167,10 @@ Global
{5B3E6EC9-AD8D-4F68-A9F8-C60CF11F4753}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5B3E6EC9-AD8D-4F68-A9F8-C60CF11F4753}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5B3E6EC9-AD8D-4F68-A9F8-C60CF11F4753}.Release|Any CPU.Build.0 = Release|Any CPU
{8283544E-9704-40C5-BEC2-2781413AA3CF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8283544E-9704-40C5-BEC2-2781413AA3CF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8283544E-9704-40C5-BEC2-2781413AA3CF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8283544E-9704-40C5-BEC2-2781413AA3CF}.Release|Any CPU.Build.0 = Release|Any CPU
{112668D7-322D-4F83-A6CE-B814C25AD3BF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{112668D7-322D-4F83-A6CE-B814C25AD3BF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{112668D7-322D-4F83-A6CE-B814C25AD3BF}.Release|Any CPU.ActiveCfg = Release|Any CPU
Expand All @@ -165,6 +179,10 @@ Global
{CAF71BDC-7B7D-4A43-AB8C-E440A1E4F108}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CAF71BDC-7B7D-4A43-AB8C-E440A1E4F108}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CAF71BDC-7B7D-4A43-AB8C-E440A1E4F108}.Release|Any CPU.Build.0 = Release|Any CPU
{AFB72217-54A0-4E76-870A-42718B8E0AE5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AFB72217-54A0-4E76-870A-42718B8E0AE5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AFB72217-54A0-4E76-870A-42718B8E0AE5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{AFB72217-54A0-4E76-870A-42718B8E0AE5}.Release|Any CPU.Build.0 = Release|Any CPU
{6F72FAA2-4E46-4382-940A-4F0290E070E2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6F72FAA2-4E46-4382-940A-4F0290E070E2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6F72FAA2-4E46-4382-940A-4F0290E070E2}.Release|Any CPU.ActiveCfg = Release|Any CPU
Expand All @@ -186,11 +204,14 @@ Global
{580D1AE7-AA8F-4912-8B76-105594E00B3B} = {22AB674F-ED91-4FBC-BFEE-8A1E82F9F05E}
{5293658E-96D2-421F-A789-D0B6BA129570} = {580D1AE7-AA8F-4912-8B76-105594E00B3B}
{52CB4546-DD2D-4207-B6E1-494C9506D1C1} = {580D1AE7-AA8F-4912-8B76-105594E00B3B}
{5CBFF0EE-71EA-49CC-8369-34A9A62C8116} = {580D1AE7-AA8F-4912-8B76-105594E00B3B}
{8746DC05-3035-4F24-9F2C-BAAAB5B50FD3} = {580D1AE7-AA8F-4912-8B76-105594E00B3B}
{5B3E6EC9-AD8D-4F68-A9F8-C60CF11F4753} = {580D1AE7-AA8F-4912-8B76-105594E00B3B}
{8283544E-9704-40C5-BEC2-2781413AA3CF} = {580D1AE7-AA8F-4912-8B76-105594E00B3B}
{112668D7-322D-4F83-A6CE-B814C25AD3BF} = {580D1AE7-AA8F-4912-8B76-105594E00B3B}
{CAF71BDC-7B7D-4A43-AB8C-E440A1E4F108} = {580D1AE7-AA8F-4912-8B76-105594E00B3B}
{7C6A88D0-DBCC-4933-A92D-A0AC133DD5FC} = {5293658E-96D2-421F-A789-D0B6BA129570}
{AFB72217-54A0-4E76-870A-42718B8E0AE5} = {580D1AE7-AA8F-4912-8B76-105594E00B3B}
{6F72FAA2-4E46-4382-940A-4F0290E070E2} = {580D1AE7-AA8F-4912-8B76-105594E00B3B}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
Expand Down
6 changes: 6 additions & 0 deletions src/Assets/Directory.Build.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<!--
Sometimes it is useful to play around with the test assets
directly where you're authoring them, and they should never
get the build customization from the rest of the repo.
-->
<Project />
6 changes: 6 additions & 0 deletions src/Assets/Directory.Build.targets
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<!--
Sometimes it is useful to play around with the test assets
directly where you're authoring them, and they should never
get the build customization from the rest of the repo.
-->
<Project />
5 changes: 5 additions & 0 deletions src/Assets/NuGet.Config
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<configuration>
<packageSources>
<add key="dotnet-core" value="https://dotnetfeed.blob.core.windows.net/dotnet-core/packages/index.json" />
</packageSources>
</configuration>
8 changes: 8 additions & 0 deletions src/Assets/TestProjects/AppWithLibraryFS/TestApp/Program.fs
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
// Learn more about F# at http://fsharp.org

open System

[<EntryPoint>]
let main argv =
TestLibrary.Say.hello "F#"
0 // return an integer exit code
16 changes: 16 additions & 0 deletions src/Assets/TestProjects/AppWithLibraryFS/TestApp/TestApp.fsproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
<Compile Include="Program.fs" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\TestLibrary\TestLibrary.fsproj" />
</ItemGroup>

</Project>
Loading

0 comments on commit b570ca1

Please sign in to comment.