Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Zephyr 3.6 support #52

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open

WIP: Zephyr 3.6 support #52

wants to merge 4 commits into from

Conversation

tylerwhall
Copy link
Owner

No description provided.

@tylerwhall tylerwhall changed the title Zephyr 3.6 support WIP: Zephyr 3.6 support Jul 1, 2024
Zephyr 3.5 switches to picolibc by default and can use a binary from the
SDK or build from source. Clang, invoked by zephyr-bindgen from
zephyr-sys's build.rs, cannot find the SDK's picolibc include path,
resulting in this error:

> zephyr/include/zephyr/posix/time.h:55:12: fatal error: 'sys/timespec.h' file not found

This is because when using the SDK version, it picks up the include path
from a spec file.

    if(NOT CONFIG_PICOLIBC_USE_MODULE)
    zephyr_compile_options(--specs=picolibc.specs)

We don't pass zephyr_compile_options for bindgen because it contains
many GCC-specific options that fail under clang, and in this case the
spec file won't work with clang anyway.

Build from source so the include path is added in the normal way.
Add newly supported versions and remove intermediate 2.x versions to
lighten the build load.
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.

2 participants