Salsa-0.1.0.1: Samples/Hello/Hello.proj
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Module>Hello</Module>
</PropertyGroup>
<ItemGroup>
<Generate Include="$(Module).imports" />
</ItemGroup>
<ItemGroup>
<BindingFiles Include="Bindings.hs;Labels.hs" />
</ItemGroup>
<ItemGroup>
<IntermediateFiles Include="*.hi;*.o" />
</ItemGroup>
<!-- Build the 'Generator' program if necessary -->
<Target Name="BuildGenerator">
<MSBuild Projects="..\..\Generator\Generator.csproj"
ContinueOnError="false"
Properties="Configuration=Release">
<Output TaskParameter="TargetOutputs" ItemName="Generator" />
</MSBuild>
</Target>
<!-- Call 'Generator' to create the binding files from the import files -->
<Target Name="GenerateBindings"
Inputs="@(Generate);@(Generator)"
Outputs="@(BindingFiles)"
DependsOnTargets="BuildGenerator">
<Exec Command="@(Generator) @(Generate)" />
</Target>
<!-- Run GHC to build the main program -->
<Target Name="Build"
DependsOnTargets="GenerateBindings">
<Exec Command="ghc --make $(Module) -fglasgow-exts -threaded" />
</Target>
<Target Name="Clean" >
<Delete Files="$(Module).exe" />
<Delete Files="$(Module).exe.manifest" />
<Delete Files="@(BindingFiles)" />
<Delete Files="@(BindingFiles -> '%(Filename)_stub.c')" />
<Delete Files="@(BindingFiles -> '%(Filename)_stub.h')" />
<Delete Files="@(IntermediateFiles)" />
</Target>
<Target Name="Rebuild" DependsOnTargets="Clean;Build" />
</Project>