|
26 | 26 |
|
27 | 27 | <TestTargetFramework Condition=" '$(TestTargetFramework)' == '' ">net9.0</TestTargetFramework> |
28 | 28 |
|
29 | | - <Error Condition=" '$(TestTargetFramework)' != 'net462' AND '$(TestTargetFramework)' != 'net9.0' AND '$(TestTargetFramework)' != 'net8.0' AND '$(TestTargetFramework)' != 'net6.0'"/> |
| 29 | + <Error Condition=" '$(TestTargetFramework)' != 'net462' AND '$(TestTargetFramework)' != 'net481' AND '$(TestTargetFramework)' != 'net9.0' AND '$(TestTargetFramework)' != 'net8.0' AND '$(TestTargetFramework)' != 'net6.0'"/> |
30 | 30 |
|
31 | 31 | <!-- |
32 | 32 | <TestLibraryFramework Condition=" '$(TestTargetFramework)' == 'net462' ">netstandard2.0</TestLibraryFramework> |
|
39 | 39 |
|
40 | 40 | <TestDir>$(RootDir)Test\$(Configuration)\$(TestTargetFramework)</TestDir> |
41 | 41 |
|
42 | | - <ClojureMainBinDir Condition=" '$(TestTargetFramework)' == 'net462' ">$(RootDir)Clojure.Main461\bin\$(Configuration)\$(TestTargetFramework)</ClojureMainBinDir> |
43 | | - <ClojureMainBinDir Condition=" '$(TestTargetFramework)' != 'net462' ">$(RootDir)Clojure.Main\bin\$(Configuration)\$(TestTargetFramework)</ClojureMainBinDir> |
44 | | - <clji Condition=" '$(TestTargetFramework)' == 'net462' ">Clojure.Main461.exe</clji> |
45 | | - <clji Condition=" '$(TestTargetFramework)' != 'net462' ">Clojure.Main.exe</clji> |
46 | | - <clji Condition=" '$(TestTargetFramework)' != 'net462' And '$(MSBuildRuntimeType)' == 'Core' ">dotnet run --project $(RootDir)Clojure.Main --framework $(TestTargetFramework) -c $(Configuration) --</clji> |
| 42 | + <ClojureMainBinDir Condition=" '$(TestTargetFramework)' == 'net462' OR '$(TestTargetFramework)' == 'net481' ">$(RootDir)Clojure.Main461\bin\$(Configuration)\$(TestTargetFramework)</ClojureMainBinDir> |
| 43 | + <ClojureMainBinDir Condition=" '$(TestTargetFramework)' != 'net462' AND '$(TestTargetFramework)' != 'net481' ">$(RootDir)Clojure.Main\bin\$(Configuration)\$(TestTargetFramework)</ClojureMainBinDir> |
| 44 | + <clji Condition=" '$(TestTargetFramework)' == 'net462' OR '$(TestTargetFramework)' == 'net481' ">Clojure.Main461.exe</clji> |
| 45 | + <clji Condition=" '$(TestTargetFramework)' != 'net462' AND '$(TestTargetFramework)' != 'net481' ">Clojure.Main.exe</clji> |
| 46 | + <clji Condition=" '$(TestTargetFramework)' != 'net462' AND '$(TestTargetFramework)' != 'net481' And '$(MSBuildRuntimeType)' == 'Core' ">dotnet run --project $(RootDir)Clojure.Main --framework $(TestTargetFramework) -c $(Configuration) --</clji> |
47 | 47 |
|
48 | 48 | <ClojureCompileBinDir>$(RootDir)Clojure.Compile\bin\$(Configuration)\$(TestTargetFramework)</ClojureCompileBinDir> |
49 | 49 | <cljc>Clojure.Compile.exe</cljc> |
|
131 | 131 | <RemoveDir Directories="$(RootDir)Clojure.Main461\bin;$(RootDir)Clojure.Main461\obj;$(RootDir)Clojure.Main461\Content"/> |
132 | 132 | <RemoveDir Directories="$(RootDir)Clojure.Compile\bin;$(RootDir)Clojure.Compile\obj"/> |
133 | 133 | <RemoveDir Directories="$(RootDir)Clojure.Tests\bin;$(RootDir)Clojure.Tests\obj"/> |
| 134 | + <RemoveDir Directories="$(RootDir)Clojure.Tests.Support\bin;$(RootDir)Clojure.Tests.Support\obj"/> |
134 | 135 | <RemoveDir Directories="$(RootDir)Clojure.Samples\bin;$(RootDir)Clojure.Samples\obj"/> |
135 | 136 | <RemoveDir Directories="$(RootDir)CSharp.Tests\bin;$(RootDir)CSharp.Tests\obj"/> |
136 | 137 | </Target> |
|
157 | 158 | DestinationFolder="$(TestDir)\%(RecursiveDir)" /> |
158 | 159 | </Target> |
159 | 160 |
|
160 | | - <Target Name="CompileTest" DependsOnTargets="StageTest" Condition="'$(TestTargetFramework)' == 'net462' OR '$(TestTargetFramework)' == 'net9.0'"> |
| 161 | + <Target Name="CompileTest" DependsOnTargets="StageTest" Condition="'$(TestTargetFramework)' == 'net462' OR '$(TestTargetFramework)' == 'net481' OR '$(TestTargetFramework)' == 'net9.0'"> |
161 | 162 | <Exec Command="$(cljc) clojure.test-clojure.genclass.examples clojure.test-clojure.protocols.examples clojure.test-clojure.proxy.examples clojure.test-clojure.attributes clojure.test-clojure.compilation.load-ns clojure.test-clojure.compilation.line-number-examples" |
162 | 163 | WorkingDirectory="$(TestDir)" |
163 | 164 | Condition=" '$(Runtime)' == '.Net' "/> |
|
171 | 172 |
|
172 | 173 | <Target Name="Test" DependsOnTargets="StageTest;CompileTest"> |
173 | 174 | <Copy SkipUnchangedFiles="true" SourceFiles="Clojure.Tests\clojure\run_test.clj" DestinationFolder="$(TestDir)" /> |
174 | | - <SetEnvironmentVariable Condition="'$(TestTargetFramework)' == 'net462' OR '$(TestTargetFramework)' == 'net9.0'" |
| 175 | + <SetEnvironmentVariable Condition="'$(TestTargetFramework)' == 'net462' OR '$(TestTargetFramework)' == 'net481' OR '$(TestTargetFramework)' == 'net9.0'" |
175 | 176 | Name="clojure.test-clojure.exclude-namespaces" |
176 | 177 | Value="#{clojure.test-clojure.compilation.load-ns clojure.test-clojure.ns-libs-load-later}" /> |
177 | | - <SetEnvironmentVariable Condition="'$(TestTargetFramework)' != 'net462' AND '$(TestTargetFramework)' != 'net9.0' " |
| 178 | + <SetEnvironmentVariable Condition="'$(TestTargetFramework)' != 'net462' AND '$(TestTargetFramework)' != 'net481' AND'$(TestTargetFramework)' != 'net9.0' " |
178 | 179 | Name="clojure.test-clojure.exclude-namespaces" |
179 | 180 | Value="#{clojure.test-clojure.compilation.load-ns clojure.test-clojure.ns-libs-load-later clojure.test-clojure.attributes clojure.test-clojure.compilation2 clojure.test-clojure.genclass}" /> |
180 | 181 | <Exec Command="$(clji) run_test.clj" WorkingDirectory="$(TestDir)" Condition=" '$(Runtime)' == '.Net' "/> |
|
183 | 184 |
|
184 | 185 | <Target Name="TestGen" DependsOnTargets="StageTest;CompileTest"> |
185 | 186 | <Copy SkipUnchangedFiles="true" SourceFiles="Clojure.Tests\clojure\run_test_generative.clj" DestinationFolder="$(TestDir)" /> |
186 | | - <SetEnvironmentVariable Condition="'$(TestTargetFramework)' != 'net462' AND '$(TestTargetFramework)' != 'net9.0'" |
| 187 | + <SetEnvironmentVariable Condition="'$(TestTargetFramework)' != 'net462' AND '$(TestTargetFramework)' != 'net481' AND '$(TestTargetFramework)' != 'net9.0'" |
187 | 188 | Name="clojure.test-clojure.exclude-namespaces" |
188 | 189 | Value="#{clojure.test-clojure.compilation.load-ns clojure.test-clojure.attributes clojure.test-clojure.compilation2 clojure.test-clojure.genclass}" /> |
189 | 190 | <Exec Command="$(clji) run_test_generative.clj" WorkingDirectory="$(TestDir)" Condition=" '$(Runtime)' == '.Net' "/> |
|
253 | 254 | /> |
254 | 255 | </Target> |
255 | 256 |
|
| 257 | + |
| 258 | + <!-- We want to run ILMerge on th Clojure.dll for the 481 version prior to doing the pack. Sneaking this in after the build --> |
| 259 | + <!-- TODO: Merge this code with ILMerge481 --> |
| 260 | + <Target Name="ILMerge481" DependsOnTargets="CreateStageDir"> |
256 | 261 |
|
257 | | - <Target Name="ZipAll" DependsOnTargets="PackAll;ILMerge462"> |
| 262 | + <PropertyGroup> |
| 263 | + <ILMergeStageDir>$(StageDir)\ilmerge\</ILMergeStageDir> |
| 264 | + <UnzippedDir>$(ILMergeStageDir)\unzipped</UnzippedDir> |
| 265 | + <SourceDir>$(RootDir)\Clojure.Compile\bin\$(Configuration)\net481</SourceDir> |
| 266 | + |
| 267 | + </PropertyGroup> |
| 268 | + <MakeDir Directories="$(ILMergeStageDir)" /> |
| 269 | + <Exec WorkingDirectory="$(SourceDir)" |
| 270 | + Command="ilmerge /keyfile:$(PublicKey) /out:$(ILMergeStageDir)\Clojure.dll Clojure.dll clojure.clr.io.clj.dll clojure.math.clj.dll clojure.clr.shell.clj.dll clojure.core.clj.dll clojure.core.protocols.clj.dll clojure.core.reducers.clj.dll clojure.core.server.clj.dll clojure.core_clr.clj.dll clojure.core_deftype.clj.dll clojure.core_print.clj.dll clojure.core_proxy.clj.dll clojure.data.clj.dll clojure.edn.clj.dll clojure.genclass.clj.dll clojure.gvec.clj.dll clojure.instant.clj.dll clojure.main.clj.dll clojure.pprint.clj.dll clojure.pprint.cl_format.clj.dll clojure.pprint.column_writer.clj.dll clojure.pprint.dispatch.clj.dll clojure.pprint.pprint_base.clj.dll clojure.pprint.pretty_writer.clj.dll clojure.pprint.print_table.clj.dll clojure.pprint.utilities.clj.dll clojure.reflect.clj.dll clojure.reflect.clr.clj.dll clojure.repl.clj.dll clojure.set.clj.dll clojure.stacktrace.clj.dll clojure.string.clj.dll clojure.template.clj.dll clojure.test.clj.dll clojure.test.junit.clj.dll clojure.test.tap.clj.dll clojure.uuid.clj.dll clojure.walk.clj.dll clojure.zip.clj.dll clojure.datafy.clj.dll clojure.clr.basis.impl.cljc.dll clojure.clr.basis.cljc.dll clojure.clr.process.clj.dll clojure.tools.deps.interop.cljc.dll clojure.repl.deps.cljc.dll" |
| 271 | + /> |
| 272 | + |
| 273 | + <Unzip |
| 274 | + SourceFiles="$(StageDir)\Clojure.$(ZipVersion).nupkg" |
| 275 | + DestinationFolder="$(UnzippedDir)" |
| 276 | + OverwriteReadOnlyFiles="true" |
| 277 | + /> |
| 278 | + <Copy SkipUnchangedFiles="true" |
| 279 | + SourceFiles="$(ILMergeStageDir)\Clojure.dll" |
| 280 | + DestinationFolder="$(UnzippedDir)\lib\net481" |
| 281 | + /> |
| 282 | + |
| 283 | + <ZipDirectory SourceDirectory="$(UnzippedDir)" |
| 284 | + DestinationFile ="$(StageDir)\Clojure.$(ZipVersion).nupkg" |
| 285 | + Overwrite="true" |
| 286 | + /> |
| 287 | + </Target> |
| 288 | + |
| 289 | + |
| 290 | + <Target Name="ZipAll" DependsOnTargets="PackAll;ILMerge462;ILMerge481"> |
258 | 291 |
|
259 | 292 | <ZipDirectory SourceDirectory="$(RootDir)Clojure.Main\bin\$(Configuration)\net9.0\publish" |
260 | 293 | DestinationFile ="$(StageDir)\clojure-clr-$(ZipVersion)-$(Configuration)-net9.0.zip" |
|
267 | 300 | <ZipDirectory SourceDirectory="$(RootDir)Clojure.Main\bin\$(Configuration)\net6.0\publish" |
268 | 301 | DestinationFile ="$(StageDir)\clojure-clr-$(ZipVersion)-$(Configuration)-net6.0.zip" |
269 | 302 | Overwrite="true"/> |
| 303 | + |
| 304 | + <!-- TOOD: Merge the 462 and 481 versions --> |
270 | 305 | <ItemGroup> |
271 | | - <ClojureCompileAssets Include="$(RootDir)Clojure.Compile\bin\$(Configuration)\net462\Clojure.Compile.*" /> |
| 306 | + <ClojureCompile462Assets Include="$(RootDir)Clojure.Compile\bin\$(Configuration)\net462\Clojure.Compile.*" /> |
272 | 307 | <ClojureMain462Assets Include="$(RootDir)Clojure.Main461\bin\$(Configuration)\net462\**\*" /> |
273 | 308 | </ItemGroup> |
274 | 309 | <Copy SkipUnchangedFiles="true" |
275 | 310 | SourceFiles="@(ClojureMain462Assets)" |
276 | 311 | DestinationFolder="$(StageDir)\net462\%(RecursiveDir)" /> |
277 | 312 | <Copy SkipUnchangedFiles="true" |
278 | | - SourceFiles="@(ClojureCompileAssets)" |
| 313 | + SourceFiles="@(ClojureCompile462Assets)" |
279 | 314 | DestinationFolder="$(StageDir)\net462\%(RecursiveDir)" /> |
280 | 315 |
|
281 | 316 | <ZipDirectory SourceDirectory="$(StageDir)\net462" |
282 | 317 | DestinationFile ="$(StageDir)\clojure-clr-$(ZipVersion)-$(Configuration)-net4.6.2.zip" |
283 | 318 | Overwrite="true"/> |
284 | | - </Target> |
285 | | - |
| 319 | + |
| 320 | + <ItemGroup> |
| 321 | + <ClojureCompile481Assets Include="$(RootDir)Clojure.Compile\bin\$(Configuration)\net481\Clojure.Compile.*" /> |
| 322 | + <ClojureMain481Assets Include="$(RootDir)Clojure.Main461\bin\$(Configuration)\net481\**\*" /> |
| 323 | + </ItemGroup> |
| 324 | + <Copy SkipUnchangedFiles="true" |
| 325 | + SourceFiles="@(ClojureMain481Assets)" |
| 326 | + DestinationFolder="$(StageDir)\net481\%(RecursiveDir)" /> |
| 327 | + <Copy SkipUnchangedFiles="true" |
| 328 | + SourceFiles="@(ClojureCompile481Assets)" |
| 329 | + DestinationFolder="$(StageDir)\net481\%(RecursiveDir)" /> |
| 330 | + |
| 331 | + <ZipDirectory SourceDirectory="$(StageDir)\net481" |
| 332 | + DestinationFile ="$(StageDir)\clojure-clr-$(ZipVersion)-$(Configuration)-net4.8.1.zip" |
| 333 | + Overwrite="true"/> |
| 334 | + </Target> |
| 335 | + |
286 | 336 | <!-- $$$$$$$$$$$$$$$$$$$$$$$$$$ --> |
287 | 337 |
|
288 | 338 | <!-- RJ: New build and clean targets for .Net Core 3.X and .Net 5--> |
|
0 commit comments