Skip to content

Conversation

@bonzini
Copy link
Collaborator

@bonzini bonzini commented Dec 16, 2025

Some patches rebased, extracted and reorganized somewhat from #12258.

These include the unrelated logic changes that are needed, or make it easier, when adding build-machine subprojects

@bonzini bonzini force-pushed the subproject-per-machine-start branch from da358d9 to 76c9b04 Compare December 16, 2025 15:24
@bonzini bonzini marked this pull request as ready for review December 16, 2025 17:35
@bonzini bonzini force-pushed the subproject-per-machine-start branch 2 times, most recently from a73ab26 to b8105df Compare December 17, 2025 17:52
@bonzini bonzini force-pushed the subproject-per-machine-start branch 2 times, most recently from 1d04d09 to a562d65 Compare December 18, 2025 09:56
bonzini and others added 8 commits December 18, 2025 12:15
Store it at construction time instead of extracting it from kwargs
repeatedly.

Extracted from a patch by Dylan Baker <dylan@pnwbakers.com>

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Forcing the executor to the build machine doesn't actually work
correctly once we allow build subprojects, but it also uses the
wrong cmake_prefix_path.
Do not bother fully creating a new Build, since the environment will be overwritten
anyway.  Prefer setattr to __dict__ assignment.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Recursively copy the value if it is a collection; this ensures
that values are not overwritten until merge() is called.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
stdlibs is a similar kind of cache to depenency_overrides, share it
between build and host when not cross compiling.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Do not rummage into build.projects_args.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
All callers pass the subproject and machine of a target, move
that to the callee.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This makes things easier to understand, with the project_args
and project_link_args having the same structure as Build.global_args
and Build.global_link_args.

The difference is that the new member always includes an entry
for the root project, so adjust those cases that need to look at
subprojects only.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants