Improve assembly resolution when hintpath is specified and when searching
authorAnkit Jain <radical@corewars.org>
Fri, 28 May 2010 21:35:10 +0000 (21:35 -0000)
committerAnkit Jain <radical@corewars.org>
Fri, 28 May 2010 21:35:10 +0000 (21:35 -0000)
commit41ffb016910ae7fb1d7089bd2fdbf71e6e9e96fa
tree9f4e08aa987676e7f8565f787d7e59b8a2d892fa
parent3798141bb334a8a94891d2d38bbe4ff995214d10
Improve assembly resolution when hintpath is specified and when searching
in a directory.

* AssemblyResolver.cs (FindInDirectory): Add a 'specific_version'
parameter. Look for reference.{dll|exe} instead of checking all
files in the directory. Compare assembly names only if
specific_version is true.
(ResolveHintPathReference): Extract code to check and compare assembly
names to ..
(ResolvedReferenceFromPath): .. this.
(AssemblyNamesCompatible): Change default value of @specificVersion to
true.
Track api changes.
* ResolveAssemblyReference.cs (ResolveReference): Specify
'specific_version' in case of SearchPath.Directory.
(TryGetSpecificVersionValue): msbuild seems to look only for ',' in
the reference, instead of checking whether the assembly is strong
named.
(TryGetResolvedReferenceByAssemblyName): Track api changes.

svn path=/trunk/mcs/; revision=158123
mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/AssemblyResolver.cs
mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/ChangeLog
mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/ResolveAssemblyReference.cs