e3bcddb44b
This pull request adds support for [Illumos](http://illumos.org/)-based operating systems: SmartOS, OpenIndiana, and others. For now it's x86-64 only, as I'm not sure if 32-bit installations are widespread. This PR is based on #28589 by @potatosalad, and also closes #21000, #25845, and #25846. Required changes in libc are already merged: https://github.com/rust-lang-nursery/libc/pull/138 Here's a snapshot required to build a stage0 compiler: https://s3-eu-west-1.amazonaws.com/nbaksalyar/rustc-sunos-snapshot.tar.gz It passes all checks from `make check`. There are some changes I'm not quite sure about, e.g. macro usage in `src/libstd/num/f64.rs` and `DirEntry` structure in `src/libstd/sys/unix/fs.rs`, so any comments on how to rewrite it better would be greatly appreciated. Also, LLVM configure script might need to be patched to build it successfully, or a pre-built libLLVM should be used. Some details can be found here: https://llvm.org/bugs/show_bug.cgi?id=25409 Thanks! r? @brson |
||
---|---|---|
.. | ||
aarch64-apple-ios.mk | ||
aarch64-linux-android.mk | ||
aarch64-unknown-linux-gnu.mk | ||
arm-linux-androideabi.mk | ||
arm-unknown-linux-gnueabi.mk | ||
arm-unknown-linux-gnueabihf.mk | ||
armv7-apple-ios.mk | ||
armv7-unknown-linux-gnueabihf.mk | ||
armv7s-apple-ios.mk | ||
i386-apple-ios.mk | ||
i686-apple-darwin.mk | ||
i686-linux-android.mk | ||
i686-pc-windows-gnu.mk | ||
i686-pc-windows-msvc.mk | ||
i686-unknown-freebsd.mk | ||
i686-unknown-linux-gnu.mk | ||
le32-unknown-nacl.mk | ||
mips-unknown-linux-gnu.mk | ||
mips-unknown-linux-musl.mk | ||
mipsel-unknown-linux-gnu.mk | ||
mipsel-unknown-linux-musl.mk | ||
powerpc64-unknown-linux-gnu.mk | ||
powerpc64le-unknown-linux-gnu.mk | ||
powerpc-unknown-linux-gnu.mk | ||
x86_64-apple-darwin.mk | ||
x86_64-apple-ios.mk | ||
x86_64-pc-windows-gnu.mk | ||
x86_64-pc-windows-msvc.mk | ||
x86_64-rumprun-netbsd.mk | ||
x86_64-sun-solaris.mk | ||
x86_64-unknown-bitrig.mk | ||
x86_64-unknown-dragonfly.mk | ||
x86_64-unknown-freebsd.mk | ||
x86_64-unknown-linux-gnu.mk | ||
x86_64-unknown-linux-musl.mk | ||
x86_64-unknown-netbsd.mk | ||
x86_64-unknown-openbsd.mk |