summaryrefslogtreecommitdiffstats
path: root/package/rustc
diff options
context:
space:
mode:
Diffstat (limited to 'package/rustc')
-rw-r--r--package/rustc/Config.in.host31
-rw-r--r--package/rustc/rustc.mk20
2 files changed, 51 insertions, 0 deletions
diff --git a/package/rustc/Config.in.host b/package/rustc/Config.in.host
new file mode 100644
index 0000000000..a49f635d65
--- /dev/null
+++ b/package/rustc/Config.in.host
@@ -0,0 +1,31 @@
+config BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS
+ bool
+ depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+ # 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
+ default y if BR2_powerpc || BR2_powerpc64
+ 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
+
+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_HAS_HOST_RUSTC
+ bool
+
+config BR2_PACKAGE_PROVIDES_HOST_RUSTC
+ string
diff --git a/package/rustc/rustc.mk b/package/rustc/rustc.mk
new file mode 100644
index 0000000000..7a951c0cfd
--- /dev/null
+++ b/package/rustc/rustc.mk
@@ -0,0 +1,20 @@
+################################################################################
+#
+# rustc
+#
+################################################################################
+
+RUSTC_ARCH = $(call qstrip,$(BR2_PACKAGE_HOST_RUSTC_ARCH))
+RUSTC_ABI = $(call qstrip,$(BR2_PACKAGE_HOST_RUSTC_ABI))
+
+RUST_TARGET_NAME = $(RUSTC_ARCH)-unknown-linux-gnu$(RUSTC_ABI)
+
+ifeq ($(HOSTARCH),x86)
+RUSTC_HOST_ARCH = i686
+else
+RUSTC_HOST_ARCH = $(HOSTARCH)
+endif
+
+RUST_HOST_NAME = $(RUSTC_HOST_ARCH)-unknown-linux-gnu
+
+$(eval $(host-virtual-package))
OpenPOWER on IntegriCloud