- This release includes a number of changes to support building on many more platforms.
- The full list of architectures that binaries are released for is:
- FreeBSD x86-64 new
- Linux x86-64
- Linux aarch64 (aka arm64)
- Linux arm (32-bit)
- Linux i586 (x86 32-bit) new
- Linux mips (32-bit) new
- Linux mipsel (32-bit little-endian) new
- Linux mips64 new
- Linux mips64el (little-endian) new
- Linux PowerPC (32-bit) new
- Linux PowerPC64 new
- Linux PowerPC64le (little-endian) new
- Linux riscv64 new
- Linux s390x new
- NetBSD x86-64 new
- Windows x86-64
- Windows i686 (32-bit) new
- Windows aarch64 (aka arm64) new
- macOS x86-64
- macOS aarch64 (aka arm64)
- The code supports some other OS and CPU architectures internally, but I do not have any way to build these:
- Fuchsia x86-64 and aarch64 - not supported by
cross
. - Illumos x86-64 - OpenSSL build fails with odd error about
granlib
executable. - Linux Sparc64 - not supported by OpenSSL.
- Solaris x86-64 - supported by
cross
but building themio
crate fails. - Solaris Sparc - not supported by OpenSSL.
- Fuchsia x86-64 and aarch64 - not supported by
- In order to do this,
ubi
now uses theopenssl
crate under the hood instead ofrustls
. That's becauserustls
depends onring
, which does not support nearly as many CPU architectures as OpenSSL. Thevendored
feature for theopenssl
crate is enabled, which causes it to compile and statically link a copy of OpenSSL into the resulting binary. This makes the resulting binary more portable at the cost of not using the system OpenSSL.
- The full list of architectures that binaries are released for is: