std: add platform support for hexagon-unknown-qurt#152084
std: add platform support for hexagon-unknown-qurt#152084androm3da wants to merge 2 commits intorust-lang:mainfrom
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
791d71f to
3201966
Compare
|
This PR depends on a newer version of the |
This comment has been minimized.
This comment has been minimized.
You need |
|
@rustbot author |
|
Reminder, once the PR becomes ready for a review, use |
The commit I need - rust-lang/libc@9934c04 is not yet tagged/released. Or rather there is a |
This comment has been minimized.
This comment has been minimized.
3201966 to
5adcafb
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Ah - I see now that it appears in |
This comment has been minimized.
This comment has been minimized.
5adcafb to
caab9c9
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
caab9c9 to
3749f50
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
@rustbot ready |
14aa853 to
de8ba26
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
535996f to
c017dd6
Compare
|
gentle ping @joboet |
|
LGTM once |
53a33f8 to
c526632
Compare
This comment has been minimized.
This comment has been minimized.
Fixed |
|
Looks like |
c526632 to
1325ffa
Compare
Fixed, thanks |
|
ping @joboet |
|
Sorry for the delay, I was taking a bit of a break from reviewing. Could you provide a bit more context on QuRT? It looks like quite a lot of UNIX stuff is stubbed out here. How much UNIX-compatibility does QuRT actually provide? I'm asking because we have some similar UNIX-adjacent targets (e.g. Hermit, TEEOS) that don't list UNIX as their target family and instead just reuse the UNIX code in @rustbot label +I-libs-nominated |
QuRT is a proprietary RTOS for Hexagon, ARM, RISC-V architectures that is usually focused on embedded DSP/uC devices without a direct storage device, without an interactive terminal/shell/UART. It has memory-protected processes, some POSIX capability like pthreads/mutexes. QuRT lacks SysV IPC. QuRT provides an indirect access to a filesystem via calls to some-other-SoC-node-with-a-disk. But yeah - I'm totally fine w/redoing this PR to avoid touching UNIX and making it look more like hermit/teeos. Will take a look and update the PR. |
Remove unix family from hexagon-unknown-qurt target spec and instead explicitly opt into unix implementations where applicable, following the pattern used by similar unix-adjacent targets. The target uses the unix PAL and explicitly selects unix implementations for the supported features. Modules that remain unsupported for qurt: process spawning, networking and pipes.
Update documentation with details about how to leverage qurt, now that there's some level of libstd support
1325ffa to
1bd87eb
Compare
|
Some changes occurred in src/doc/rustc/src/platform-support cc @Noratrieb These commits modify compiler targets. |
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
View all comments
QuRT provides POSIX-like APIs for basic operations, so this implementation reuses the unix platform abstraction layer with QuRT-specific customizations.
Platform modules:
Unsupported: Networking, fork/exec, pipe, chown/fchown/lchown/chroot/mkfifo