diff options
Diffstat (limited to 'poky/meta/recipes-devtools/rust/rust-source.inc')
-rw-r--r-- | poky/meta/recipes-devtools/rust/rust-source.inc | 26 |
1 files changed, 18 insertions, 8 deletions
diff --git a/poky/meta/recipes-devtools/rust/rust-source.inc b/poky/meta/recipes-devtools/rust/rust-source.inc index 0c85b4b480..6f1df4561b 100644 --- a/poky/meta/recipes-devtools/rust/rust-source.inc +++ b/poky/meta/recipes-devtools/rust/rust-source.inc @@ -1,13 +1,23 @@ -SRC_URI += "https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz;name=rust" -SRC_URI[rust.sha256sum] = "2d6aa2ea3fedd55acbbd65f78349385f9daa9c14e25db7a8df5d015588eee1cf" +RUST_VERSION ?= "${@d.getVar('PV').split('-')[0]}" -SRC_URI:append:class-target:pn-rust = " \ - file://hardcodepaths.patch \ - file://crossbeam_atomic.patch \ - file://0001-Add-ENOTSUP-constant-for-riscv32-musl.patch" -SRC_URI:append:class-nativesdk:pn-nativesdk-rust = " file://hardcodepaths.patch" +SRC_URI += "https://static.rust-lang.org/dist/rustc-${RUST_VERSION}-src.tar.xz;name=rust \ + file://crossbeam_atomic.patch;patchdir=${RUSTSRC} \ + file://hardcodepaths.patch;patchdir=${RUSTSRC} \ + file://getrandom-open64.patch;patchdir=${RUSTSRC} \ + file://0001-Do-not-use-LFS64-on-linux-with-musl.patch;patchdir=${RUSTSRC} \ + file://zlib-off64_t.patch;patchdir=${RUSTSRC} \ +" +SRC_URI[rust.sha256sum] = "0dc176e34fae9871f855a6ba4cb30fa19d69c5b4428d29281a07419c4950715c" -RUSTSRC = "${WORKDIR}/rustc-${PV}-src" +RUSTSRC = "${WORKDIR}/rustc-${RUST_VERSION}-src" + +# Used by crossbeam_atomic.patch +export TARGET_VENDOR UPSTREAM_CHECK_URI = "https://forge.rust-lang.org/infra/other-installation-methods.html" UPSTREAM_CHECK_REGEX = "rustc-(?P<pver>\d+(\.\d+)+)-src" + +# see recipes-devtools/gcc/gcc/0018-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch +# we need to link with ssp_nonshared on musl to avoid "undefined reference to `__stack_chk_fail_local'" +# when building MACHINE=qemux86 for musl +WRAPPER_TARGET_EXTRALD:libc-musl = "-lssp_nonshared" |