apache / incubator-teaclave-sgx-sdk

Apache Teaclave (incubating) SGX SDK helps developers to write Intel SGX applications in the Rust programming language, and also known as Rust SGX SDK.
https://teaclave.apache.org
Apache License 2.0
1.16k stars 257 forks source link

Use `std`-aware cargo instead of `sgx_tstd` / xargo #75

Open tarcieri opened 5 years ago

tarcieri commented 5 years ago

This is mostly a heads up that design work is underway to allow parts of std to be swappable via cargo:

https://internals.rust-lang.org/t/pre-rfc-std-aware-cargo/9450

Would be good to make sure this feature meets the needs of rust-sgx-sdk

dingelish commented 5 years ago

agree!

seems to be something like "core-customizable xargo". am i correct? it'll be fantastic for embedded systems and TEEs!

elichai commented 4 years ago

Merged :) https://github.com/rust-lang/cargo/pull/7216

Hopefully this can mean no longer maintaining any third party forks!

dingelish commented 4 years ago

@elichai Wow! Let me dig into it. My current thought is that let me upgrade to Intel SGX SDK v2.7 and provide threading support in the current style. And then I think we should move forward to the std-aware rust toolchain!

dingelish commented 4 years ago

The 3rd party problem still persists, because we may adjust something on file access such as tweaking std::untrusted::fs, or std::sgxfs. But I believe that some foundation crates would be fine without any modification such as serde and ring. For cpuid based feature detection, we do have a way to solve without triggering the unsupported instruction or any AEX.