-
Notifications
You must be signed in to change notification settings - Fork 70
Description
In building from NuGet, the application manifest includes a number of asmv1:assembly/file/@name values that have a double dot, e.g.,
<file name="lib\fedora-x64\native\..\libgit2-106a5f2.so" size="1198160">
This throws an error, e.g. (via SxsTrace):
ERROR: Line 449: The value lib\alpine.3.9-x64\native\..\libgit2-106a5f2.so of attribute name in element urn:schemas-microsoft-com:asm.v1^file is invalid.
It seems that the root of this issue is
libgit2sharp.nativebinaries/nuget.package/build/net46/LibGit2Sharp.NativeBinaries.props
Line 11 in 9469eab
<ContentWithTargetPath Include="$(MSBuildThisFileDirectory)\..\..\runtimes\**\*" Exclude="$(MSBuildThisFileDirectory)\..\..\runtimes\win-*\**\*" TargetPath="lib\%(RecursiveDir)..\%(Filename)%(Extension)" CopyToOutputDirectory="PreserveNewest" /> |
There the double-dot parent path is hard coded to be imprinted and negate native
.
I propose the removal of ..\
in attribute TargetPath or something similar. Keeping the native
subdirectory shouldn't harm anything. At any rate, ISTM the syntactical constraints of asmv1:assembly/file/@name should be respected.