SourceBuild.props 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <Project>
  2. <PropertyGroup>
  3. <GitHubRepositoryName>aspnetcore</GitHubRepositoryName>
  4. <SourceBuildManagedOnly>true</SourceBuildManagedOnly>
  5. <CloneSubmodulesToInnerSourceBuildRepo>false</CloneSubmodulesToInnerSourceBuildRepo>
  6. </PropertyGroup>
  7. <Target Name="ApplySourceBuildPatchFiles"
  8. AfterTargets="PrepareInnerSourceBuildRepoRoot"
  9. BeforeTargets="RunInnerSourceBuildCommand">
  10. <ItemGroup>
  11. <SourceBuildPatchFile Include="$(RepositoryEngineeringDir)source-build-patches\*.patch" />
  12. </ItemGroup>
  13. <Exec
  14. Command="git apply --ignore-whitespace --whitespace=nowarn &quot;%(SourceBuildPatchFile.FullPath)&quot;"
  15. WorkingDirectory="$(InnerSourceBuildRepoRoot)"
  16. Condition="'@(SourceBuildPatchFile)' != ''" />
  17. </Target>
  18. <!--
  19. Init submodules - temporarary workaround for https://github.com/dotnet/sourcelink/pull/653
  20. -->
  21. <Target Name="InitSubmodules"
  22. DependsOnTargets="PrepareInnerSourceBuildRepoRoot"
  23. BeforeTargets="RunInnerSourceBuildCommand">
  24. <Exec
  25. Command="git submodule update --init --recursive"
  26. WorkingDirectory="$(InnerSourceBuildRepoRoot)"
  27. EnvironmentVariables="@(InnerBuildEnv)" />
  28. </Target>
  29. <!--
  30. Remove inner source .globalconfig file as both the inner and outer config files get loaded and cause a conflict.
  31. Leaving the inner will cause all conflicting settings to be ignored.
  32. https://docs.microsoft.com/en-us/dotnet/fundamentals/code-analysis/configuration-files#general-options
  33. -->
  34. <Target Name="RemoveInnerGlobalConfig"
  35. DependsOnTargets="PrepareInnerSourceBuildRepoRoot"
  36. BeforeTargets="RunInnerSourceBuildCommand">
  37. <Delete Files="$(InnerSourceBuildRepoRoot).globalconfig" />
  38. </Target>
  39. <!--
  40. Build RepoTasks - this is normally triggered via the build script but the inner ArPow source-build is run via msbuild
  41. -->
  42. <Target Name="BuildRepoTasks"
  43. Condition="'$(ArcadeInnerBuildFromSource)' == 'true'"
  44. BeforeTargets="Execute">
  45. <Exec
  46. Command="./eng/build.sh --only-build-repo-tasks"
  47. WorkingDirectory="$(InnerSourceBuildRepoRoot)"
  48. EnvironmentVariables="@(InnerBuildEnv)" />
  49. </Target>
  50. <Target Name="CustomizeInnerBuildArgs"
  51. BeforeTargets="GetSourceBuildCommandConfiguration">
  52. <PropertyGroup>
  53. <InnerBuildArgs>$(InnerBuildArgs) /p:SourceBuildRuntimeIdentifier=$(TargetRuntimeIdentifier)</InnerBuildArgs>
  54. </PropertyGroup>
  55. </Target>
  56. </Project>