@@ -36,17 +36,13 @@ Copyright (C) Microsoft Corporation. All rights reserved.
3636 Properties for extension of ProjectReferenceTargets.
3737 Append any current value which may have been provided in a Directory.Build.props since the intent was likely to append, not prepend.
3838 -->
39- <PropertyGroup Condition =" '$(IsGraphBuild)' == 'true'" >
40- <!-- Empty case is for outer builds which do not import the target files that set BuildProjectReferences -->
39+ <PropertyGroup Condition =" '$(IsGraphBuild)' == 'true' and '$(IsCrossTargetingBuild)' != 'true' " >
40+ <!-- Empty case is for builds which do not import the target files that set BuildProjectReferences -->
4141 <_MainReferenceTargetForBuild Condition =" '$(BuildProjectReferences)' == '' or '$(BuildProjectReferences)' == 'true'" >.projectReferenceTargetsOrDefaultTargets</_MainReferenceTargetForBuild >
4242 <_MainReferenceTargetForBuild Condition =" '$(_MainReferenceTargetForBuild)' == ''" >GetTargetPath</_MainReferenceTargetForBuild >
4343
4444 <ProjectReferenceTargetsForBuild >$(_MainReferenceTargetForBuild);GetNativeManifest;$(_RecursiveTargetForContentCopying);$(ProjectReferenceTargetsForBuild)</ProjectReferenceTargetsForBuild >
4545
46- <ProjectReferenceTargetsForClean >Clean;$(ProjectReferenceTargetsForClean)</ProjectReferenceTargetsForClean >
47-
48- <ProjectReferenceTargetsForRebuild >$(ProjectReferenceTargetsForClean);$(ProjectReferenceTargetsForBuild);$(ProjectReferenceTargetsForRebuild)</ProjectReferenceTargetsForRebuild >
49-
5046 <!-- Publish has the same logic as Build for the main reference target except it also takes $(NoBuild) into account. -->
5147 <_MainReferenceTargetForPublish Condition =" '$(NoBuild)' == 'true'" >GetTargetPath</_MainReferenceTargetForPublish >
5248 <_MainReferenceTargetForPublish Condition =" '$(NoBuild)' != 'true'" >$(_MainReferenceTargetForBuild)</_MainReferenceTargetForPublish >
@@ -58,23 +54,30 @@ Copyright (C) Microsoft Corporation. All rights reserved.
5854
5955 <ProjectReferenceTargetsForGetCopyToPublishDirectoryItems >GetCopyToPublishDirectoryItems;$(ProjectReferenceTargetsForGetCopyToPublishDirectoryItems)</ProjectReferenceTargetsForGetCopyToPublishDirectoryItems >
6056 </PropertyGroup >
57+ <PropertyGroup Condition =" '$(IsGraphBuild)' == 'true' and '$(IsCrossTargetingBuild)' == 'true'" >
58+ <ProjectReferenceTargetsForBuild >.default;$(ProjectReferenceTargetsForBuild)</ProjectReferenceTargetsForBuild >
59+ </PropertyGroup >
60+ <PropertyGroup Condition =" '$(IsGraphBuild)' == 'true'" >
61+ <ProjectReferenceTargetsForClean >Clean;$(ProjectReferenceTargetsForClean)</ProjectReferenceTargetsForClean >
62+ <ProjectReferenceTargetsForRebuild >$(ProjectReferenceTargetsForClean);$(ProjectReferenceTargetsForBuild);$(ProjectReferenceTargetsForRebuild)</ProjectReferenceTargetsForRebuild >
63+ </PropertyGroup >
6164
6265 <ItemGroup Condition =" '$(IsGraphBuild)' == 'true'" >
6366 <ProjectReferenceTargets Include =" Build" Targets =" $(ProjectReferenceTargetsForBuildInOuterBuild)" Condition =" '$(ProjectReferenceTargetsForBuildInOuterBuild)' != '' " OuterBuild =" true" />
64- <ProjectReferenceTargets Include =" Build" Targets =" GetTargetFrameworks" OuterBuild =" true" SkipNonexistentTargets =" true" />
67+ <ProjectReferenceTargets Include =" Build" Targets =" GetTargetFrameworks" OuterBuild =" true" SkipNonexistentTargets =" true" Condition = " '$(IsCrossTargetingBuild)' != 'true' " />
6568 <ProjectReferenceTargets Include =" Build" Targets =" $(ProjectReferenceTargetsForBuild)" Condition =" '$(ProjectReferenceTargetsForBuild)' != '' " />
6669
6770 <ProjectReferenceTargets Include =" Clean" Targets =" $(ProjectReferenceTargetsForCleanInOuterBuild)" Condition =" '$(ProjectReferenceTargetsForCleanInOuterBuild)' != '' " OuterBuild =" true" />
68- <ProjectReferenceTargets Include =" Clean" Targets =" GetTargetFrameworks" OuterBuild =" true" SkipNonexistentTargets =" true" />
71+ <ProjectReferenceTargets Include =" Clean" Targets =" GetTargetFrameworks" OuterBuild =" true" SkipNonexistentTargets =" true" Condition = " '$(IsCrossTargetingBuild)' != 'true' " />
6972 <ProjectReferenceTargets Include =" Clean" Targets =" $(ProjectReferenceTargetsForClean)" Condition =" '$(ProjectReferenceTargetsForClean)' != '' " />
7073
7174 <!--
7275 Note: SkipNonexistentTargets="true" on the following three items means that an outer build node's call to its existent GetTargetFrameworks target will fail if its inner build nodes don't define GetTargetFrameworksWithPlatformForSingleTargetFrameworks.
7376 This is necessary since the P2P protocol cannot express the targets called from the outer build to the inner build.
7477 -->
75- <ProjectReferenceTargets Include =" Build" Targets =" GetTargetFrameworksWithPlatformForSingleTargetFramework" SkipNonexistentTargets =" true" />
76- <ProjectReferenceTargets Include =" Clean" Targets =" GetTargetFrameworksWithPlatformForSingleTargetFramework" SkipNonexistentTargets =" true" />
77- <ProjectReferenceTargets Include =" Rebuild" Targets =" GetTargetFrameworksWithPlatformForSingleTargetFramework" SkipNonexistentTargets =" true" />
78+ <ProjectReferenceTargets Include =" Build" Targets =" GetTargetFrameworksWithPlatformForSingleTargetFramework" SkipNonexistentTargets =" true" Condition = " '$(IsCrossTargetingBuild)' != 'true' " />
79+ <ProjectReferenceTargets Include =" Clean" Targets =" GetTargetFrameworksWithPlatformForSingleTargetFramework" SkipNonexistentTargets =" true" Condition = " '$(IsCrossTargetingBuild)' != 'true' " />
80+ <ProjectReferenceTargets Include =" Rebuild" Targets =" GetTargetFrameworksWithPlatformForSingleTargetFramework" SkipNonexistentTargets =" true" Condition = " '$(IsCrossTargetingBuild)' != 'true' " />
7881
7982 <ProjectReferenceTargets Include =" Rebuild" Targets =" $(ProjectReferenceTargetsForRebuild)" Condition =" '$(ProjectReferenceTargetsForRebuild)' != '' " />
8083
@@ -83,4 +86,4 @@ Copyright (C) Microsoft Corporation. All rights reserved.
8386 <ProjectReferenceTargets Include =" GetCopyToPublishDirectoryItems" Targets =" $(ProjectReferenceTargetsForGetCopyToPublishDirectoryItems)" Condition =" '$(ProjectReferenceTargetsForGetCopyToPublishDirectoryItems)' != '' " />
8487 </ItemGroup >
8588
86- </Project >
89+ </Project >
0 commit comments