Skip to content

Instantly share code, notes, and snippets.

@jassmith
Created January 21, 2016 23:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jassmith/12da211f27f212651e14 to your computer and use it in GitHub Desktop.
Save jassmith/12da211f27f212651e14 to your computer and use it in GitHub Desktop.
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<UsingTask TaskName="Xamarin.Forms.Build.Tasks.XamlGTask" AssemblyFile="Xamarin.Forms.Build.Tasks.dll"/>
<UsingTask TaskName="Xamarin.Forms.Build.Tasks.FixedCreateCSharpManifestResourceName" AssemblyFile="Xamarin.Forms.Build.Tasks.dll"/>
<UsingTask TaskName="Xamarin.Forms.Build.Tasks.XamlCTask" AssemblyFile="Xamarin.Forms.Build.Tasks.dll"/>
<PropertyGroup>
<PrepareResourcesDependsOn>
XamlG;
$(PrepareResourcesDependsOn);
</PrepareResourcesDependsOn>
</PropertyGroup>
<PropertyGroup>
<CompileDependsOn>
$(CompileDependsOn);
XamlC;
</CompileDependsOn>
</PropertyGroup>
<PropertyGroup>
<CoreCompileDependsOn Condition="'$(BuildingInsideVisualStudio)' == 'true' ">
DesignTimeMarkupCompilation;
$(CoreCompileDependsOn);
</CoreCompileDependsOn>
</PropertyGroup>
<Target Name="DesignTimeMarkupCompilation">
<CallTarget Condition="'$(BuildingProject)' != 'true' Or $(DesignTimeBuild) == 'true'" Targets="XamlG" />
</Target>
<Target Name="UpdateDesignTimeXaml" Condition="'$(UseHostCompilerIfAvailable)' == 'true'" DependsOnTargets="PrepareResources; Compile"/>
<Target Name="XamlG" DependsOnTargets="$(XamlGDependsOn)"/>
<PropertyGroup>
<XamlGDependsOn>
_PreXamlG;
_CoreXamlG;
</XamlGDependsOn>
</PropertyGroup>
<Target Name="_PreXamlG">
<MakeDir Directories="$(IntermediateOutputPath)"/>
</Target>
<PropertyGroup>
<CoreCompileDependsOn>
IncludeXamlResource;
$(CoreCompileDependsOn)
</CoreCompileDependsOn>
</PropertyGroup>
<Target Name="IncludeXamlResource">
<ItemGroup>
<XamlResource Include="@(EmbeddedResource)" Condition="'%(EmbeddedResource.Extension)' == '.xaml' AND '$(DefaultLanguageSourceExtension)' == '.cs'" />
<Compile Include="@(XamlResource->'$(IntermediateOutputPath)%(RelativeDir)%(FileName)%(Extension).g$(DefaultLanguageSourceExtension)')" />
</ItemGroup>
</Target>
<Target Name="_CoreXamlG"
Inputs = "@(XamlResource)"
Outputs = "$(IntermediateOutputPath)%(RelativeDir)%(FileName)%(Extension).g$(DefaultLanguageSourceExtension)">
<MakeDir Directories="$(IntermediateOutputPath)%(XamlResource.RelativeDir)" Condition="!Exists('$(IntermediateOutputPath)%(RelativeDir)')" />
<XamlGTask
Source="@(XamlResource)"
Language = "$(Language)"
AssemblyName = "$(AssemblyName)"
OutputFile = "$(IntermediateOutputPath)%(RelativeDir)%(FileName)%(Extension).g$(DefaultLanguageSourceExtension)">
</XamlGTask>
<ItemGroup>
<FileWrites Include="@(XamlResource->'$(IntermediateOutputPath)%(RelativeDir)%(FileName)%(Extension).g$(DefaultLanguageSourceExtension)')" />
</ItemGroup>
</Target>
<Target Name="XamlC">
<XamlCTask
Assembly = "$(IntermediateOutputPath)$(TargetFileName)"
ReferencePath = "@(ReferencePath)"
Verbosity = "2"
OptimizeIL = "true"
DebugSymbols = "$(DebugSymbols)" />
</Target>
</Project>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment