Skip to content

[source-build] Implement a source-build workflow for GenAPI #29701

Description

@ericstj

We need GenAPI for product build to produce not supported assemblies.

GenAPI depends on CCI which isn't part of source build.

To deal with this, we'll depend on a pre-built version GenAPI during the online portion of SourceBuild ('$(OfflineBuild)' != 'true' AND '$(DotNetBuildFromSource)' == 'true'). During this phase we'll make sure all the generated source files are copied to a directory under a specified location: $(DotNetSourceBuildIntermediatePath). We'll write files in a subfolder pattern similar to intermediate (including project name and configuration) so that we can find them again later.

During the offline portion of source build ('$(OfflineBuild)' == 'true' AND '$(DotNetBuildFromSource)' == 'true') we won't depend on GenAPI and will instead have targets which look for the pre-generated files under $(DotNetSourceBuildIntermediatePath). We'll error if we cannot find them.

/cc @dseefeld @safern @ViktorHofer @Anipik

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions