Skip to content

[ATFE] Introduce seperate multilib groups for base and minor variants.#881

Open
simpal01 wants to merge 2 commits into
arm:arm-softwarefrom
simpal01:multilib-base-minor-startup-groups
Open

[ATFE] Introduce seperate multilib groups for base and minor variants.#881
simpal01 wants to merge 2 commits into
arm:arm-softwarefrom
simpal01:multilib-base-minor-startup-groups

Conversation

@simpal01

Copy link
Copy Markdown
Contributor

This change introduces separate multilib groups so minor library variants can be selected alongside the base library variant.

This patch:

  1. Replaces the stdlibs group with base_stdlibs for base library variants.
  2. Adds independent exclusive groups for overlay layers:
    • string_minor_libs
    • startup_libs
  3. Updates multilib YAML generation to emit each variant’s configured group.
  4. Restricts header include directory optimisation to base_stdlibs

This allows one base variant and one matching variant from each layering group at the same time, allowing the minor library variants to stay with the selected base variant.

This change introduces separate multilib groups so
minor library variants can be selected alongside the
base library variant.

This patch:
1. Replaces the stdlibs group with base_stdlibs for base library variants.
2. Adds independent exclusive groups for overlay layers:
   - string_minor_libs
   - startup_libs
3. Updates multilib YAML generation to emit each variant’s configured group.
4. Restricts header include directory optimisation to base_stdlibs

With this structure, the resolver can select one base variant and one matching
variant from each overlay group at the same time, allowing the minor library
variants to stay with the selected base variant.
@simpal01 simpal01 requested a review from a team as a code owner June 10, 2026 11:02
# Make an exclusive group for library variants, to make sure we don't
# accidentally include two or more variants at once.
# Make the main library selection exclusive, to make sure we don't
# accidentally include two or more base variants at once.But allow

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# accidentally include two or more base variants at once.But allow
# accidentally include two or more base variants at once. But allow

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

string(APPEND multilib_yaml_content " - ${parent_dir_name}/include\n")
endif()
string(APPEND multilib_yaml_content " Group: stdlibs\n")
string(APPEND multilib_yaml_content " ${variant_group}\n")

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You dropped the "Group: " part of the string. Double check if it's intended

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It was included in my local patch along with all the other changes. When I manually split it into multiple patches, it was unintentionally dropped. I’ve added it back now. Good catch!

Comment on lines +37 to +41
- Name: base_stdlibs
Type: Exclusive
- Name: string_minor_libs
Type: Exclusive
- Name: startup_libs

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not really convinced about these names. Naming is hard :)

I'd call them base_libs, string_libs and startup_libs. But ask for more opinions

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done :)

…ariants.

1. Missed the "Group:" part.
2. Renamed the groups as requested.
3. Added a space in the comment description.
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