|
55 | 55 | <PaketOriginalReferencesFilePath Condition=" !Exists('$(PaketOriginalReferencesFilePath)')">$(MSBuildProjectDirectory)\$(MSBuildProjectName).paket.references</PaketOriginalReferencesFilePath>
|
56 | 56 | <!-- paket.references -->
|
57 | 57 | <PaketOriginalReferencesFilePath Condition=" !Exists('$(PaketOriginalReferencesFilePath)')">$(MSBuildProjectDirectory)\paket.references</PaketOriginalReferencesFilePath>
|
58 |
| - <PaketReferencesFilePath>$(MSBuildProjectDirectory)\obj\$(MSBuildProjectFile).$(TargetFramework).references</PaketReferencesFilePath> |
| 58 | + <PaketResolvedFilePath>$(MSBuildProjectDirectory)\obj\$(MSBuildProjectFile).$(TargetFramework).paket.resolved</PaketResolvedFilePath> |
59 | 59 | <PaketRestoreRequired>true</PaketRestoreRequired>
|
60 | 60 | <PaketRestoreRequiredReason>references-file-or-cache-not-found</PaketRestoreRequiredReason>
|
61 | 61 | </PropertyGroup>
|
|
68 | 68 | <PaketRestoreRequired Condition=" '$(PaketRestoreReferencesFileHash)' == '$(PaketRestoreCachedHash)' ">false</PaketRestoreRequired>
|
69 | 69 | </PropertyGroup>
|
70 | 70 |
|
| 71 | + <PropertyGroup Condition="!Exists('$(PaketOriginalReferencesFilePath)') AND !Exists('$(PaketReferencesCachedFilePath)') "> |
| 72 | + <!-- If both don't exist there is nothing to do. --> |
| 73 | + <PaketRestoreRequired>false</PaketRestoreRequired> |
| 74 | + </PropertyGroup> |
| 75 | + |
71 | 76 | <!-- Step 2 b detect relevant changes in project file (new targetframework) -->
|
72 |
| - <PropertyGroup Condition=" !Exists('$(PaketReferencesFilePath)') AND '$(TargetFramework)' != '' "> |
| 77 | + <PropertyGroup Condition=" !Exists('$(PaketResolvedFilePath)') AND '$(TargetFramework)' != '' "> |
73 | 78 | <PaketRestoreRequired>true</PaketRestoreRequired>
|
74 |
| - <PaketRestoreRequiredReason>target-framework</PaketRestoreRequiredReason> |
| 79 | + <PaketRestoreRequiredReason>target-framework '$(TargetFramework)'</PaketRestoreRequiredReason> |
75 | 80 | </PropertyGroup>
|
76 | 81 |
|
77 | 82 | <!-- Step 3 Restore project specific stuff if required -->
|
78 | 83 | <Warning Condition=" '$(PaketRestoreRequired)' == 'true' " Text="Detected a change ('$(PaketRestoreRequiredReason)') in the project file '$(MSBuildProjectFullPath)', calling paket restore" />
|
79 | 84 | <Exec Command='$(PaketCommand) restore --project "$(MSBuildProjectFullPath)"' Condition=" '$(PaketRestoreRequired)' == 'true' " ContinueOnError="false" />
|
80 | 85 |
|
81 | 86 | <!-- This shouldn't actually happen, but just to be sure. -->
|
82 |
| - <Error Condition=" !Exists('$(PaketReferencesFilePath)') AND '$(TargetFramework)' != '' " Text="A paket file for the framework '$(TargetFramework)' is missing. Please delete 'paket-files/paket.restore.cached' and call 'paket restore'." /> |
| 87 | + <Error Condition=" !Exists('$(PaketResolvedFilePath)') AND '$(TargetFramework)' != '' " Text="A paket file for the framework '$(TargetFramework)' is missing. Please delete 'paket-files/paket.restore.cached' and call 'paket restore'." /> |
83 | 88 |
|
84 | 89 | <!-- Step 4 forward all msbuild properties (PackageReference, DotNetCliToolReference) to msbuild -->
|
85 |
| - <ReadLinesFromFile Condition="Exists('$(PaketReferencesFilePath)')" File="$(PaketReferencesFilePath)" > |
| 90 | + <ReadLinesFromFile Condition="Exists('$(PaketResolvedFilePath)')" File="$(PaketResolvedFilePath)" > |
86 | 91 | <Output TaskParameter="Lines" ItemName="PaketReferencesFileLines"/>
|
87 | 92 | </ReadLinesFromFile>
|
88 | 93 |
|
89 |
| - <ItemGroup Condition=" Exists('$(PaketReferencesFilePath)') AND '@(PaketReferencesFileLines)' != '' " > |
| 94 | + <ItemGroup Condition=" Exists('$(PaketResolvedFilePath)') AND '@(PaketReferencesFileLines)' != '' " > |
90 | 95 | <PaketReferencesFileLinesInfo Include="@(PaketReferencesFileLines)" >
|
91 | 96 | <PackageName>$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[0])</PackageName>
|
92 | 97 | <PackageVersion>$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[1])</PackageVersion>
|
|
0 commit comments