summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/rust/rust-cross.inc
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/rust/rust-cross.inc')
-rw-r--r--meta/recipes-devtools/rust/rust-cross.inc47
1 files changed, 0 insertions, 47 deletions
diff --git a/meta/recipes-devtools/rust/rust-cross.inc b/meta/recipes-devtools/rust/rust-cross.inc
deleted file mode 100644
index ab538e6659..0000000000
--- a/meta/recipes-devtools/rust/rust-cross.inc
+++ /dev/null
@@ -1,47 +0,0 @@
1RUST_TARGETGENS = "BUILD HOST TARGET"
2
3# Otherwise we'll depend on what we provide
4INHIBIT_DEFAULT_RUST_DEPS = "1"
5
6# Unlike native (which nicely maps it's DEPENDS) cross wipes them out completely.
7# Generally, we (and cross in general) need the same things that native needs,
8# so it might make sense to take it's mapping. For now, though, we just mention
9# the bits we need explicitly.
10DEPENDS += "rust-llvm-native"
11DEPENDS += "rust-native"
12
13# In the cross compilation case, rustc doesn't seem to get the rpath quite
14# right. It manages to include '../../lib/${TARGET_PREFIX}', but doesn't
15# include the '../../lib' (ie: relative path from cross_bindir to normal
16# libdir. As a result, we end up not being able to properly reference files in normal ${libdir}.
17# Most of the time this happens to work fine as the systems libraries are
18# subsituted, but sometimes a host system will lack a library, or the right
19# version of a library (libtinfo was how I noticed this).
20#
21# FIXME: this should really be fixed in rust itself.
22# FIXME: using hard-coded relative paths is wrong, we should ask bitbake for
23# the relative path between 2 of it's vars.
24HOST_POST_LINK_ARGS:append = " -Wl,-rpath=../../lib"
25BUILD_POST_LINK_ARGS:append = " -Wl,-rpath=../../lib"
26
27# We need the same thing for the calls to the compiler when building the runtime crap
28TARGET_CC_ARCH:append = " --sysroot=${STAGING_DIR_TARGET}"
29
30do_rust_setup_snapshot () {
31}
32
33do_configure () {
34}
35
36do_compile () {
37}
38
39do_install () {
40 mkdir -p ${D}${prefix}/${base_libdir_native}/rustlib
41 cp ${WORKDIR}/targets/${TARGET_SYS}.json ${D}${prefix}/${base_libdir_native}/rustlib
42}
43
44rust_cross_sysroot_preprocess() {
45 sysroot_stage_dir ${D}${prefix}/${base_libdir_native}/rustlib ${SYSROOT_DESTDIR}${prefix}/${base_libdir_native}/rustlib
46}
47SYSROOT_PREPROCESS_FUNCS += "rust_cross_sysroot_preprocess"