diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 9030c05..1636bed 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -2,8 +2,8 @@ on: [pull_request] jobs: build: env: - YOCTO_VERSION: 3.2.3 - YOCTO_BRANCH: gatesgarth + YOCTO_VERSION: 3.3.2 + YOCTO_BRANCH: hardknott runs-on: self-hosted steps: - uses: actions/checkout@v2 @@ -13,7 +13,7 @@ jobs: run: | mv poky/build/sstate-cache . || true rm -rf poky meta-openembedded - git clone -b yocto-$YOCTO_VERSION --single-branch git://git.yoctoproject.org/poky + git clone -b $YOCTO_BRANCH --single-branch git://git.yoctoproject.org/poky git clone -b $YOCTO_BRANCH --single-branch git://git.openembedded.org/meta-openembedded - name: Configure build run: | @@ -22,8 +22,8 @@ jobs: mv ../../sstate-cache . || true bitbake-layers add-layer ../../meta-openembedded/meta-oe bitbake-layers add-layer ../../meta-rust - echo 'PARALLEL_MAKE_pn-rust-llvm-native = "-j2"' >> conf/local.conf - echo 'TOOLCHAIN_HOST_TASK_append = " packagegroup-rust-cross-canadian-${MACHINE}"' >> conf/local.conf + echo 'PARALLEL_MAKE:pn-rust-llvm-native = "-j2"' >> conf/local.conf + echo 'TOOLCHAIN_HOST_TASK:append = " packagegroup-rust-cross-canadian-${MACHINE}"' >> conf/local.conf echo "SSTATE_MIRRORS = \"file://.* http://sstate.yoctoproject.org/$YOCTO_VERSION/PATH;downloadfilename=PATH \\n\"" >> conf/local.conf echo 'PREFERRED_PROVIDER_virtual/kernel = "linux-dummy"' >> conf/local.conf - name: Run bitbake diff --git a/classes/cargo.bbclass b/classes/cargo.bbclass index 3fcae4f..0ca3814 100644 --- a/classes/cargo.bbclass +++ b/classes/cargo.bbclass @@ -9,11 +9,11 @@ inherit cargo_common CARGO = "cargo" # We need cargo to compile for the target -BASEDEPENDS_append = " cargo-native" +BASEDEPENDS:append = " cargo-native" # Ensure we get the right rust variant -DEPENDS_append_class-target = " virtual/${TARGET_PREFIX}rust ${RUSTLIB_DEP}" -DEPENDS_append_class-native = " rust-native" +DEPENDS:append:class-target = " virtual/${TARGET_PREFIX}rust ${RUSTLIB_DEP}" +DEPENDS:append:class-native = " rust-native" # Enable build separation B = "${WORKDIR}/build" diff --git a/classes/rust-bin.bbclass b/classes/rust-bin.bbclass index 6819c9e..c87343b 100644 --- a/classes/rust-bin.bbclass +++ b/classes/rust-bin.bbclass @@ -1,6 +1,6 @@ inherit rust -RDEPENDS_${PN}_append_class-target = " ${RUSTLIB_DEP}" +RDEPENDS:${PN}:append:class-target = " ${RUSTLIB_DEP}" RUSTC_ARCHFLAGS += "-C opt-level=3 -g -L ${STAGING_DIR_HOST}/${rustlibdir} -C linker=${RUST_TARGET_CCLD}" EXTRA_OEMAKE += 'RUSTC_ARCHFLAGS="${RUSTC_ARCHFLAGS}"' diff --git a/classes/rust-common.bbclass b/classes/rust-common.bbclass index d550262..2093654 100644 --- a/classes/rust-common.bbclass +++ b/classes/rust-common.bbclass @@ -1,8 +1,8 @@ # Common variables used by all Rust builds export rustlibdir = "${libdir}/rust" -FILES_${PN} += "${rustlibdir}/*.so" -FILES_${PN}-dev += "${rustlibdir}/*.rlib ${rustlibdir}/*.rmeta" -FILES_${PN}-dbg += "${rustlibdir}/.debug" +FILES:${PN} += "${rustlibdir}/*.so" +FILES:${PN}-dev += "${rustlibdir}/*.rlib ${rustlibdir}/*.rmeta" +FILES:${PN}-dbg += "${rustlibdir}/.debug" RUSTLIB = "-L ${STAGING_LIBDIR}/rust" RUST_DEBUG_REMAP = "--remap-path-prefix=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}" @@ -14,7 +14,7 @@ RUST_PANIC_STRATEGY ?= "unwind" # Native builds are not effected by TCLIBC. Without this, rust-native # thinks it's "target" (i.e. x86_64-linux) is a musl target. RUST_LIBC = "${TCLIBC}" -RUST_LIBC_class-native = "glibc" +RUST_LIBC:class-native = "glibc" def determine_libc(d, thing): '''Determine which libc something should target''' @@ -27,7 +27,7 @@ def determine_libc(d, thing): elif thing == 'BUILD' and (d.getVar('HOST_SYS') != d.getVar('BUILD_SYS')): libc = d.getVar('RUST_LIBC') else: - libc = d.getVar('RUST_LIBC_class-native') + libc = d.getVar('RUST_LIBC:class-native') return libc @@ -103,7 +103,7 @@ def rust_base_triple(d, thing): # # Rust additionally will use two additional cases: # - undecorated (e.g. CC) - equivalent to TARGET -# - triple suffix (e.g. CC_x86_64_unknown_linux_gnu) - both +# - triple suffix (e.g. CC:x86_64_unknown_linux_gnu) - both # see: https://github.com/alexcrichton/gcc-rs # The way that Rust's internal triples and Yocto triples are mapped together # its likely best to not use the triple suffix due to potential confusion. diff --git a/classes/rust.bbclass b/classes/rust.bbclass index ec9ad54..5c8938d 100644 --- a/classes/rust.bbclass +++ b/classes/rust.bbclass @@ -15,7 +15,7 @@ def rust_base_dep(d): deps += " rust-native" return deps -DEPENDS_append = " ${@rust_base_dep(d)}" +DEPENDS:append = " ${@rust_base_dep(d)}" # BUILD_LDFLAGS # ${STAGING_LIBDIR_NATIVE} @@ -42,4 +42,4 @@ rustlib_suffix="${TUNE_ARCH}${TARGET_VENDOR}-${TARGET_OS}/rustlib/${HOST_SYS}/li rustlib_src="${prefix}/lib/${rustlib_suffix}" # Host sysroot standard library path rustlib="${libdir}/${rustlib_suffix}" -rustlib_class-native="${libdir}/rustlib/${BUILD_SYS}/lib" +rustlib:class-native="${libdir}/rustlib/${BUILD_SYS}/lib" diff --git a/conf/distro/include/rust_security_flags.inc b/conf/distro/include/rust_security_flags.inc index 7e6377e..590bef1 100644 --- a/conf/distro/include/rust_security_flags.inc +++ b/conf/distro/include/rust_security_flags.inc @@ -1,7 +1,7 @@ # Build errors with PIE options enabled -SECURITY_CFLAGS_pn-rust-native = "${SECURITY_NO_PIE_CFLAGS}" -SECURITY_CFLAGS_pn-rust-cross-${TARGET_ARCH} = "${SECURITY_NO_PIE_CFLAGS}" -SECURITY_CFLAGS_pn-rust = "${SECURITY_NO_PIE_CFLAGS}" -SECURITY_CFLAGS_pn-rust-llvm = "${SECURITY_NO_PIE_CFLAGS}" +SECURITY_CFLAGS:pn-rust-native = "${SECURITY_NO_PIE_CFLAGS}" +SECURITY_CFLAGS:pn-rust-cross-${TARGET_ARCH} = "${SECURITY_NO_PIE_CFLAGS}" +SECURITY_CFLAGS:pn-rust = "${SECURITY_NO_PIE_CFLAGS}" +SECURITY_CFLAGS:pn-rust-llvm = "${SECURITY_NO_PIE_CFLAGS}" -SECURITY_LDFLAGS_pn-rust-cross-arm = " -lssp_nonshared -lssp" +SECURITY_LDFLAGS:pn-rust-cross-arm = " -lssp_nonshared -lssp" diff --git a/conf/layer.conf b/conf/layer.conf index 7e1ca93..53b2368 100644 --- a/conf/layer.conf +++ b/conf/layer.conf @@ -9,7 +9,7 @@ BBFILE_PATTERN_rust-layer := "^${LAYERDIR}/" BBFILE_PRIORITY_rust-layer = "7" LAYERDEPENDS_rust-layer = "core openembedded-layer" -LAYERSERIES_COMPAT_rust-layer = "rocko sumo thud warrior zeus dunfell gatesgarth hardknott" +LAYERSERIES_COMPAT_rust-layer = "dunfell gatesgarth hardknott honister" # Override security flags require conf/distro/include/rust_security_flags.inc diff --git a/conf/local.conf.sample b/conf/local.conf.sample index c5ccf1b..35dfc19 100644 --- a/conf/local.conf.sample +++ b/conf/local.conf.sample @@ -232,8 +232,8 @@ INHERIT += "own-mirrors rm_work" # seen. The two lines below enable the SDL backend too. By default libsdl-native will # be built, if you want to use your host's libSDL instead of the minimal libsdl built # by libsdl-native then uncomment the ASSUME_PROVIDED line below. -PACKAGECONFIG_append_pn-qemu-native = " sdl" -PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl" +PACKAGECONFIG:append:pn-qemu-native = " sdl" +PACKAGECONFIG:append:pn-nativesdk-qemu = " sdl" #ASSUME_PROVIDED += "libsdl-native" # CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to diff --git a/recipes-core/packagegroups/packagegroup-rust-cross-canadian.bb b/recipes-core/packagegroups/packagegroup-rust-cross-canadian.bb index a623eef..0d4f5ec 100644 --- a/recipes-core/packagegroups/packagegroup-rust-cross-canadian.bb +++ b/recipes-core/packagegroups/packagegroup-rust-cross-canadian.bb @@ -9,7 +9,7 @@ RUST="rust-cross-canadian-${TRANSLATED_TARGET_ARCH}" CARGO="cargo-cross-canadian-${TRANSLATED_TARGET_ARCH}" RUST_TOOLS="rust-tools-cross-canadian-${TRANSLATED_TARGET_ARCH}" -RDEPENDS_${PN} = " \ +RDEPENDS:${PN} = " \ ${@all_multilib_tune_values(d, 'RUST')} \ ${@all_multilib_tune_values(d, 'CARGO')} \ rust-cross-canadian-src \ diff --git a/recipes-devtools/cargo/cargo-cross-canadian.inc b/recipes-devtools/cargo/cargo-cross-canadian.inc index d05d048..840793c 100644 --- a/recipes-devtools/cargo/cargo-cross-canadian.inc +++ b/recipes-devtools/cargo/cargo-cross-canadian.inc @@ -9,7 +9,7 @@ require recipes-devtools/rust/rust-common.inc require cargo.inc CARGO = "${WORKDIR}/${CARGO_SNAPSHOT}/bin/cargo" -BASEDEPENDS_remove = "cargo-native" +BASEDEPENDS:remove = "cargo-native" export RUST_TARGET_PATH="${WORKDIR}/targets/" @@ -37,7 +37,7 @@ python do_rust_gen_targets () { rust_gen_target(d, 'HOST', wd, "", "generic", d.getVar('HOST_ARCH')) } -do_compile_prepend () { +do_compile:prepend () { PKG_CONFIG_PATH="${RECIPE_SYSROOT_NATIVE}/usr/lib/pkgconfig:${PKG_CONFIG_PATH}" } @@ -70,5 +70,5 @@ do_install () { } PKG_SYS_BINDIR = "${SDKPATHNATIVE}/usr/bin" -FILES_${PN} += "${base_prefix}/environment-setup.d ${PKG_SYS_BINDIR}" +FILES:${PN} += "${base_prefix}/environment-setup.d ${PKG_SYS_BINDIR}" diff --git a/recipes-devtools/cargo/cargo-cross-canadian_1.49.0.bb b/recipes-devtools/cargo/cargo-cross-canadian_1.49.0.bb index 56c6f62..dba400b 100644 --- a/recipes-devtools/cargo/cargo-cross-canadian_1.49.0.bb +++ b/recipes-devtools/cargo/cargo-cross-canadian_1.49.0.bb @@ -1,6 +1,6 @@ require recipes-devtools/rust/rust-source-${PV}.inc require recipes-devtools/rust/rust-snapshot-${PV}.inc -FILESEXTRAPATHS_prepend := "${THISDIR}/cargo-${PV}:" +FILESEXTRAPATHS:prepend := "${THISDIR}/cargo-${PV}:" require cargo-cross-canadian.inc diff --git a/recipes-devtools/cargo/cargo-cross-canadian_1.51.0.bb b/recipes-devtools/cargo/cargo-cross-canadian_1.51.0.bb index 56c6f62..dba400b 100644 --- a/recipes-devtools/cargo/cargo-cross-canadian_1.51.0.bb +++ b/recipes-devtools/cargo/cargo-cross-canadian_1.51.0.bb @@ -1,6 +1,6 @@ require recipes-devtools/rust/rust-source-${PV}.inc require recipes-devtools/rust/rust-snapshot-${PV}.inc -FILESEXTRAPATHS_prepend := "${THISDIR}/cargo-${PV}:" +FILESEXTRAPATHS:prepend := "${THISDIR}/cargo-${PV}:" require cargo-cross-canadian.inc diff --git a/recipes-devtools/cargo/cargo.inc b/recipes-devtools/cargo/cargo.inc index 0204b77..3b9258b 100644 --- a/recipes-devtools/cargo/cargo.inc +++ b/recipes-devtools/cargo/cargo.inc @@ -25,7 +25,7 @@ do_cargo_setup_snapshot () { addtask cargo_setup_snapshot after do_unpack before do_configure do_cargo_setup_snapshot[dirs] += "${WORKDIR}/${CARGO_SNAPSHOT}" -do_compile_prepend () { +do_compile:prepend () { export RUSTC_BOOTSTRAP="1" } @@ -47,5 +47,5 @@ BBCLASSEXTEND = "native nativesdk" # When building cargo-native we don't have cargo-native to use and depend on, # so we must use the locally set up snapshot to bootstrap the build. -BASEDEPENDS_remove_class-native = "cargo-native" -CARGO_class-native = "${WORKDIR}/${CARGO_SNAPSHOT}/bin/cargo" +BASEDEPENDS:remove:class-native = "cargo-native" +CARGO:class-native = "${WORKDIR}/${CARGO_SNAPSHOT}/bin/cargo" diff --git a/recipes-devtools/rust/libstd-rs.inc b/recipes-devtools/rust/libstd-rs.inc index 1bf2dab..9879563 100644 --- a/recipes-devtools/rust/libstd-rs.inc +++ b/recipes-devtools/rust/libstd-rs.inc @@ -7,10 +7,10 @@ LIC_FILES_CHKSUM = "file://../../COPYRIGHT;md5=93a95682d51b4cb0a633a97046940ef0" RUSTLIB_DEP = "" inherit cargo -DEPENDS_append_libc-musl = " libunwind" +DEPENDS:append:libc-musl = " libunwind" # rv32 does not have libunwind ported yet -DEPENDS_remove_riscv32 = "libunwind" -DEPENDS_remove_riscv64 = "libunwind" +DEPENDS:remove:riscv32 = "libunwind" +DEPENDS:remove:riscv64 = "libunwind" # Embed bitcode in order to allow compiling both with and without LTO RUSTFLAGS += "-Cembed-bitcode=yes" @@ -23,7 +23,7 @@ CARGO_FEATURES ?= "panic-unwind backtrace" CARGO_BUILD_FLAGS += "--features '${CARGO_FEATURES}'" CARGO_VENDORING_DIRECTORY = "${RUSTSRC}/vendor" -do_compile_prepend () { +do_compile:prepend () { export CARGO_TARGET_DIR="${B}" # For Rust 1.13.0 and newer export RUSTC_BOOTSTRAP="1" diff --git a/recipes-devtools/rust/rust-common.inc b/recipes-devtools/rust/rust-common.inc index 1c4be2c..350517c 100644 --- a/recipes-devtools/rust/rust-common.inc +++ b/recipes-devtools/rust/rust-common.inc @@ -287,7 +287,7 @@ TARGET_LLVM_FEATURES = "${@llvm_features(d)}" # class-native implies TARGET=HOST, and TUNE_FEATURES only describes the real # (original) target. -TARGET_LLVM_FEATURES_class-native = "${@','.join(llvm_features_from_cc_arch(d))}" +TARGET_LLVM_FEATURES:class-native = "${@','.join(llvm_features_from_cc_arch(d))}" def rust_gen_target(d, thing, wd, features, cpu, arch): import json diff --git a/recipes-devtools/rust/rust-cross-canadian-common.inc b/recipes-devtools/rust/rust-cross-canadian-common.inc index d6f3a51..c5d56bb 100644 --- a/recipes-devtools/rust/rust-cross-canadian-common.inc +++ b/recipes-devtools/rust/rust-cross-canadian-common.inc @@ -39,13 +39,13 @@ export WRAPPER_TARGET_CCLD = "${TARGET_PREFIX}gcc --sysroot=${STAGING_DIR_TARGET export WRAPPER_TARGET_LDFLAGS = "${TARGET_LDFLAGS}" export WRAPPER_TARGET_AR = "${TARGET_PREFIX}ar" -python do_configure_prepend() { +python do_configure:prepend() { targets = [d.getVar("TARGET_SYS", True), "{}-unknown-linux-gnu".format(d.getVar("HOST_ARCH", True))] hosts = ["{}-unknown-linux-gnu".format(d.getVar("HOST_ARCH", True))] } -INSANE_SKIP_${RUSTLIB_TARGET_PN} = "file-rdeps arch ldflags" -SKIP_FILEDEPS_${RUSTLIB_TARGET_PN} = "1" +INSANE_SKIP:${RUSTLIB_TARGET_PN} = "file-rdeps arch ldflags" +SKIP_FILEDEPS:${RUSTLIB_TARGET_PN} = "1" INHIBIT_PACKAGE_DEBUG_SPLIT = "1" INHIBIT_PACKAGE_STRIP = "1" diff --git a/recipes-devtools/rust/rust-cross-canadian.inc b/recipes-devtools/rust/rust-cross-canadian.inc index bc00777..8bbbd61 100644 --- a/recipes-devtools/rust/rust-cross-canadian.inc +++ b/recipes-devtools/rust/rust-cross-canadian.inc @@ -8,7 +8,7 @@ RUSTLIB_PKGS = "${RUSTLIB_SRC_PN} ${RUSTLIB_TARGET_PN} ${RUSTLIB_HOST_PN}" PN = "rust-cross-canadian-${TRANSLATED_TARGET_ARCH}" PACKAGES = "${RUSTLIB_PKGS} ${PN}" -RDEPENDS_${PN} += "${RUSTLIB_PKGS}" +RDEPENDS:${PN} += "${RUSTLIB_PKGS}" # The default behaviour of x.py changed in 1.47+ so now we need to # explicitly ask for the stage 2 compiler to be assembled. @@ -66,13 +66,13 @@ do_install () { PKG_SYS_LIBDIR = "${SDKPATHNATIVE}/usr/lib" PKG_SYS_BINDIR = "${SDKPATHNATIVE}/usr/bin" PKG_RUSTLIB_DIR = "${PKG_SYS_LIBDIR}/${TARGET_SYS}/rustlib" -FILES_${PN} = "${PKG_SYS_LIBDIR}/*.so ${PKG_SYS_BINDIR} ${base_prefix}/environment-setup.d" -FILES_${RUSTLIB_TARGET_PN} = "${PKG_RUSTLIB_DIR}/${TARGET_SYS} ${PKG_RUSTLIB_DIR}/${TARGET_SYS}.json" -FILES_${RUSTLIB_HOST_PN} = "${PKG_RUSTLIB_DIR}/${BUILD_ARCH}-unknown-linux-gnu" -FILES_${RUSTLIB_SRC_PN} = "${PKG_RUSTLIB_DIR}/src" +FILES:${PN} = "${PKG_SYS_LIBDIR}/*.so ${PKG_SYS_BINDIR} ${base_prefix}/environment-setup.d" +FILES:${RUSTLIB_TARGET_PN} = "${PKG_RUSTLIB_DIR}/${TARGET_SYS} ${PKG_RUSTLIB_DIR}/${TARGET_SYS}.json" +FILES:${RUSTLIB_HOST_PN} = "${PKG_RUSTLIB_DIR}/${BUILD_ARCH}-unknown-linux-gnu" +FILES:${RUSTLIB_SRC_PN} = "${PKG_RUSTLIB_DIR}/src" -SUMMARY_${RUSTLIB_TARGET_PN} = "Rust cross canadian libaries for ${TARGET_SYS}" -SUMMARY_${RUSTLIB_HOST_PN} = "Rust cross canadian libaries for ${HOST_SYS}" -SUMMARY_${RUSTLIB_SRC_PN} = "Rust standard library sources for cross canadian toolchain" -SUMMARY_${PN} = "Rust crost canadian compiler" +SUMMARY:${RUSTLIB_TARGET_PN} = "Rust cross canadian libaries for ${TARGET_SYS}" +SUMMARY:${RUSTLIB_HOST_PN} = "Rust cross canadian libaries for ${HOST_SYS}" +SUMMARY:${RUSTLIB_SRC_PN} = "Rust standard library sources for cross canadian toolchain" +SUMMARY:${PN} = "Rust crost canadian compiler" diff --git a/recipes-devtools/rust/rust-cross-canadian_1.49.0.bb b/recipes-devtools/rust/rust-cross-canadian_1.49.0.bb index b8807aa..7b30dff 100644 --- a/recipes-devtools/rust/rust-cross-canadian_1.49.0.bb +++ b/recipes-devtools/rust/rust-cross-canadian_1.49.0.bb @@ -2,7 +2,7 @@ require rust-cross-canadian.inc require rust-source-${PV}.inc require rust-snapshot-${PV}.inc -FILESEXTRAPATHS_prepend := "${THISDIR}/rust:" +FILESEXTRAPATHS:prepend := "${THISDIR}/rust:" SRC_URI += " \ file://0001-rustc_target-Fix-dash-vs-underscore-mismatches-in-op.patch \ diff --git a/recipes-devtools/rust/rust-cross-canadian_1.51.0.bb b/recipes-devtools/rust/rust-cross-canadian_1.51.0.bb index ce799dc..a5d02eb 100644 --- a/recipes-devtools/rust/rust-cross-canadian_1.51.0.bb +++ b/recipes-devtools/rust/rust-cross-canadian_1.51.0.bb @@ -2,5 +2,5 @@ require rust-cross-canadian.inc require rust-source-${PV}.inc require rust-snapshot-${PV}.inc -FILESEXTRAPATHS_prepend := "${THISDIR}/rust:" +FILESEXTRAPATHS:prepend := "${THISDIR}/rust:" diff --git a/recipes-devtools/rust/rust-cross.inc b/recipes-devtools/rust/rust-cross.inc index b3698cd..bee7c9f 100644 --- a/recipes-devtools/rust/rust-cross.inc +++ b/recipes-devtools/rust/rust-cross.inc @@ -45,11 +45,11 @@ PN = "rust-cross-${TARGET_ARCH}" # FIXME: this should really be fixed in rust itself. # FIXME: using hard-coded relative paths is wrong, we should ask bitbake for # the relative path between 2 of it's vars. -HOST_POST_LINK_ARGS_append = " -Wl,-rpath=../../lib" -BUILD_POST_LINK_ARGS_append = " -Wl,-rpath=../../lib" +HOST_POST_LINK_ARGS:append = " -Wl,-rpath=../../lib" +BUILD_POST_LINK_ARGS:append = " -Wl,-rpath=../../lib" # We need the same thing for the calls to the compiler when building the runtime crap -TARGET_CC_ARCH_append = " --sysroot=${STAGING_DIR_TARGET}" +TARGET_CC_ARCH:append = " --sysroot=${STAGING_DIR_TARGET}" do_rust_setup_snapshot () { } diff --git a/recipes-devtools/rust/rust-llvm.inc b/recipes-devtools/rust/rust-llvm.inc index 19993b9..4916c59 100644 --- a/recipes-devtools/rust/rust-llvm.inc +++ b/recipes-devtools/rust/rust-llvm.inc @@ -13,8 +13,8 @@ inherit cmake python3native DEPENDS += "ninja-native rust-llvm-native" -ARM_INSTRUCTION_SET_armv5 = "arm" -ARM_INSTRUCTION_SET_armv4t = "arm" +ARM_INSTRUCTION_SET:armv5 = "arm" +ARM_INSTRUCTION_SET:armv4t = "arm" LLVM_DIR = "llvm${LLVM_RELEASE}" @@ -34,7 +34,7 @@ EXTRA_OECMAKE = " \ -DLLVM_TARGET_ARCH=${TARGET_ARCH} \ -DCMAKE_INSTALL_PREFIX:PATH=${libdir}/llvm-rust \ " -EXTRA_OECMAKE_append_class-target = "\ +EXTRA_OECMAKE:append:class-target = "\ -DCMAKE_CROSSCOMPILING:BOOL=ON \ -DLLVM_BUILD_TOOLS=OFF \ -DLLVM_TABLEGEN=${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-tblgen \ @@ -47,7 +47,7 @@ INHIBIT_PACKAGE_DEBUG_SPLIT = "1" export YOCTO_ALTERNATE_EXE_PATH = "${STAGING_LIBDIR}/llvm-rust/bin/llvm-config" -do_install_append () { +do_install:append () { # we don't need any of this stuff to build Rust rm -rf "${D}/usr/lib/cmake" } @@ -55,11 +55,11 @@ do_install_append () { PACKAGES =+ "${PN}-bugpointpasses ${PN}-llvmhello ${PN}-liblto" # Add the extra locations to avoid the complaints about unpackaged files -FILES_${PN}-bugpointpasses = "${libdir}/llvm-rust/lib/BugpointPasses.so" -FILES_${PN}-llvmhello = "${libdir}/llvm-rust/lib/LLVMHello.so" -FILES_${PN}-liblto = "${libdir}/llvm-rust/lib/libLTO.so.*" -FILES_${PN}-staticdev =+ "${libdir}/llvm-rust/*/*.a" -FILES_${PN} += "${libdir}/libLLVM*.so.* ${libdir}/llvm-rust/lib/*.so.* ${libdir}/llvm-rust/bin" -FILES_${PN}-dev += "${datadir}/llvm ${libdir}/llvm-rust/lib/*.so ${libdir}/llvm-rust/include ${libdir}/llvm-rust/share ${libdir}/llvm-rust/lib/cmake" +FILES:${PN}-bugpointpasses = "${libdir}/llvm-rust/lib/BugpointPasses.so" +FILES:${PN}-llvmhello = "${libdir}/llvm-rust/lib/LLVMHello.so" +FILES:${PN}-liblto = "${libdir}/llvm-rust/lib/libLTO.so.*" +FILES:${PN}-staticdev =+ "${libdir}/llvm-rust/*/*.a" +FILES:${PN} += "${libdir}/libLLVM*.so.* ${libdir}/llvm-rust/lib/*.so.* ${libdir}/llvm-rust/bin" +FILES:${PN}-dev += "${datadir}/llvm ${libdir}/llvm-rust/lib/*.so ${libdir}/llvm-rust/include ${libdir}/llvm-rust/share ${libdir}/llvm-rust/lib/cmake" BBCLASSEXTEND = "native" diff --git a/recipes-devtools/rust/rust-target.inc b/recipes-devtools/rust/rust-target.inc index 0a5b127..3f637b3 100644 --- a/recipes-devtools/rust/rust-target.inc +++ b/recipes-devtools/rust/rust-target.inc @@ -3,8 +3,8 @@ require rust.inc DEPENDS += "rust-llvm (=${PV})" # Otherwise we'll depend on what we provide -INHIBIT_DEFAULT_RUST_DEPS_class-native = "1" +INHIBIT_DEFAULT_RUST_DEPS:class-native = "1" # We don't need to depend on gcc-native because yocto assumes it exists -PROVIDES_class-native = "virtual/${TARGET_PREFIX}rust" +PROVIDES:class-native = "virtual/${TARGET_PREFIX}rust" BBCLASSEXTEND = "native" diff --git a/recipes-devtools/rust/rust-tools-cross-canadian.inc b/recipes-devtools/rust/rust-tools-cross-canadian.inc index c826b97..f035855 100644 --- a/recipes-devtools/rust/rust-tools-cross-canadian.inc +++ b/recipes-devtools/rust/rust-tools-cross-canadian.inc @@ -7,7 +7,7 @@ RUST_TOOLS_PKGS = "${RUST_TOOLS_CLIPPY_PN} ${RUST_TOOLS_RUSTFMT_PN}" PN = "rust-tools-cross-canadian-${TRANSLATED_TARGET_ARCH}" PACKAGES = "${RUST_TOOLS_CLIPPY_PN} ${RUST_TOOLS_RUSTFMT_PN} ${PN}" -RDEPENDS_${PN} += "${RUST_TOOLS_PKGS}" +RDEPENDS:${PN} += "${RUST_TOOLS_PKGS}" do_compile () { rust_runx build --stage 2 src/tools/clippy @@ -26,13 +26,13 @@ do_install () { chown -R root.root ${D} } -ALLOW_EMPTY_${PN} = "1" +ALLOW_EMPTY:${PN} = "1" PKG_SYS_BINDIR = "${SDKPATHNATIVE}/usr/bin" -FILES_${RUST_TOOLS_CLIPPY_PN} = "${PKG_SYS_BINDIR}/cargo-clippy ${PKG_SYS_BINDIR}/clippy-driver" -FILES_${RUST_TOOLS_RUSTFMT_PN} = "${PKG_SYS_BINDIR}/rustfmt" +FILES:${RUST_TOOLS_CLIPPY_PN} = "${PKG_SYS_BINDIR}/cargo-clippy ${PKG_SYS_BINDIR}/clippy-driver" +FILES:${RUST_TOOLS_RUSTFMT_PN} = "${PKG_SYS_BINDIR}/rustfmt" -SUMMARY_${PN} = "Rust helper tools" -SUMMARY_${RUST_TOOLS_CLIPPY_PN} = "A collection of lints to catch common mistakes and improve your Rust code" -SUMMARY_${RUST_TOOLS_RUSTFMT_PN} = "A tool for formatting Rust code according to style guidelines" +SUMMARY:${PN} = "Rust helper tools" +SUMMARY:${RUST_TOOLS_CLIPPY_PN} = "A collection of lints to catch common mistakes and improve your Rust code" +SUMMARY:${RUST_TOOLS_RUSTFMT_PN} = "A tool for formatting Rust code according to style guidelines" diff --git a/recipes-devtools/rust/rust-tools-cross-canadian_1.51.0.bb b/recipes-devtools/rust/rust-tools-cross-canadian_1.51.0.bb index 0318c62..053147b 100644 --- a/recipes-devtools/rust/rust-tools-cross-canadian_1.51.0.bb +++ b/recipes-devtools/rust/rust-tools-cross-canadian_1.51.0.bb @@ -2,5 +2,5 @@ require rust-tools-cross-canadian.inc require rust-source-${PV}.inc require rust-snapshot-${PV}.inc -FILESEXTRAPATHS_prepend := "${THISDIR}/rust:" +FILESEXTRAPATHS:prepend := "${THISDIR}/rust:" diff --git a/recipes-devtools/rust/rust.inc b/recipes-devtools/rust/rust.inc index 078067e..77a4fb8 100644 --- a/recipes-devtools/rust/rust.inc +++ b/recipes-devtools/rust/rust.inc @@ -11,7 +11,7 @@ SRC_URI += "file://riscv-march.patch" SRC_URI += "file://rv64gc.patch" DEPENDS += "file-native python3-native" -DEPENDS_append_class-native = " rust-llvm-native" +DEPENDS:append:class-native = " rust-llvm-native" S = "${RUSTSRC}"