|
95 | 95 | <_Parameter2_TypeName>System.Int32</_Parameter2_TypeName>
|
96 | 96 | <_Parameter3>$(FileVersion.Split('.')[1])</_Parameter3>
|
97 | 97 | <_Parameter3_TypeName>System.Int32</_Parameter3_TypeName>
|
98 |
| - <_Parameter4>$(FileVersion.Split('.')[2])</_Parameter4> |
99 |
| - <_Parameter4_TypeName>System.Int32</_Parameter4_TypeName> |
| 98 | + <_Parameter4 Condition="$(FileVersion.Split('.').Length) > 2">$(FileVersion.Split('.')[2])</_Parameter4> |
| 99 | + <_Parameter4_TypeName Condition="$(FileVersion.Split('.').Length) > 2">System.Int32</_Parameter4_TypeName> |
100 | 100 | </AssemblyAttribute>
|
101 | 101 | </ItemGroup>
|
102 | 102 | </Target>
|
|
107 | 107 | Reference items must have a CKANIdentifier or a KSPAssemblyName.
|
108 | 108 | KSPAssemblyVersion can be optionally specified.
|
109 | 109 | Otherwise CKANVersion is used.
|
110 |
| - Otherwise 0.0.0 is used (no minimum version) |
| 110 | + Otherwise 0.0 is used (no minimum version) |
111 | 111 | -->
|
112 | 112 | <Target Name="GenerateKSPAssemblyDependencyAttributes" BeforeTargets="CoreGenerateAssemblyInfo"
|
113 | 113 | Condition="'$(GenerateKSPAssemblyDependencyAttributes)' == 'true'">
|
114 | 114 | <ItemGroup>
|
115 | 115 | <Reference Update="%(Reference.identity)" Condition="'%(Reference.CKANIdentifier)%(Reference.KSPAssemblyName)' != ''">
|
116 | 116 | <KSPAssemblyName Condition="'%(Reference.KSPAssemblyName)' == ''">$([System.String]::Copy('%(Reference.identity)').Split(',')[0])</KSPAssemblyName>
|
117 | 117 | <KSPAssemblyVersion Condition="'%(Reference.KSPAssemblyVersion)' == ''">%(Reference.CKANVersion)</KSPAssemblyVersion>
|
118 |
| - <KSPAssemblyVersion Condition="'%(Reference.KSPAssemblyVersion)' == ''">0.0.0</KSPAssemblyVersion> |
| 118 | + <KSPAssemblyVersion Condition="'%(Reference.KSPAssemblyVersion)' == ''">0.0</KSPAssemblyVersion> |
| 119 | + <KSPAssemblyVersionElementCount>$([System.String]::Copy('%(Reference.KSPAssemblyVersion)').Split('.').Length)</KSPAssemblyVersionElementCount> |
119 | 120 | </Reference>
|
120 | 121 | </ItemGroup>
|
121 | 122 | <ItemGroup>
|
|
126 | 127 | <_Parameter2_TypeName>System.Int32</_Parameter2_TypeName>
|
127 | 128 | <_Parameter3>$([System.String]::Copy('%(Reference.KSPAssemblyVersion)').Split('.')[1])</_Parameter3>
|
128 | 129 | <_Parameter3_TypeName>System.Int32</_Parameter3_TypeName>
|
129 |
| - <_Parameter4>$([System.String]::Copy('%(Reference.KSPAssemblyVersion)').Split('.')[2])</_Parameter4> |
130 |
| - <_Parameter4_TypeName>System.Int32</_Parameter4_TypeName> |
| 130 | + <_Parameter4 Condition="%(Reference.KSPAssemblyVersionElementCount) > 2">$([System.String]::Copy('%(Reference.KSPAssemblyVersion)').Split('.')[2])</_Parameter4> |
| 131 | + <_Parameter4_TypeName Condition="%(Reference.KSPAssemblyVersionElementCount) > 2">System.Int32</_Parameter4_TypeName> |
131 | 132 | </AssemblyAttribute>
|
132 | 133 | </ItemGroup>
|
133 | 134 | </Target>
|
|
145 | 146 | <ItemGroup>
|
146 | 147 | <KSPVersionFile Update="@(KSPVersionFile)">
|
147 | 148 | <Name Condition="'%(KSPVersionFile.Name)' == ''">$(ProjectName)</Name>
|
148 |
| - <Version Condition="'%(KSPVersionFile.Version)' == ''">$(FileVersion.Split(`.`)[0]).$(FileVersion.Split(`.`)[1]).$(FileVersion.Split(`.`)[2])</Version> |
| 149 | + <Version Condition="'%(KSPVersionFile.Version)' == ''">$(FileVersion)</Version> |
149 | 150 | </KSPVersionFile>
|
150 | 151 | </ItemGroup>
|
151 | 152 | <ReadLinesFromFile File="%(KSPVersionFile.identity)" Condition="Exists('@(KSPVersionFile)')">
|
|
0 commit comments