| # All host rust packages should depend on this option |
| config BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS |
| bool |
| default y if BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" |
| |
| # All target rust packages should depend on this option |
| config BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS |
| bool |
| # The pre-built Rust standard library is only available for the |
| # following architectures/ABIs, and is built against glibc. |
| default y if BR2_i386 |
| default y if BR2_x86_64 |
| default y if BR2_aarch64 |
| default y if BR2_arm && !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV5 \ |
| && !(BR2_ARM_CPU_ARMV7A && BR2_ARM_EABI) |
| default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le |
| default y if (BR2_mips || BR2_mipsel) && !BR2_MIPS_CPU_MIPS32R6 |
| default y if (BR2_mips64 || BR2_mips64el) && !BR2_MIPS_CPU_MIPS64R6 \ |
| && BR2_MIPS_NABI64 |
| depends on BR2_TOOLCHAIN_USES_GLIBC |
| depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS |
| |
| config BR2_PACKAGE_HOST_RUSTC_ARCH |
| string |
| default "armv7" if BR2_ARM_CPU_ARMV7A |
| default BR2_ARCH if !BR2_ARM_CPU_ARMV7A |
| |
| config BR2_PACKAGE_HOST_RUSTC_ABI |
| string |
| default "eabi" if BR2_ARM_EABI |
| default "eabihf" if BR2_ARM_EABIHF |
| default "abi64" if BR2_MIPS_NABI64 |
| |
| config BR2_PACKAGE_HOST_RUSTC |
| bool "host rustc" |
| depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS |
| help |
| Compiler for the Rust language |
| |
| http://www.rust-lang.org |
| |
| if BR2_PACKAGE_HOST_RUSTC |
| |
| choice |
| prompt "Rust compiler variant" |
| default BR2_PACKAGE_HOST_RUST_BIN |
| help |
| Select a Rust compiler |
| |
| config BR2_PACKAGE_HOST_RUST |
| bool "host rust" |
| # RUSTC_TARGET_NAME must be set for building host-rust |
| # otherwise config.toml is broken. |
| depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS |
| # triggers ICE on trunc_int_for_mode, at explow.c:56 |
| depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 || !BR2_aarch64 |
| help |
| This package will build the compiler for the host as well as |
| two flavors of the standard library: one for the host, another |
| for the target. Both are installed in the host directory. |
| |
| comment "host-rust needs a toolchain w/ gcc >= 5" |
| depends on BR2_aarch64 |
| depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_5 |
| |
| config BR2_PACKAGE_HOST_RUST_BIN |
| bool "host rust (pre-built)" |
| help |
| This package will install pre-built versions of the compiler |
| for the host and the Rust standard library for the target. |
| |
| endchoice |
| |
| endif |
| |
| config BR2_PACKAGE_PROVIDES_HOST_RUSTC |
| string |
| default "host-rust" if BR2_PACKAGE_HOST_RUST |
| # Default to host-rust-bin as long as host arch supports it |
| default "host-rust-bin" if !BR2_PACKAGE_HOST_RUST |
| depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS |