Closed hoanga closed 1 year ago
Actually this could probably be folded into the pipe-based impl used by non-ESP-IDF systems. Just replace the pipe_with()
call with Err(ENOSYS)
.
i have added an extra ci check that runs cargo check for haiku (x86-64) per suggestion.
in regards to replacing pipe_with()
call with Err(ENOSYS)
, i am not sure i completely follow what you're getting at. does that also mean replacing the use declaration of rustix::pipe::pipe_with
as well?
in regards to replacing
pipe_with()
call withErr(ENOSYS)
, i am not sure i completely follow what you're getting at. does that also mean replacing the use declaration ofrustix::pipe::pipe_with
as well?
I would just modify the pipe-based notifier to do something like this:
#[cfg(not(target_os = "haiku"))]
let pipe = pipe_with(...).ok();
#[cfg(target_os = "haiku")]
let pipe = None;
let (read, write) = pipe.unwrap_or_else(|| {
let (read, write) = pipe();
...
});
ah, gotcha. makes sense now. i have pushed some updates that folds the haiku and non-ESP-IDF sections as per suggestion and also keeps tests passing (and on haiku as well). thanks for the pointers!
hello!
this changeset fixes an error that occurs when trying to compile on haiku that would typically show up like so:
haiku doesn't offer pipe2() which appears to be the problem. this changeset updates the haiku case to prefer pipe() instead. an example test run with patch applied is shown below: