You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[RFC][wip] rustix: on Linux, support a build without linux-raw-sys
Rustix support was added to Mesa3D recently, but it only works
with the linux-raw-sys backend. On Linux, even the libc
backend, there is a dependency on linux-raw-sys for certain ABI
definitions.
When updating rustix in Android to support this, I realized only
the libc backend is supported in Android. This is because
Android as a platform wants to discourage raw syscalls, and to
be able to globally update libc.
Features like fdtrack would not work with the linux-raw-sys backend:
https://android.googlesource.com/platform/bionic/+/HEAD/docs/fdtrack.md
Given Android wants to incentize use of libc only, this MR introduces
the concept of "linux-raw-dep". This means that linux-raw-sys is
present as a dependency for the user. This will be on by default
even for the libc backend, but will be turned off for Android.
This will also help others who don't need all the features rustix
offers on Linux, so they have one less dependency to maintain.
Tested via:
cargo build --features=use-libc,net,std,alloc,event,fs,mm,param,pipe
These are the same set of features needed by Mesa3D.
0 commit comments