Skip to content

Instantly share code, notes, and snippets.

@robertlj
Created August 31, 2012 12:36
Show Gist options
  • Save robertlj/3552216 to your computer and use it in GitHub Desktop.
Save robertlj/3552216 to your computer and use it in GitHub Desktop.
ClojureCLR Mono Build
<!-- Reworked Dist target to work around Mono bug related to embeding
ItemGroup inside a Target tag -->
<Target Name="Dist" DependsOnTargets="Build">
<!--DLR Files:
"$(OutputPath)\Microsoft.*" -->
<!--Clojure dlls and exes Files:
$(OutputPath)\Clojure.Tests.dll;$(OutputPath)\Clojure.Tests.pdb;
$(OutputPath)\Clojure.Source.dll;$(OutputPath)\Clojure.Source.pdb;
$(OutputPath)\clojure.test-clojure.genclass.examples.ExampleClass.dll;
$(OutputPath)\clojure.test-clojure.genclass.examples.ExampleClass.pdb;
$(OutputPath)\Clojure.Main.vshost.exe;$(OutputPath)\Clojure.Main.vshost.exe.manifest" -->
<CreateItem
Include="$(OutputPath)\Clojure.*;$(OutputPath)\Microsoft.*"
Exclude="$(OutputPath)\Clojure.Tests.dll;$(OutputPath)\Clojure.Tests.pdb;
$(OutputPath)\Clojure.Source.dll;$(OutputPath)\Clojure.Source.pdb;
$(OutputPath)\clojure.test-clojure.genclass.examples.ExampleClass.dll;
$(OutputPath)\clojure.test-clojure.genclass.examples.ExampleClass.pdb;
$(OutputPath)\Clojure.Main.vshost.exe;$(OutputPath)\Clojure.Main.vshost.exe.manifest">
<Output
TaskParameter="Include"
ItemName="Dlls"/>
</CreateItem>
<CreateItem
Include="$(OutputPath)\clojure\**\*"
Exclude="$(OutputPath)\clojure\test_clojure\**\*">
<Output
TaskParameter="Include"
ItemName="CljFiles"/>
</CreateItem>
<Copy SourceFiles="@(Dlls)" DestinationFolder="..\dist\$(Configuration)" SkipUnchangedFiles="true" />
<Copy SourceFiles="@(CljFiles)" DestinationFolder="..\dist\$(Configuration)\clojure\%(RecursiveDir)" SkipUnchangedFiles="true" />
</Target>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment