diff --git a/FSharpBuild.Directory.Build.targets b/FSharpBuild.Directory.Build.targets index 1d3fefdedd2..66b5508aa56 100644 --- a/FSharpBuild.Directory.Build.targets +++ b/FSharpBuild.Directory.Build.targets @@ -69,24 +69,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + diff --git a/eng/tests/UpToDate.ps1 b/eng/tests/UpToDate.ps1 index a7e50a26d60..e29bb9d8787 100644 --- a/eng/tests/UpToDate.ps1 +++ b/eng/tests/UpToDate.ps1 @@ -23,10 +23,19 @@ try { # gather assembly timestamps $ArtifactsBinDir = Join-Path $RepoRoot "artifacts" | Join-Path -ChildPath "bin" -Resolve $FSharpAssemblyDirs = Get-ChildItem -Path $ArtifactsBinDir -Filter "FSharp.*" - $FSharpAssemblyPaths = $FSharpAssemblyDirs | ForEach-Object { Get-ChildItem -Path (Join-Path $ArtifactsBinDir $_) -Recurse -Filter "$_.dll" } | ForEach-Object { $_.FullName } + $FscAssemblyDir = Get-ChildItem -Path $ArtifactsBinDir -Filter "fsc" + $FsiAssemblyDir = Get-ChildItem -Path $ArtifactsBinDir -Filter "fsi" + $FsiAnyCpuAssemblyDir = Get-ChildItem -Path $ArtifactsBinDir -Filter "fsiAnyCpu" + $DmAssemblyDir = Get-ChildItem -Path $ArtifactsBinDir -Filter "Microsoft.DotNet.DependencyManager" + $ProjectSystemAssemblyDirs = Get-ChildItem -Path $ArtifactsBinDir -Filter "ProjectSystem*" + $FSharpDirs = @($FSharpAssemblyDirs) + @($FscAssemblyDir) + @($FsiAssemblyDir) + @($FsiAnyCpuAssemblyDir) + @($DmAssemblyDir) + @($ProjectSystemAssemblyDirs) + $FSharpDllPaths = $FSharpDirs | ForEach-Object { Get-ChildItem -Path (Join-Path $ArtifactsBinDir $_) -Recurse -Filter "*.dll" } | ForEach-Object { $_.FullName } + $FSharpExePaths = $FSharpDirs | ForEach-Object { Get-ChildItem -Path (Join-Path $ArtifactsBinDir $_) -Recurse -Filter "*.exe" } | ForEach-Object { $_.FullName } + $FSharpAssemblyPaths = @($FSharpDllPaths) + @($FSharpExePaths) $InitialAssembliesAndTimes = @{} foreach ($asm in $FSharpAssemblyPaths) { + Write-Host "Assembly : $asm" $LastWriteTime = (Get-Item $asm).LastWriteTimeUtc $InitialAssembliesAndTimes.Add($asm, $LastWriteTime) } @@ -53,6 +62,7 @@ try { $InitialTime = $InitialAssembliesAndTimes[$asm] $FinalTime = $FinalAssembliesAndTimes[$asm] if ($InitialTime -ne $FinalTime) { + Write-Host "Rebuilt assembly: $asm" $RecompiledFiles += $asm } }