-
Notifications
You must be signed in to change notification settings - Fork 1.2k
qurt: Add support for Qualcomm QuRT #4845
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
base: main
Are you sure you want to change the base?
Conversation
The QuRT RTOS -- used primarily on the Hexagon architecture -- has support for large parts of POSIX.
tgross35
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You will need to update
Lines 33 to 49 in a3bb40e
| // Extra values to allow for check-cfg. | |
| const CHECK_CFG_EXTRA: &[(&str, &[&str])] = &[ | |
| ( | |
| "target_os", | |
| &[ | |
| "switch", "aix", "ohos", "hurd", "rtems", "visionos", "nuttx", "cygwin", | |
| ], | |
| ), | |
| ( | |
| "target_env", | |
| &["illumos", "wasi", "aix", "ohos", "nto71_iosock", "nto80"], | |
| ), | |
| ( | |
| "target_arch", | |
| &["loongarch64", "mips32r6", "mips64r6", "csky"], | |
| ), | |
| ]; |
| pub(crate) mod errno; | ||
| pub(crate) mod fcntl; | ||
| pub(crate) mod limits; | ||
| pub(crate) mod pthread; | ||
| pub(crate) mod semaphore; | ||
| pub(crate) mod signal; | ||
| pub(crate) mod stdio; | ||
| pub(crate) mod stdlib; | ||
| pub(crate) mod sys; | ||
| pub(crate) mod time; | ||
| pub(crate) mod unistd; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I assume this needs to be filled in right? Or deleted.
I'd appreciate if you could at least make unistd.rs and pthread.rs in src/new roughly matching their .h files, since I've ported most other platforms at this point. Everything else is up to you; you can either add the modules like you have here (eventually everything will hopefully be like this) or just put it all in src/qurt like most other platforms (and I'll move them over later).
| //! QuRT (Qualcomm Real-Time OS) bindings | ||
| //! | ||
| //! QuRT is Qualcomm's real-time operating system for Hexagon DSP architectures. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mind adding a link to the SDK sources?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here, in the PR comments or in the comments of src/new/qurt/mod.rs?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The doc comment - I've been doing this for src/new to give some breadcrumbs for anyone who wants to check / update things.
|
Reminder, once the PR becomes ready for a review, use |
The QuRT RTOS -- used primarily on the Hexagon architecture -- has support for large parts of POSIX.
Description
Add support for Hexagon QuRT OS.
Sources
The corresponding sources from the Hexagon SDK from https://github.com/snapdragon-toolchain/hexagon-sdk or https://softwarecenter.qualcomm.com/catalog/item/Hexagon_SDK
Checklist
libc-test/semverhave been updated*LASTor*MAXareincluded (see #3131)
cd libc-test && cargo test --target mytarget);especially relevant for platforms that may not be checked in CI