libc: Default to picolibc where supported#57340
libc: Default to picolibc where supported#57340nashif merged 2 commits intozephyrproject-rtos:mainfrom
Conversation
|
@keith-packard labeling this as TSC since this requires a bit more discussion. |
3c3af68 to
ab53da0
Compare
ab53da0 to
7f476df
Compare
|
The following west manifest projects have been modified in this Pull Request:
Note: This message is automatically posted and updated by the Manifest GitHub Action. |
7f476df to
ee8fe4f
Compare
|
One of the commit messages is:
Pull request 28 does not seem related. It's from 2017 :-) EDIT: got it, you meant Could you please share a link with more information about this change of the |
Sorry for the mis-leading link.
Yeah, this is only vaguely related to picolibc itself -- as a complete C library, it's best to compile applications using picolibc without the |
ee8fe4f to
2c7f83e
Compare
|
As per #49922 (comment), this needs more documentation and process-related work before it can be approved by the TSC. I will look into that and create a new PR based on this with the necessary changes. |
2c7f83e to
0e269c4
Compare
0e94369 to
e8b81ba
Compare
This switches the default C library to picolibc for all targets which support it. Signed-off-by: Keith Packard <keithp@keithp.com>
With picolibc being the default C library, we need to explicitly include testing against the minimal C library for kernel components. Signed-off-by: Keith Packard <keithp@keithp.com>
e8b81ba to
1cf5b43
Compare
|
sorry for the update -- I rebased on top of an unrelated fix which was blocking CI. Now that it's passing, it would be a good time to get this merged :-) |
| default PICOLIBC | ||
| default NEWLIB_LIBC if REQUIRES_FULL_LIBC | ||
| default PICOLIBC if REQUIRES_FULL_LIBC | ||
| default MINIMAL_LIBC |
There was a problem hiding this comment.
dont we end up with both picolibc and minimal libc set as default? or does order here play a role?
There was a problem hiding this comment.
Kconfig appears to pick the first which matches and which can be enabled -- the goal is to use picolibc where supported otherwise use minimal C library.
|
@keith-packard, now that we have a migration guide, would you mind adding a note there? I assume under "Required changes", given that users may see their applications break depending on what they are using? |
#62261 has some possible things to check. I'm not sure how these should be integrated into the rest of the migration notes though. |

This switches the default C library to picolibc for all targets which support it.
Closes #49922