diff options
Diffstat (limited to 'poky/meta/recipes-core')
10 files changed, 185 insertions, 11 deletions
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-framework/rootfs b/poky/meta/recipes-core/initrdscripts/initramfs-framework/rootfs index 2e400bff4..748c9391c 100644 --- a/poky/meta/recipes-core/initrdscripts/initramfs-framework/rootfs +++ b/poky/meta/recipes-core/initrdscripts/initramfs-framework/rootfs @@ -27,8 +27,13 @@ rootfs_run() { fi if [ "`echo ${bootparam_root} | cut -c1-9`" = "PARTUUID=" ]; then - root_uuid=`echo $bootparam_root | cut -c10-` - bootparam_root="/dev/disk/by-partuuid/$root_uuid" + root_partuuid=`echo $bootparam_root | cut -c10-` + bootparam_root="/dev/disk/by-partuuid/$root_partuuid" + fi + + if [ "`echo ${bootparam_root} | cut -c1-10`" = "PARTLABEL=" ]; then + root_partlabel=`echo $bootparam_root | cut -c11-` + bootparam_root="/dev/disk/by-partlabel/$root_partlabel" fi if [ "`echo ${bootparam_root} | cut -c1-10`" = "PARTLABEL=" ]; then diff --git a/poky/meta/recipes-core/meta/meta-extsdk-toolchain.bb b/poky/meta/recipes-core/meta/meta-extsdk-toolchain.bb index b4009ceaa..235d6ecc0 100644 --- a/poky/meta/recipes-core/meta/meta-extsdk-toolchain.bb +++ b/poky/meta/recipes-core/meta/meta-extsdk-toolchain.bb @@ -24,8 +24,3 @@ python do_locked_sigs() { sigfile = os.path.join(outdir, 'locked-sigs-extsdk-toolchain.inc') oe.copy_buildsystem.generate_locked_sigs(sigfile, d) } - -python do_locked_sigs_setscene () { - sstate_setscene(d) -} -addtask do_locked_sigs_setscene diff --git a/poky/meta/recipes-core/musl/musl/0001-Change-container-for-riscv-floating-point-state-to-_.patch b/poky/meta/recipes-core/musl/musl/0001-Change-container-for-riscv-floating-point-state-to-_.patch new file mode 100644 index 000000000..a9abb1872 --- /dev/null +++ b/poky/meta/recipes-core/musl/musl/0001-Change-container-for-riscv-floating-point-state-to-_.patch @@ -0,0 +1,67 @@ +From 52a37610650e7366a398dd07393d3902d2f3faa3 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 28 Sep 2019 12:19:57 -0700 +Subject: [PATCH] Change container for riscv floating-point state to __riscv_mc_fp_state + +Match the struct elements with glibc +glibc also uses __riscv_mc prefix, some packages like gdb uses that + +Upstream-Status: Submitted [https://www.openwall.com/lists/musl/2019/09/28/1] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + arch/riscv64/bits/signal.h | 18 +++++++++--------- + arch/riscv64/bits/user.h | 2 +- + 2 files changed, 10 insertions(+), 10 deletions(-) + +diff --git a/arch/riscv64/bits/signal.h b/arch/riscv64/bits/signal.h +index 76d7ad80..aba7ab00 100644 +--- a/arch/riscv64/bits/signal.h ++++ b/arch/riscv64/bits/signal.h +@@ -13,25 +13,25 @@ typedef unsigned long greg_t; + typedef unsigned long gregset_t[32]; + + struct __riscv_mc_f_ext_state { +- unsigned int f[32]; +- unsigned int fcsr; ++ unsigned int __f[32]; ++ unsigned int __fcsr; + }; + + struct __riscv_mc_d_ext_state { +- unsigned long long f[32]; +- unsigned int fcsr; ++ unsigned long long __f[32]; ++ unsigned int __fcsr; + }; + + struct __riscv_mc_q_ext_state { +- unsigned long long f[64] __attribute__((aligned(16))); +- unsigned int fcsr; ++ unsigned long long __f[64] __attribute__((aligned(16))); ++ unsigned int __fcsr; + unsigned int reserved[3]; + }; + + union __riscv_mc_fp_state { +- struct __riscv_mc_f_ext_state f; +- struct __riscv_mc_d_ext_state d; +- struct __riscv_mc_q_ext_state q; ++ struct __riscv_mc_f_ext_state __f; ++ struct __riscv_mc_d_ext_state __d; ++ struct __riscv_mc_q_ext_state __q; + }; + + typedef union __riscv_mc_fp_state fpregset_t; +diff --git a/arch/riscv64/bits/user.h b/arch/riscv64/bits/user.h +index d2e383b2..9918a2fe 100644 +--- a/arch/riscv64/bits/user.h ++++ b/arch/riscv64/bits/user.h +@@ -5,4 +5,4 @@ struct user_fpregs_struct { + + #define ELF_NGREG 32 + typedef unsigned long elf_greg_t, elf_gregset_t[ELF_NGREG]; +-typedef struct user_fpregs_struct elf_fpregset_t; ++typedef union __riscv_mc_fp_state elf_fpregset_t; +-- +2.23.0 + diff --git a/poky/meta/recipes-core/musl/musl/0001-correct-the-operand-specifiers-in-the-riscv64-CAS-ro.patch b/poky/meta/recipes-core/musl/musl/0001-correct-the-operand-specifiers-in-the-riscv64-CAS-ro.patch new file mode 100644 index 000000000..09b71cb29 --- /dev/null +++ b/poky/meta/recipes-core/musl/musl/0001-correct-the-operand-specifiers-in-the-riscv64-CAS-ro.patch @@ -0,0 +1,55 @@ +From 59f2954fcaacd9426827c69a729e2647cb9977e5 Mon Sep 17 00:00:00 2001 +From: Palmer Dabbelt <palmer@sifive.com> +Date: Tue, 24 Sep 2019 20:30:15 -0700 +Subject: [PATCH] correct the operand specifiers in the riscv64 CAS routines + +The operand sepcifiers in a_cas and a_casp for riscv64 were incorrect: +there's a backwards branch in the routine, so despite tmp being written +at the end of the assembly fragment it cannot be allocated in one of the +input registers because the input values may be needed for another trip +around the loop. + +For code that follows the guarnteed forward progress requirements, he +backwards branch is rarely taken: SiFive's hardware only fails a store +conditional on execptional cases (ie, instruction cache misses inside +the loop), and until recently a bug in QEMU allowed back-to-back +store conditionals to succeed. The bug has been fixed in the latest +QEMU release, but it turns out that the fix caused this latent bug in +musl to manifest. + +Full disclosure: I haven't actually even compiled musl. I just guessed +this would fix a bug introducted by the new QEMU behavior, Alistair +(CC'd) actually checked it fixes the problem. The rest is just +conjecture. + +Upstream-Status: Submitted +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + arch/riscv64/atomic_arch.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/arch/riscv64/atomic_arch.h b/arch/riscv64/atomic_arch.h +index c9765342..41ad4d04 100644 +--- a/arch/riscv64/atomic_arch.h ++++ b/arch/riscv64/atomic_arch.h +@@ -14,7 +14,7 @@ static inline int a_cas(volatile int *p, int t, int s) + " sc.w.aqrl %1, %4, (%2)\n" + " bnez %1, 1b\n" + "1:" +- : "=&r"(old), "=r"(tmp) ++ : "=&r"(old), "=&r"(tmp) + : "r"(p), "r"(t), "r"(s) + : "memory"); + return old; +@@ -31,7 +31,7 @@ static inline void *a_cas_p(volatile void *p, void *t, void *s) + " sc.d.aqrl %1, %4, (%2)\n" + " bnez %1, 1b\n" + "1:" +- : "=&r"(old), "=r"(tmp) ++ : "=&r"(old), "=&r"(tmp) + : "r"(p), "r"(t), "r"(s) + : "memory"); + return old; +-- +2.23.0 + diff --git a/poky/meta/recipes-core/musl/musl_git.bb b/poky/meta/recipes-core/musl/musl_git.bb index 87453be07..13fd17353 100644 --- a/poky/meta/recipes-core/musl/musl_git.bb +++ b/poky/meta/recipes-core/musl/musl_git.bb @@ -15,6 +15,8 @@ PV = "${BASEVER}+git${SRCPV}" SRC_URI = "git://git.musl-libc.org/musl \ file://0001-Make-dynamic-linker-a-relative-symlink-to-libc.patch \ file://0002-ldso-Use-syslibdir-and-libdir-as-default-pathes-to-l.patch \ + file://0001-correct-the-operand-specifiers-in-the-riscv64-CAS-ro.patch \ + file://0001-Change-container-for-riscv-floating-point-state-to-_.patch \ " S = "${WORKDIR}/git" diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bb index f5b2d69ce..2a54f1ca3 100644 --- a/poky/meta/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bb +++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bb @@ -1,6 +1,8 @@ SUMMARY = "Target packages for the standalone SDK" PR = "r8" +PACKAGE_ARCH = "${TUNE_PKGARCH}" + inherit packagegroup RDEPENDS_${PN} = "\ diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-debug.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-debug.bb index 9fc2b0ef4..81fbdf460 100644 --- a/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-debug.bb +++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-debug.bb @@ -4,6 +4,8 @@ SUMMARY = "Debugging tools" +PACKAGE_ARCH = "${TUNE_PKGARCH}" + inherit packagegroup PR = "r3" diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb b/poky/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb index 9b0ae0d1c..ee9d0636f 100644 --- a/poky/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb +++ b/poky/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb @@ -6,6 +6,8 @@ SUMMARY = "Self-hosting" DESCRIPTION = "Packages required to run the build system" PR = "r13" +PACKAGE_ARCH = "${TUNE_PKGARCH}" + inherit packagegroup distro_features_check # rdepends on libx11-dev REQUIRED_DISTRO_FEATURES = "x11" diff --git a/poky/meta/recipes-core/systemd/systemd/0001-unit-file.c-consider-symlink-on-filesystems-like-NFS.patch b/poky/meta/recipes-core/systemd/systemd/0001-unit-file.c-consider-symlink-on-filesystems-like-NFS.patch new file mode 100644 index 000000000..ba20a0bb4 --- /dev/null +++ b/poky/meta/recipes-core/systemd/systemd/0001-unit-file.c-consider-symlink-on-filesystems-like-NFS.patch @@ -0,0 +1,42 @@ +From d0122c077d2d8fd0fd29b463c501e7ddf9177ff3 Mon Sep 17 00:00:00 2001 +From: Chen Qi <Qi.Chen@windriver.com> +Date: Tue, 24 Sep 2019 17:04:50 +0800 +Subject: [PATCH] unit-file.c: consider symlink on filesystems like NFS + +Some filesystems do not fully support readdir, according to the manual, +so we should also consider DT_UNKNOWN to correctly handle symlinks. + +Signed-off-by: Chen Qi <Qi.Chen@windriver.com> + +Upstream-Status: Submitted [https://github.com/systemd/systemd/pull/13637] +--- + src/shared/unit-file.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/src/shared/unit-file.c b/src/shared/unit-file.c +index 4a5f23e6c1..8373103000 100644 +--- a/src/shared/unit-file.c ++++ b/src/shared/unit-file.c +@@ -247,6 +247,7 @@ int unit_file_build_name_map( + _cleanup_free_ char *_filename_free = NULL, *simplified = NULL; + const char *suffix, *dst = NULL; + bool valid_unit_name; ++ struct stat sb; + + valid_unit_name = unit_name_is_valid(de->d_name, UNIT_NAME_ANY); + +@@ -279,7 +280,10 @@ int unit_file_build_name_map( + if (hashmap_contains(ids, de->d_name)) + continue; + +- if (de->d_type == DT_LNK) { ++ if (de->d_type == DT_LNK || ++ (de->d_type == DT_UNKNOWN && ++ lstat(filename, &sb) == 0 && ++ (sb.st_mode & S_IFMT) == S_IFLNK)) { + /* We don't explicitly check for alias loops here. unit_ids_map_get() which + * limits the number of hops should be used to access the map. */ + +-- +2.17.1 + diff --git a/poky/meta/recipes-core/systemd/systemd_243.bb b/poky/meta/recipes-core/systemd/systemd_243.bb index f0e8c569b..b9097593f 100644 --- a/poky/meta/recipes-core/systemd/systemd_243.bb +++ b/poky/meta/recipes-core/systemd/systemd_243.bb @@ -22,6 +22,7 @@ SRC_URI += "file://touchscreen.rules \ file://0003-implment-systemd-sysv-install-for-OE.patch \ file://0004-rules-whitelist-hd-devices.patch \ file://0005-rules-watch-metadata-changes-in-ide-devices.patch \ + file://0001-unit-file.c-consider-symlink-on-filesystems-like-NFS.patch \ file://99-default.preset \ " @@ -299,9 +300,10 @@ do_install() { } do_install_append () { - # Mips qemu is extremely slow, allow more time for the hwdb update - # This is a workaround until https://github.com/systemd/systemd/issues/13581 is resolved - sed -i -e s#TimeoutSec=90s#TimeoutSec=180s# ${D}${systemd_unitdir}/system/systemd-hwdb-update.service + # Mips qemu is extremely slow, allow more time for the hwdb update + # This is a workaround until https://github.com/systemd/systemd/issues/13581 is resolved + [ ! -e ${D}${systemd_unitdir}/system/systemd-hwdb-update.service ] || + sed -i -e s#TimeoutSec=90s#TimeoutSec=180s# ${D}${systemd_unitdir}/system/systemd-hwdb-update.service } python populate_packages_prepend (){ @@ -635,7 +637,7 @@ python do_warn_musl() { } addtask warn_musl before do_configure -ALTERNATIVE_${PN} = "halt reboot shutdown poweroff runlevel resolv-conf" +ALTERNATIVE_${PN} = "halt reboot shutdown poweroff runlevel ${@bb.utils.contains('PACKAGECONFIG', 'resolved', 'resolv-conf', '', d)}" ALTERNATIVE_TARGET[resolv-conf] = "${sysconfdir}/resolv-conf.systemd" ALTERNATIVE_LINK_NAME[resolv-conf] = "${sysconfdir}/resolv.conf" |