summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-core')
-rw-r--r--meta/recipes-core/base-files/base-files/profile2
-rw-r--r--meta/recipes-core/base-files/base-files_3.0.14.bb27
-rw-r--r--meta/recipes-core/busybox/busybox-inittab_1.36.1.bb5
-rw-r--r--meta/recipes-core/busybox/busybox.inc46
-rw-r--r--meta/recipes-core/busybox/busybox/0001-libbb-sockaddr2str-ensure-only-printable-characters-.patch2
-rw-r--r--meta/recipes-core/busybox/busybox/0002-nslookup-sanitize-all-printed-strings-with-printable.patch2
-rw-r--r--meta/recipes-core/busybox/busybox/busybox-udhcpc-no_deconfig.patch87
-rw-r--r--meta/recipes-core/busybox/busybox_1.36.1.bb1
-rw-r--r--meta/recipes-core/coreutils/coreutils/0001-local.mk-fix-cross-compiling-problem.patch12
-rw-r--r--meta/recipes-core/coreutils/coreutils/0001-posixtm-pacify-clang-18.patch38
-rw-r--r--meta/recipes-core/coreutils/coreutils/CVE-2024-0684.patch39
-rw-r--r--meta/recipes-core/coreutils/coreutils/remove-usr-local-lib-from-m4.patch7
-rw-r--r--meta/recipes-core/coreutils/coreutils_9.5.bb (renamed from meta/recipes-core/coreutils/coreutils_9.4.bb)10
-rw-r--r--meta/recipes-core/dbus/dbus_1.14.10.bb4
-rw-r--r--meta/recipes-core/dropbear/dropbear/0001-urandom-xauth-changes-to-options.h.patch20
-rw-r--r--meta/recipes-core/dropbear/dropbear/0005-dropbear-enable-pam.patch21
-rw-r--r--meta/recipes-core/dropbear/dropbear/0006-dropbear-configuration-file.patch17
-rw-r--r--meta/recipes-core/dropbear/dropbear/CVE-2023-36328.patch144
-rw-r--r--meta/recipes-core/dropbear/dropbear/dropbear-disable-weak-ciphers.patch17
-rw-r--r--meta/recipes-core/dropbear/dropbear_2024.85.bb (renamed from meta/recipes-core/dropbear/dropbear_2022.83.bb)15
-rw-r--r--meta/recipes-core/ell/ell_0.65.bb (renamed from meta/recipes-core/ell/ell_0.63.bb)6
-rw-r--r--meta/recipes-core/gettext/gettext-minimal-native_0.22.5.bb2
-rw-r--r--meta/recipes-core/gettext/gettext/0001-intl-Fix-build-failure-with-make-j.patch35
-rw-r--r--meta/recipes-core/gettext/gettext_0.22.5.bb1
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-Do-not-write-bindir-into-pkg-config-files.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch)31
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch)2
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch)6
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch)2
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch)4
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-girepository-introspection-correctly-install-.gir-fi.patch88
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-meson-Run-atomics-test-on-clang-as-well.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Run-atomics-test-on-clang-as-well.patch)6
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch)6
-rw-r--r--meta/recipes-core/glib-2.0/files/0010-Do-not-hardcode-python-path-into-various-tools.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0010-Do-not-hardcode-python-path-into-various-tools.patch)4
-rw-r--r--meta/recipes-core/glib-2.0/files/meson.cross.d/common (renamed from meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common)0
-rw-r--r--meta/recipes-core/glib-2.0/files/meson.cross.d/common-glibc (renamed from meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-glibc)0
-rw-r--r--meta/recipes-core/glib-2.0/files/meson.cross.d/common-linux (renamed from meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-linux)0
-rw-r--r--meta/recipes-core/glib-2.0/files/meson.cross.d/common-mingw (renamed from meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-mingw)0
-rw-r--r--meta/recipes-core/glib-2.0/files/meson.cross.d/common-musl (renamed from meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-musl)0
-rw-r--r--meta/recipes-core/glib-2.0/files/relocate-modules.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch)8
-rw-r--r--meta/recipes-core/glib-2.0/files/run-ptest (renamed from meta/recipes-core/glib-2.0/glib-2.0/run-ptest)0
-rw-r--r--meta/recipes-core/glib-2.0/files/skip-timeout.patch29
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0-initial_2.80.2.bb5
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch80
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch34
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0/fix-regex.patch54
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0/memory-monitor.patch361
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0_2.78.4.bb56
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0_2.80.2.bb2
-rw-r--r--meta/recipes-core/glib-2.0/glib.inc72
-rw-r--r--meta/recipes-core/glibc/glibc-common.inc2
-rw-r--r--meta/recipes-core/glibc/glibc-package.inc6
-rw-r--r--meta/recipes-core/glibc/glibc-testsuite_2.39.bb4
-rw-r--r--meta/recipes-core/glibc/glibc-version.inc2
-rw-r--r--meta/recipes-core/glibc/glibc-y2038-tests_2.39.bb2
-rw-r--r--meta/recipes-core/glibc/glibc/0016-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch47
-rw-r--r--meta/recipes-core/glibc/glibc/0023-aarch64-configure-Pass-mcpu-along-with-march-to-dete.patch62
-rw-r--r--meta/recipes-core/glibc/glibc/0023-qemu-stale-process.patch45
-rw-r--r--meta/recipes-core/glibc/glibc_2.39.bb6
-rw-r--r--meta/recipes-core/ifupdown/ifupdown_0.8.41.bb2
-rw-r--r--meta/recipes-core/images/build-appliance-image_15.0.0.bb19
-rw-r--r--meta/recipes-core/init-ifupdown/init-ifupdown-1.0/interfaces3
-rw-r--r--meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb11
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb6
-rwxr-xr-xmeta/recipes-core/initrdscripts/initramfs-framework/init23
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb25
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb6
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb6
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb5
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb6
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb5
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb6
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb5
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb5
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb5
-rw-r--r--meta/recipes-core/initscripts/initscripts_1.0.bb61
-rw-r--r--meta/recipes-core/kbd/kbd/0001-Remove-non-free-Agafari-fonts.patch73
-rw-r--r--meta/recipes-core/kbd/kbd_2.6.4.bb28
-rw-r--r--meta/recipes-core/libcgroup/libcgroup/0001-include-Makefile-install-systemd.h-by-default.patch37
-rw-r--r--meta/recipes-core/libcgroup/libcgroup_3.1.0.bb1
-rw-r--r--meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.36.bb2
-rw-r--r--meta/recipes-core/libxml/libxml2_2.12.7.bb (renamed from meta/recipes-core/libxml/libxml2_2.12.5.bb)2
-rw-r--r--meta/recipes-core/meta/buildtools-tarball.bb3
-rw-r--r--meta/recipes-core/meta/uninative-tarball.bb2
-rw-r--r--meta/recipes-core/musl/bsd-headers.bb3
-rw-r--r--meta/recipes-core/musl/libc-test_git.bb2
-rw-r--r--meta/recipes-core/musl/libssp-nonshared.bb3
-rw-r--r--meta/recipes-core/musl/musl-legacy-error.bb3
-rw-r--r--meta/recipes-core/ncurses/files/0001-Fix-CVE-2023-29491.patch462
-rw-r--r--meta/recipes-core/ncurses/files/0001-Updating-reset-code-ncurses-6.4-patch-20231104.patch499
-rw-r--r--meta/recipes-core/ncurses/files/0001-tic-hang.patch11
-rw-r--r--meta/recipes-core/ncurses/files/0002-configure-reproducible.patch7
-rw-r--r--meta/recipes-core/ncurses/files/0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch5
-rw-r--r--meta/recipes-core/ncurses/files/exit_prototype.patch11
-rw-r--r--meta/recipes-core/ncurses/ncurses.inc6
-rw-r--r--meta/recipes-core/ncurses/ncurses_6.5.bb (renamed from meta/recipes-core/ncurses/ncurses_6.4.bb)6
-rw-r--r--meta/recipes-core/ncurses/site_config/headers5
-rw-r--r--meta/recipes-core/newlib/libgloss_git.bb1
-rw-r--r--meta/recipes-core/newlib/newlib.inc8
-rw-r--r--meta/recipes-core/ovmf/ovmf_git.bb18
-rw-r--r--meta/recipes-core/packagegroups/packagegroup-core-boot.bb4
-rw-r--r--meta/recipes-core/psplash/psplash_git.bb8
-rw-r--r--meta/recipes-core/readline/readline.inc4
-rw-r--r--meta/recipes-core/readline/readline/readline82-001.patch45
-rw-r--r--meta/recipes-core/readline/readline/readline82-002.patch51
-rw-r--r--meta/recipes-core/readline/readline/readline82-003.patch46
-rw-r--r--meta/recipes-core/readline/readline/readline82-004.patch68
-rw-r--r--meta/recipes-core/readline/readline/readline82-005.patch53
-rw-r--r--meta/recipes-core/readline/readline/readline82-006.patch102
-rw-r--r--meta/recipes-core/readline/readline/readline82-007.patch51
-rw-r--r--meta/recipes-core/readline/readline/readline82-008.patch80
-rw-r--r--meta/recipes-core/readline/readline/readline82-009.patch76
-rw-r--r--meta/recipes-core/readline/readline/readline82-010.patch70
-rw-r--r--meta/recipes-core/readline/readline_8.2.bb12
-rw-r--r--meta/recipes-core/seatd/seatd_0.8.0.bb2
-rw-r--r--meta/recipes-core/systemd/systemd-boot-native_255.6.bb (renamed from meta/recipes-core/systemd/systemd-boot-native_255.4.bb)0
-rw-r--r--meta/recipes-core/systemd/systemd-boot_255.6.bb (renamed from meta/recipes-core/systemd/systemd-boot_255.4.bb)0
-rw-r--r--meta/recipes-core/systemd/systemd-bootconf_1.00.bb3
-rw-r--r--meta/recipes-core/systemd/systemd-compat-units.bb3
-rw-r--r--meta/recipes-core/systemd/systemd-conf_1.0.bb13
-rw-r--r--meta/recipes-core/systemd/systemd-serialgetty.bb7
-rw-r--r--meta/recipes-core/systemd/systemd-systemctl-native.bb5
-rw-r--r--meta/recipes-core/systemd/systemd.inc2
-rw-r--r--meta/recipes-core/systemd/systemd/0001-NamePolicy.patch33
-rw-r--r--meta/recipes-core/systemd/systemd/0001-missing_type.h-add-comparison_fn_t.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0002-add-fallback-parse_printf_format-implementation.patch13
-rw-r--r--meta/recipes-core/systemd/systemd/0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch9
-rw-r--r--meta/recipes-core/systemd/systemd/0003-src-basic-missing.h-check-for-missing-strndupa.patch55
-rw-r--r--meta/recipes-core/systemd/systemd/0004-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch14
-rw-r--r--meta/recipes-core/systemd/systemd/0005-add-missing-FTW_-macros-for-musl.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0006-Use-uintmax_t-for-handling-rlim_t.patch11
-rw-r--r--meta/recipes-core/systemd/systemd/0007-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch11
-rw-r--r--meta/recipes-core/systemd/systemd/0008-Define-glibc-compatible-basename-for-non-glibc-syste.patch8
-rw-r--r--meta/recipes-core/systemd/systemd/0008-implment-systemd-sysv-install-for-OE.patch5
-rw-r--r--meta/recipes-core/systemd/systemd/0009-Do-not-disable-buffering-when-writing-to-oom_score_a.patch9
-rw-r--r--meta/recipes-core/systemd/systemd/0010-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch13
-rw-r--r--meta/recipes-core/systemd/systemd/0011-avoid-redefinition-of-prctl_mm_map-structure.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0012-do-not-disable-buffer-in-writing-files.patch35
-rw-r--r--meta/recipes-core/systemd/systemd/0013-Handle-__cpu_mask-usage.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0014-Handle-missing-gshadow.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0015-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch11
-rw-r--r--meta/recipes-core/systemd/systemd/0016-pass-correct-parameters-to-getdents64.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0017-Adjust-for-musl-headers.patch17
-rw-r--r--meta/recipes-core/systemd/systemd/0018-test-bus-error-strerror-is-assumed-to-be-GNU-specifi.patch9
-rw-r--r--meta/recipes-core/systemd/systemd/0019-errno-util-Make-STRERROR-portable-for-musl.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0020-sd-event-Make-malloc_trim-conditional-on-glibc.patch9
-rw-r--r--meta/recipes-core/systemd/systemd/0021-shared-Do-not-use-malloc_info-on-musl.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0022-avoid-missing-LOCK_EX-declaration.patch9
-rw-r--r--meta/recipes-core/systemd/systemd_255.6.bb (renamed from meta/recipes-core/systemd/systemd_255.4.bb)46
-rw-r--r--meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb7
-rw-r--r--meta/recipes-core/sysvinit/sysvinit_3.04.bb10
-rw-r--r--meta/recipes-core/ttyrun/ttyrun_2.32.0.bb (renamed from meta/recipes-core/ttyrun/ttyrun_2.31.0.bb)4
-rw-r--r--meta/recipes-core/udev/eudev/netifnames.patch2
-rw-r--r--meta/recipes-core/udev/eudev_3.2.14.bb4
-rw-r--r--meta/recipes-core/udev/udev-extraconf_1.1.bb15
-rw-r--r--meta/recipes-core/update-rc.d/update-rc.d_0.8.bb1
-rw-r--r--meta/recipes-core/util-linux/util-linux.inc7
-rw-r--r--meta/recipes-core/util-linux/util-linux/fcntl-lock.c332
-rw-r--r--meta/recipes-core/util-linux/util-linux/mit-license.patch45
-rw-r--r--meta/recipes-core/util-linux/util-linux_2.39.3.bb16
-rw-r--r--meta/recipes-core/volatile-binds/volatile-binds.bb5
-rw-r--r--meta/recipes-core/zlib/site_config/headers1
161 files changed, 2002 insertions, 2508 deletions
diff --git a/meta/recipes-core/base-files/base-files/profile b/meta/recipes-core/base-files/base-files/profile
index bded3757cc..5e8393c91c 100644
--- a/meta/recipes-core/base-files/base-files/profile
+++ b/meta/recipes-core/base-files/base-files/profile
@@ -58,7 +58,7 @@ resize() {
58 fi 58 fi
59 # only do this for /dev/tty[A-z] which are typically 59 # only do this for /dev/tty[A-z] which are typically
60 # serial ports 60 # serial ports
61 if [ $FIRSTTIMESETUP -eq 1 -a $SHLVL -eq 1 ] ; then 61 if [ $FIRSTTIMESETUP -eq 1 -a ${SHLVL:-1} -eq 1 ] ; then
62 case $(tty 2>/dev/null) in 62 case $(tty 2>/dev/null) in
63 /dev/tty[A-z]*) resize >/dev/null;; 63 /dev/tty[A-z]*) resize >/dev/null;;
64 esac 64 esac
diff --git a/meta/recipes-core/base-files/base-files_3.0.14.bb b/meta/recipes-core/base-files/base-files_3.0.14.bb
index 9fab53ce63..1b6e9671e4 100644
--- a/meta/recipes-core/base-files/base-files_3.0.14.bb
+++ b/meta/recipes-core/base-files/base-files_3.0.14.bb
@@ -25,7 +25,8 @@ SRC_URI = "file://rotation \
25 " 25 "
26SRC_URI:append:libc-glibc = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd systemd-resolved', ' file://0001-add-nss-resolve-to-nsswitch.patch', '', d)}" 26SRC_URI:append:libc-glibc = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd systemd-resolved', ' file://0001-add-nss-resolve-to-nsswitch.patch', '', d)}"
27 27
28S = "${WORKDIR}" 28S = "${WORKDIR}/sources"
29UNPACKDIR = "${S}"
29 30
30INHIBIT_DEFAULT_DEPS = "1" 31INHIBIT_DEFAULT_DEPS = "1"
31 32
@@ -113,23 +114,23 @@ do_install () {
113 ln -snf ../run ${D}${localstatedir}/run 114 ln -snf ../run ${D}${localstatedir}/run
114 ln -snf ../run/lock ${D}${localstatedir}/lock 115 ln -snf ../run/lock ${D}${localstatedir}/lock
115 116
116 install -m 0644 ${WORKDIR}/hosts ${D}${sysconfdir}/hosts 117 install -m 0644 ${S}/hosts ${D}${sysconfdir}/hosts
117 ${BASEFILESISSUEINSTALL} 118 ${BASEFILESISSUEINSTALL}
118 119
119 rotation=`cat ${WORKDIR}/rotation` 120 rotation=`cat ${S}/rotation`
120 if [ "$rotation" != "0" ]; then 121 if [ "$rotation" != "0" ]; then
121 install -m 0644 ${WORKDIR}/rotation ${D}${sysconfdir}/rotation 122 install -m 0644 ${S}/rotation ${D}${sysconfdir}/rotation
122 fi 123 fi
123 124
124 install -m 0644 ${WORKDIR}/fstab ${D}${sysconfdir}/fstab 125 install -m 0644 ${S}/fstab ${D}${sysconfdir}/fstab
125 install -m 0644 ${WORKDIR}/profile ${D}${sysconfdir}/profile 126 install -m 0644 ${S}/profile ${D}${sysconfdir}/profile
126 sed -i 's#ROOTHOME#${ROOT_HOME}#' ${D}${sysconfdir}/profile 127 sed -i 's#ROOTHOME#${ROOT_HOME}#' ${D}${sysconfdir}/profile
127 sed -i 's#@BINDIR@#${bindir}#g' ${D}${sysconfdir}/profile 128 sed -i 's#@BINDIR@#${bindir}#g' ${D}${sysconfdir}/profile
128 install -m 0644 ${WORKDIR}/shells ${D}${sysconfdir}/shells 129 install -m 0644 ${S}/shells ${D}${sysconfdir}/shells
129 install -m 0755 ${WORKDIR}/share/dot.profile ${D}${sysconfdir}/skel/.profile 130 install -m 0755 ${S}/share/dot.profile ${D}${sysconfdir}/skel/.profile
130 install -m 0755 ${WORKDIR}/share/dot.bashrc ${D}${sysconfdir}/skel/.bashrc 131 install -m 0755 ${S}/share/dot.bashrc ${D}${sysconfdir}/skel/.bashrc
131 install -m 0644 ${WORKDIR}/host.conf ${D}${sysconfdir}/host.conf 132 install -m 0644 ${S}/host.conf ${D}${sysconfdir}/host.conf
132 install -m 0644 ${WORKDIR}/motd ${D}${sysconfdir}/motd 133 install -m 0644 ${S}/motd ${D}${sysconfdir}/motd
133 134
134 ln -sf /proc/mounts ${D}${sysconfdir}/mtab 135 ln -sf /proc/mounts ${D}${sysconfdir}/mtab
135 136
@@ -145,12 +146,12 @@ do_install () {
145} 146}
146 147
147do_install:append:libc-glibc () { 148do_install:append:libc-glibc () {
148 install -m 0644 ${WORKDIR}/nsswitch.conf ${D}${sysconfdir}/nsswitch.conf 149 install -m 0644 ${S}/nsswitch.conf ${D}${sysconfdir}/nsswitch.conf
149} 150}
150 151
151DISTRO_VERSION[vardepsexclude] += "DATE" 152DISTRO_VERSION[vardepsexclude] += "DATE"
152do_install_basefilesissue () { 153do_install_basefilesissue () {
153 install -m 644 ${WORKDIR}/issue* ${D}${sysconfdir} 154 install -m 644 ${S}/issue* ${D}${sysconfdir}
154 if [ -n "${DISTRO_NAME}" ]; then 155 if [ -n "${DISTRO_NAME}" ]; then
155 printf "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue 156 printf "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue
156 printf "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue.net 157 printf "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue.net
diff --git a/meta/recipes-core/busybox/busybox-inittab_1.36.1.bb b/meta/recipes-core/busybox/busybox-inittab_1.36.1.bb
index 6904a91930..4ffc44c808 100644
--- a/meta/recipes-core/busybox/busybox-inittab_1.36.1.bb
+++ b/meta/recipes-core/busybox/busybox-inittab_1.36.1.bb
@@ -4,7 +4,8 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;m
4 4
5SRC_URI = "file://inittab" 5SRC_URI = "file://inittab"
6 6
7S = "${WORKDIR}" 7S = "${WORKDIR}/sources"
8UNPACKDIR = "${S}"
8 9
9INHIBIT_DEFAULT_DEPS = "1" 10INHIBIT_DEFAULT_DEPS = "1"
10 11
@@ -14,7 +15,7 @@ do_compile() {
14 15
15do_install() { 16do_install() {
16 install -d ${D}${sysconfdir} 17 install -d ${D}${sysconfdir}
17 install -D -m 0644 ${WORKDIR}/inittab ${D}${sysconfdir}/inittab 18 install -D -m 0644 ${S}/inittab ${D}${sysconfdir}/inittab
18 19
19 CONSOLES="${SERIAL_CONSOLES}" 20 CONSOLES="${SERIAL_CONSOLES}"
20 for s in $CONSOLES 21 for s in $CONSOLES
diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc
index f5d7c3f9c8..67a9111e5b 100644
--- a/meta/recipes-core/busybox/busybox.inc
+++ b/meta/recipes-core/busybox/busybox.inc
@@ -114,7 +114,7 @@ do_prepare_config () {
114 export KCONFIG_NOTIMESTAMP=1 114 export KCONFIG_NOTIMESTAMP=1
115 115
116 sed -e '/CONFIG_STATIC/d' \ 116 sed -e '/CONFIG_STATIC/d' \
117 < ${WORKDIR}/defconfig > ${S}/.config 117 < ${UNPACKDIR}/defconfig > ${S}/.config
118 echo "# CONFIG_STATIC is not set" >> .config 118 echo "# CONFIG_STATIC is not set" >> .config
119 for i in 'CROSS' 'DISTRO FEATURES'; do echo "### $i"; done >> \ 119 for i in 'CROSS' 'DISTRO FEATURES'; do echo "### $i"; done >> \
120 ${S}/.config 120 ${S}/.config
@@ -280,67 +280,67 @@ do_install () {
280 fi 280 fi
281 281
282 if grep -q "CONFIG_SYSLOGD=y" ${B}/.config; then 282 if grep -q "CONFIG_SYSLOGD=y" ${B}/.config; then
283 install -m 0755 ${WORKDIR}/syslog ${D}${sysconfdir}/init.d/syslog 283 install -m 0755 ${UNPACKDIR}/syslog ${D}${sysconfdir}/init.d/syslog
284 install -m 644 ${WORKDIR}/syslog-startup.conf ${D}${sysconfdir}/syslog-startup.conf 284 install -m 644 ${UNPACKDIR}/syslog-startup.conf ${D}${sysconfdir}/syslog-startup.conf
285 install -m 644 ${WORKDIR}/syslog.conf ${D}${sysconfdir}/syslog.conf 285 install -m 644 ${UNPACKDIR}/syslog.conf ${D}${sysconfdir}/syslog.conf
286 fi 286 fi
287 if grep -q "CONFIG_CROND=y" ${B}/.config; then 287 if grep -q "CONFIG_CROND=y" ${B}/.config; then
288 install -m 0755 ${WORKDIR}/busybox-cron ${D}${sysconfdir}/init.d/ 288 install -m 0755 ${UNPACKDIR}/busybox-cron ${D}${sysconfdir}/init.d/
289 fi 289 fi
290 if grep -q "CONFIG_HTTPD=y" ${B}/.config; then 290 if grep -q "CONFIG_HTTPD=y" ${B}/.config; then
291 install -m 0755 ${WORKDIR}/busybox-httpd ${D}${sysconfdir}/init.d/ 291 install -m 0755 ${UNPACKDIR}/busybox-httpd ${D}${sysconfdir}/init.d/
292 install -d ${D}/srv/www 292 install -d ${D}/srv/www
293 fi 293 fi
294 if grep -q "CONFIG_UDHCPD=y" ${B}/.config; then 294 if grep -q "CONFIG_UDHCPD=y" ${B}/.config; then
295 install -m 0755 ${WORKDIR}/busybox-udhcpd ${D}${sysconfdir}/init.d/ 295 install -m 0755 ${UNPACKDIR}/busybox-udhcpd ${D}${sysconfdir}/init.d/
296 fi 296 fi
297 if grep -q "CONFIG_HWCLOCK=y" ${B}/.config; then 297 if grep -q "CONFIG_HWCLOCK=y" ${B}/.config; then
298 install -m 0755 ${WORKDIR}/hwclock.sh ${D}${sysconfdir}/init.d/ 298 install -m 0755 ${UNPACKDIR}/hwclock.sh ${D}${sysconfdir}/init.d/
299 fi 299 fi
300 if grep -q "CONFIG_UDHCPC=y" ${B}/.config; then 300 if grep -q "CONFIG_UDHCPC=y" ${B}/.config; then
301 install -d ${D}${sysconfdir}/udhcpc.d 301 install -d ${D}${sysconfdir}/udhcpc.d
302 install -d ${D}${datadir}/udhcpc 302 install -d ${D}${datadir}/udhcpc
303 install -m 0755 ${WORKDIR}/simple.script ${D}${sysconfdir}/udhcpc.d/50default 303 install -m 0755 ${UNPACKDIR}/simple.script ${D}${sysconfdir}/udhcpc.d/50default
304 sed -i "s:/SBIN_DIR/:${base_sbindir}/:" ${D}${sysconfdir}/udhcpc.d/50default 304 sed -i "s:/SBIN_DIR/:${base_sbindir}/:" ${D}${sysconfdir}/udhcpc.d/50default
305 install -m 0755 ${WORKDIR}/default.script ${D}${datadir}/udhcpc/default.script 305 install -m 0755 ${UNPACKDIR}/default.script ${D}${datadir}/udhcpc/default.script
306 fi 306 fi
307 if grep -q "CONFIG_INETD=y" ${B}/.config; then 307 if grep -q "CONFIG_INETD=y" ${B}/.config; then
308 install -m 0755 ${WORKDIR}/inetd ${D}${sysconfdir}/init.d/inetd.${BPN} 308 install -m 0755 ${UNPACKDIR}/inetd ${D}${sysconfdir}/init.d/inetd.${BPN}
309 sed -i "s:/usr/sbin/:${sbindir}/:" ${D}${sysconfdir}/init.d/inetd.${BPN} 309 sed -i "s:/usr/sbin/:${sbindir}/:" ${D}${sysconfdir}/init.d/inetd.${BPN}
310 install -m 0644 ${WORKDIR}/inetd.conf ${D}${sysconfdir}/ 310 install -m 0644 ${UNPACKDIR}/inetd.conf ${D}${sysconfdir}/
311 fi 311 fi
312 if grep -q "CONFIG_MDEV=y" ${B}/.config; then 312 if grep -q "CONFIG_MDEV=y" ${B}/.config; then
313 install -m 0755 ${WORKDIR}/mdev ${D}${sysconfdir}/init.d/mdev 313 install -m 0755 ${UNPACKDIR}/mdev ${D}${sysconfdir}/init.d/mdev
314 if grep "CONFIG_FEATURE_MDEV_CONF=y" ${B}/.config; then 314 if grep "CONFIG_FEATURE_MDEV_CONF=y" ${B}/.config; then
315 install -m 644 ${WORKDIR}/mdev.conf ${D}${sysconfdir}/mdev.conf 315 install -m 644 ${UNPACKDIR}/mdev.conf ${D}${sysconfdir}/mdev.conf
316 install -d ${D}${sysconfdir}/mdev 316 install -d ${D}${sysconfdir}/mdev
317 install -m 0755 ${WORKDIR}/find-touchscreen.sh ${D}${sysconfdir}/mdev 317 install -m 0755 ${UNPACKDIR}/find-touchscreen.sh ${D}${sysconfdir}/mdev
318 install -m 0755 ${WORKDIR}/mdev-mount.sh ${D}${sysconfdir}/mdev 318 install -m 0755 ${UNPACKDIR}/mdev-mount.sh ${D}${sysconfdir}/mdev
319 fi 319 fi
320 fi 320 fi
321 if grep -q "CONFIG_INIT=y" ${B}/.config && ${@bb.utils.contains('VIRTUAL-RUNTIME_init_manager','busybox','true','false',d)}; then 321 if grep -q "CONFIG_INIT=y" ${B}/.config && ${@bb.utils.contains('VIRTUAL-RUNTIME_init_manager','busybox','true','false',d)}; then
322 install -D -m 0755 ${WORKDIR}/rcS ${D}${sysconfdir}/init.d/rcS 322 install -D -m 0755 ${UNPACKDIR}/rcS ${D}${sysconfdir}/init.d/rcS
323 install -D -m 0755 ${WORKDIR}/rcK ${D}${sysconfdir}/init.d/rcK 323 install -D -m 0755 ${UNPACKDIR}/rcK ${D}${sysconfdir}/init.d/rcK
324 install -D -m 0755 ${WORKDIR}/rcS.default ${D}${sysconfdir}/default/rcS 324 install -D -m 0755 ${UNPACKDIR}/rcS.default ${D}${sysconfdir}/default/rcS
325 fi 325 fi
326 326
327 if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then 327 if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
328 if grep -q "CONFIG_KLOGD=y" ${B}/.config; then 328 if grep -q "CONFIG_KLOGD=y" ${B}/.config; then
329 install -d ${D}${systemd_system_unitdir} 329 install -d ${D}${systemd_system_unitdir}
330 sed 's,@base_sbindir@,${base_sbindir},g' < ${WORKDIR}/busybox-klogd.service.in \ 330 sed 's,@base_sbindir@,${base_sbindir},g' < ${UNPACKDIR}/busybox-klogd.service.in \
331 > ${D}${systemd_system_unitdir}/busybox-klogd.service 331 > ${D}${systemd_system_unitdir}/busybox-klogd.service
332 fi 332 fi
333 333
334 if grep -q "CONFIG_SYSLOGD=y" ${B}/.config; then 334 if grep -q "CONFIG_SYSLOGD=y" ${B}/.config; then
335 install -d ${D}${systemd_system_unitdir} 335 install -d ${D}${systemd_system_unitdir}
336 sed 's,@base_sbindir@,${base_sbindir},g' < ${WORKDIR}/busybox-syslog.service.in \ 336 sed 's,@base_sbindir@,${base_sbindir},g' < ${UNPACKDIR}/busybox-syslog.service.in \
337 > ${D}${systemd_system_unitdir}/busybox-syslog.service 337 > ${D}${systemd_system_unitdir}/busybox-syslog.service
338 if [ ! -e ${D}${systemd_system_unitdir}/busybox-klogd.service ] ; then 338 if [ ! -e ${D}${systemd_system_unitdir}/busybox-klogd.service ] ; then
339 sed -i '/klog/d' ${D}${systemd_system_unitdir}/busybox-syslog.service 339 sed -i '/klog/d' ${D}${systemd_system_unitdir}/busybox-syslog.service
340 fi 340 fi
341 if [ -f ${WORKDIR}/busybox-syslog.default ] ; then 341 if [ -f ${UNPACKDIR}/busybox-syslog.default ] ; then
342 install -d ${D}${sysconfdir}/default 342 install -d ${D}${sysconfdir}/default
343 install -m 0644 ${WORKDIR}/busybox-syslog.default ${D}${sysconfdir}/default/busybox-syslog 343 install -m 0644 ${UNPACKDIR}/busybox-syslog.default ${D}${sysconfdir}/default/busybox-syslog
344 fi 344 fi
345 fi 345 fi
346 fi 346 fi
diff --git a/meta/recipes-core/busybox/busybox/0001-libbb-sockaddr2str-ensure-only-printable-characters-.patch b/meta/recipes-core/busybox/busybox/0001-libbb-sockaddr2str-ensure-only-printable-characters-.patch
index 4635250170..ceb3ad7250 100644
--- a/meta/recipes-core/busybox/busybox/0001-libbb-sockaddr2str-ensure-only-printable-characters-.patch
+++ b/meta/recipes-core/busybox/busybox/0001-libbb-sockaddr2str-ensure-only-printable-characters-.patch
@@ -5,7 +5,7 @@ Subject: [PATCH 1/2] libbb: sockaddr2str: ensure only printable characters are
5 returned for the hostname part 5 returned for the hostname part
6 6
7CVE: CVE-2022-28391 7CVE: CVE-2022-28391
8Upstream-Status: Pending 8Upstream-Status: Submitted [https://bugs.busybox.net/show_bug.cgi?id=15001]
9Signed-off-by: Ariadne Conill <ariadne@dereferenced.org> 9Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
10Signed-off-by: Steve Sakoman <steve@sakoman.com> 10Signed-off-by: Steve Sakoman <steve@sakoman.com>
11--- 11---
diff --git a/meta/recipes-core/busybox/busybox/0002-nslookup-sanitize-all-printed-strings-with-printable.patch b/meta/recipes-core/busybox/busybox/0002-nslookup-sanitize-all-printed-strings-with-printable.patch
index 0d7409ddc3..1dbc3388a4 100644
--- a/meta/recipes-core/busybox/busybox/0002-nslookup-sanitize-all-printed-strings-with-printable.patch
+++ b/meta/recipes-core/busybox/busybox/0002-nslookup-sanitize-all-printed-strings-with-printable.patch
@@ -8,7 +8,7 @@ Otherwise, terminal sequences can be injected, which enables various terminal in
8attacks from DNS results. 8attacks from DNS results.
9 9
10CVE: CVE-2022-28391 10CVE: CVE-2022-28391
11Upstream-Status: Pending 11Upstream-Status: Submitted [https://bugs.busybox.net/show_bug.cgi?id=15001]
12Signed-off-by: Ariadne Conill <ariadne@dereferenced.org> 12Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
13Signed-off-by: Steve Sakoman <steve@sakoman.com> 13Signed-off-by: Steve Sakoman <steve@sakoman.com>
14--- 14---
diff --git a/meta/recipes-core/busybox/busybox/busybox-udhcpc-no_deconfig.patch b/meta/recipes-core/busybox/busybox/busybox-udhcpc-no_deconfig.patch
deleted file mode 100644
index 948932a3e8..0000000000
--- a/meta/recipes-core/busybox/busybox/busybox-udhcpc-no_deconfig.patch
+++ /dev/null
@@ -1,87 +0,0 @@
1From 53626cd06a3ef05ed847daea802ef0aa9661caa7 Mon Sep 17 00:00:00 2001
2From: Anders Darander <anders@chargestorm.se>
3Date: Thu, 3 Nov 2011 08:51:31 +0100
4Subject: [PATCH] busybox-udhcpc-no_deconfig.patch
5
6Upstream-Status: Pending
7
8Add a new option -D to the udhcpc client that allows for
9dhcp renewal to occur without having to down the interface
10in the process.
11
12Signed-off-by: Greg Moffatt <greg.moffatt@windriver.com>
13
14Updated to latest Busybox 1.17.3
15
16Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
17
18Updated to Busybox 1.18.4
19option spec is changed
20
21Signed-off-by: Qing He <qing.he@intel.com>
22
23Updated to Busybox 1.19.3
24
25Signed-off-by: Anders Darander <anders@chargestorm.se>
26
27Fixed options -b, -a and -P.
28
29Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
30---
31 networking/udhcp/dhcpc.c | 29 ++++++++++++++++------
32 1 file changed, 21 insertions(+), 8 deletions(-)
33
34Index: busybox-1.34.0/networking/udhcp/dhcpc.c
35===================================================================
36--- busybox-1.34.0.orig/networking/udhcp/dhcpc.c
37+++ busybox-1.34.0/networking/udhcp/dhcpc.c
38@@ -48,6 +48,8 @@
39 };
40 #endif
41
42+/* option whether to down the interface when reconfiguring */
43+static int allow_deconfig = 1;
44
45 /* "struct client_data_t client_data" is in bb_common_bufsiz1 */
46
47@@ -100,8 +102,10 @@
48 OPT_x = 1 << 16,
49 OPT_f = 1 << 17,
50 OPT_B = 1 << 18,
51+ OPT_D = 1 << 19,
52 /* The rest has variable bit positions, need to be clever */
53 OPTBIT_B = 18,
54+ OPTBIT_D = 19,
55 USE_FOR_MMU( OPTBIT_b,)
56 IF_FEATURE_UDHCPC_ARPING(OPTBIT_a,)
57 IF_FEATURE_UDHCP_PORT( OPTBIT_P,)
58@@ -587,7 +591,8 @@
59
60 static void d4_run_script_deconfig(void)
61 {
62- d4_run_script(NULL, "deconfig");
63+ if (allow_deconfig)
64+ d4_run_script(NULL, "deconfig");
65 }
66
67 /*** Sending/receiving packets ***/
68@@ -1244,7 +1249,7 @@
69 /* Parse command line */
70 opt = getopt32long(argv, "^"
71 /* O,x: list; -T,-t,-A take numeric param */
72- "CV:F:i:np:qRr:s:T:+t:+SA:+O:*ox:*fB"
73+ "CV:F:i:np:qRr:s:T:+t:+SA:+O:*ox:*fBD"
74 USE_FOR_MMU("b")
75 IF_FEATURE_UDHCPC_ARPING("a::")
76 IF_FEATURE_UDHCP_PORT("P:")
77@@ -1361,6 +1366,10 @@
78 logmode |= LOGMODE_SYSLOG;
79 }
80
81+ if (opt & OPT_D) {
82+ allow_deconfig = 0;
83+ }
84+
85 /* Create pidfile */
86 write_pidfile(client_data.pidfile);
87 /* Goes to stdout (unless NOMMU) and possibly syslog */
diff --git a/meta/recipes-core/busybox/busybox_1.36.1.bb b/meta/recipes-core/busybox/busybox_1.36.1.bb
index 06eb9eb999..373a6b7781 100644
--- a/meta/recipes-core/busybox/busybox_1.36.1.bb
+++ b/meta/recipes-core/busybox/busybox_1.36.1.bb
@@ -2,7 +2,6 @@ require busybox.inc
2 2
3SRC_URI = "https://busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \ 3SRC_URI = "https://busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
4 file://0001-depmod-Ignore-.debug-directories.patch \ 4 file://0001-depmod-Ignore-.debug-directories.patch \
5 file://busybox-udhcpc-no_deconfig.patch \
6 file://find-touchscreen.sh \ 5 file://find-touchscreen.sh \
7 file://busybox-cron \ 6 file://busybox-cron \
8 file://busybox-httpd \ 7 file://busybox-httpd \
diff --git a/meta/recipes-core/coreutils/coreutils/0001-local.mk-fix-cross-compiling-problem.patch b/meta/recipes-core/coreutils/coreutils/0001-local.mk-fix-cross-compiling-problem.patch
index 66f9a716c9..97a6357ab9 100644
--- a/meta/recipes-core/coreutils/coreutils/0001-local.mk-fix-cross-compiling-problem.patch
+++ b/meta/recipes-core/coreutils/coreutils/0001-local.mk-fix-cross-compiling-problem.patch
@@ -1,4 +1,7 @@
1Subject: local.mk: fix cross compiling problem 1From 7cb2d20cfa2a27191255031d231cd41917dcffe8 Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Mon, 26 Dec 2016 16:10:35 +0800
4Subject: [PATCH] local.mk: fix cross compiling problem
2 5
3We meet the following error when cross compiling. 6We meet the following error when cross compiling.
4| Makefile:3418: *** Recursive variable 'INSTALL' references itself (eventually). Stop. 7| Makefile:3418: *** Recursive variable 'INSTALL' references itself (eventually). Stop.
@@ -12,15 +15,12 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
12 1 file changed, 1 insertion(+), 1 deletion(-) 15 1 file changed, 1 insertion(+), 1 deletion(-)
13 16
14diff --git a/src/local.mk b/src/local.mk 17diff --git a/src/local.mk b/src/local.mk
15index 36dfa4e..c5898cc 100644 18index 96ee941..cdd47d6 100644
16--- a/src/local.mk 19--- a/src/local.mk
17+++ b/src/local.mk 20+++ b/src/local.mk
18@@ -649,4 +649,4 @@ cu_install_program = @INSTALL_PROGRAM@ 21@@ -704,4 +704,4 @@ cu_install_program = @INSTALL@
19 else 22 else
20 cu_install_program = src/ginstall 23 cu_install_program = src/ginstall
21 endif 24 endif
22-INSTALL = $(cu_install_program) -c 25-INSTALL = $(cu_install_program) -c
23+INSTALL_PROGRAM = $(cu_install_program) 26+INSTALL_PROGRAM = $(cu_install_program)
24--
252.1.0
26
diff --git a/meta/recipes-core/coreutils/coreutils/0001-posixtm-pacify-clang-18.patch b/meta/recipes-core/coreutils/coreutils/0001-posixtm-pacify-clang-18.patch
deleted file mode 100644
index e6c84be3c4..0000000000
--- a/meta/recipes-core/coreutils/coreutils/0001-posixtm-pacify-clang-18.patch
+++ /dev/null
@@ -1,38 +0,0 @@
1From 67c298c36f69b6906840b7584be06b7b5f33f829 Mon Sep 17 00:00:00 2001
2From: Paul Eggert <eggert@cs.ucla.edu>
3Date: Tue, 16 Jan 2024 17:21:08 -0800
4Subject: [PATCH] posixtm: pacify clang 18
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9Problem reported by Khem Raj in:
10https://lists.gnu.org/r/bug-gnulib/2024-01/msg00045.html
11* lib/posixtm.c (posixtime): Pacify clang 18 by converting bool to int.
12Arguably this is a bug in draft C2x, since the non-pointer args to
13ckd_add should promote just like any other expressions do;
14but that’s not clang’s fault.
15
16Upstream-Status: Submitted [https://lists.gnu.org/archive/html/bug-gnulib/2024-01/msg00046.html]
17Signed-off-by: Khem Raj <raj.khem@gmail.com>
18---
19 ChangeLog | 10 ++++++++++
20 lib/posixtm.c | 2 +-
21 2 files changed, 11 insertions(+), 1 deletion(-)
22
23diff --git a/lib/posixtm.c b/lib/posixtm.c
24index ef9f55f873..a072c7cad0 100644
25--- a/lib/posixtm.c
26+++ b/lib/posixtm.c
27@@ -191,7 +191,7 @@ posixtime (time_t *p, const char *s, unsigned int syntax_bits)
28 | (tm0.tm_min ^ tm1.tm_min)
29 | (tm0.tm_sec ^ tm1.tm_sec)))
30 {
31- if (ckd_add (&t, t, leapsec))
32+ if (ckd_add (&t, t, +leapsec))
33 return false;
34 *p = t;
35 return true;
36--
372.43.0
38
diff --git a/meta/recipes-core/coreutils/coreutils/CVE-2024-0684.patch b/meta/recipes-core/coreutils/coreutils/CVE-2024-0684.patch
deleted file mode 100644
index 0c68e2dce0..0000000000
--- a/meta/recipes-core/coreutils/coreutils/CVE-2024-0684.patch
+++ /dev/null
@@ -1,39 +0,0 @@
1From c4c5ed8f4e9cd55a12966d4f520e3a13101637d9 Mon Sep 17 00:00:00 2001
2From: Paul Eggert <eggert@cs.ucla.edu>
3Date: Tue, 16 Jan 2024 13:48:32 -0800
4Subject: [PATCH 1/1] split: do not shrink hold buffer
5MIME-Version: 1.0
6Content-Type: text/plain; charset=utf8
7Content-Transfer-Encoding: 8bit
8
9* src/split.c (line_bytes_split): Do not shrink hold buffer.
10If it’s large for this batch it’s likely to be large for the next
11batch, and for ‘split’ it’s not worth the complexity/CPU hassle to
12shrink it. Do not assume hold_size can be bufsize.
13
14CVE: CVE-2024-0684
15Upstream-Status: Backport [https://github.com/coreutils/coreutils/commit/c4c5ed8f4e9cd55a12966d4f520e3a13101637d9]
16Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com>
17---
18 src/split.c | 3 ---
19 1 file changed, 3 deletions(-)
20
21diff --git a/src/split.c b/src/split.c
22index 64020c859..037960a59 100644
23--- a/src/split.c
24+++ b/src/split.c
25@@ -809,10 +809,7 @@ line_bytes_split (intmax_t n_bytes, char *buf, idx_t bufsize)
26 {
27 cwrite (n_out == 0, hold, n_hold);
28 n_out += n_hold;
29- if (n_hold > bufsize)
30- hold = xirealloc (hold, bufsize);
31 n_hold = 0;
32- hold_size = bufsize;
33 }
34
35 /* Output to eol if present. */
36--
372.11.4.GIT
38
39
diff --git a/meta/recipes-core/coreutils/coreutils/remove-usr-local-lib-from-m4.patch b/meta/recipes-core/coreutils/coreutils/remove-usr-local-lib-from-m4.patch
index 1a8a9b9983..718de0ab78 100644
--- a/meta/recipes-core/coreutils/coreutils/remove-usr-local-lib-from-m4.patch
+++ b/meta/recipes-core/coreutils/coreutils/remove-usr-local-lib-from-m4.patch
@@ -1,4 +1,4 @@
1From a26530083a29eeee910bfd606ecc621acecd547a Mon Sep 17 00:00:00 2001 1From f53ffb5b27ab7d4a4c62df00ebd6a1a6936d1709 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 3 Aug 2011 14:12:30 -0700 3Date: Wed, 3 Aug 2011 14:12:30 -0700
4Subject: [PATCH] coreutils: Fix build on uclibc 4Subject: [PATCH] coreutils: Fix build on uclibc
@@ -12,16 +12,15 @@ and make life easier for cross compilation process.
12Signed-off-by: Khem Raj <raj.khem@gmail.com> 12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13 13
14Upstream-Status: Inappropriate [Upstream does care for AIX while we may not] 14Upstream-Status: Inappropriate [Upstream does care for AIX while we may not]
15
16--- 15---
17 m4/getloadavg.m4 | 12 ------------ 16 m4/getloadavg.m4 | 12 ------------
18 1 file changed, 12 deletions(-) 17 1 file changed, 12 deletions(-)
19 18
20diff --git a/m4/getloadavg.m4 b/m4/getloadavg.m4 19diff --git a/m4/getloadavg.m4 b/m4/getloadavg.m4
21index 8e96965..63782a2 100644 20index 9d0236f..68f7c52 100644
22--- a/m4/getloadavg.m4 21--- a/m4/getloadavg.m4
23+++ b/m4/getloadavg.m4 22+++ b/m4/getloadavg.m4
24@@ -41,18 +41,6 @@ AC_CHECK_FUNC([getloadavg], [], 23@@ -46,18 +46,6 @@ if test $ac_cv_func_getloadavg != yes; then
25 [LIBS="-lutil $LIBS" gl_func_getloadavg_done=yes]) 24 [LIBS="-lutil $LIBS" gl_func_getloadavg_done=yes])
26 fi 25 fi
27 26
diff --git a/meta/recipes-core/coreutils/coreutils_9.4.bb b/meta/recipes-core/coreutils/coreutils_9.5.bb
index fc51adcd5b..9a5f836ebe 100644
--- a/meta/recipes-core/coreutils/coreutils_9.4.bb
+++ b/meta/recipes-core/coreutils/coreutils_9.5.bb
@@ -6,7 +6,7 @@ HOMEPAGE = "http://www.gnu.org/software/coreutils/"
6BUGTRACKER = "http://debbugs.gnu.org/coreutils" 6BUGTRACKER = "http://debbugs.gnu.org/coreutils"
7LICENSE = "GPL-3.0-or-later" 7LICENSE = "GPL-3.0-or-later"
8LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \ 8LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \
9 file://src/ls.c;beginline=1;endline=15;md5=b720a8b317035d66c555fc6d89e3674c \ 9 file://src/ls.c;beginline=1;endline=15;md5=9ac94aaed7fd46fd8df7147a9e3410cb \
10 " 10 "
11DEPENDS = "gmp libcap" 11DEPENDS = "gmp libcap"
12DEPENDS:class-native = "" 12DEPENDS:class-native = ""
@@ -16,14 +16,12 @@ inherit autotools gettext texinfo
16SRC_URI = "${GNU_MIRROR}/coreutils/${BP}.tar.xz \ 16SRC_URI = "${GNU_MIRROR}/coreutils/${BP}.tar.xz \
17 file://remove-usr-local-lib-from-m4.patch \ 17 file://remove-usr-local-lib-from-m4.patch \
18 file://0001-local.mk-fix-cross-compiling-problem.patch \ 18 file://0001-local.mk-fix-cross-compiling-problem.patch \
19 file://0001-posixtm-pacify-clang-18.patch \
20 file://CVE-2024-0684.patch \
21 file://run-ptest \ 19 file://run-ptest \
22 " 20 "
23SRC_URI[sha256sum] = "ea613a4cf44612326e917201bbbcdfbd301de21ffc3b59b6e5c07e040b275e52" 21SRC_URI[sha256sum] = "cd328edeac92f6a665de9f323c93b712af1858bc2e0d88f3f7100469470a1b8a"
24 22
25# http://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=v8.27-101-gf5d7c0842 23# http://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=v8.27-101-gf5d7c0842
26# 24#
27CVE_STATUS[CVE-2016-2781] = "disputed: runcon is not really a sandbox command, use `runcon ... setsid ...` to avoid this particular issue." 25CVE_STATUS[CVE-2016-2781] = "disputed: runcon is not really a sandbox command, use `runcon ... setsid ...` to avoid this particular issue."
28 26
29EXTRA_OECONF:class-target = "--enable-install-program=arch,hostname --libexecdir=${libdir}" 27EXTRA_OECONF:class-target = "--enable-install-program=arch,hostname --libexecdir=${libdir}"
@@ -169,7 +167,7 @@ BBCLASSEXTEND = "native nativesdk"
169 167
170inherit ptest 168inherit ptest
171 169
172RDEPENDS:${PN}-ptest += "bash findutils gawk liberror-perl make perl perl-modules python3-core sed shadow" 170RDEPENDS:${PN}-ptest += "bash findutils gawk make perl perl-modules python3-core sed shadow"
173 171
174# -dev automatic dependencies fails as we don't want libmodule-build-perl-dev, its too heavy 172# -dev automatic dependencies fails as we don't want libmodule-build-perl-dev, its too heavy
175# may need tweaking if DEPENDS changes 173# may need tweaking if DEPENDS changes
diff --git a/meta/recipes-core/dbus/dbus_1.14.10.bb b/meta/recipes-core/dbus/dbus_1.14.10.bb
index 4fe7af7512..6a08f6984e 100644
--- a/meta/recipes-core/dbus/dbus_1.14.10.bb
+++ b/meta/recipes-core/dbus/dbus_1.14.10.bb
@@ -129,8 +129,8 @@ do_install() {
129 129
130 if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then 130 if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
131 install -d ${D}${sysconfdir}/init.d 131 install -d ${D}${sysconfdir}/init.d
132 sed 's:@bindir@:${bindir}:' < ${WORKDIR}/dbus-1.init >${WORKDIR}/dbus-1.init.sh 132 sed 's:@bindir@:${bindir}:' < ${UNPACKDIR}/dbus-1.init > ${S}/dbus-1.init.sh
133 install -m 0755 ${WORKDIR}/dbus-1.init.sh ${D}${sysconfdir}/init.d/dbus-1 133 install -m 0755 ${S}/dbus-1.init.sh ${D}${sysconfdir}/init.d/dbus-1
134 install -d ${D}${sysconfdir}/default/volatiles 134 install -d ${D}${sysconfdir}/default/volatiles
135 echo "d messagebus messagebus 0755 /run/dbus none" \ 135 echo "d messagebus messagebus 0755 /run/dbus none" \
136 > ${D}${sysconfdir}/default/volatiles/99_dbus 136 > ${D}${sysconfdir}/default/volatiles/99_dbus
diff --git a/meta/recipes-core/dropbear/dropbear/0001-urandom-xauth-changes-to-options.h.patch b/meta/recipes-core/dropbear/dropbear/0001-urandom-xauth-changes-to-options.h.patch
index 99adcfd770..9c1dd3f606 100644
--- a/meta/recipes-core/dropbear/dropbear/0001-urandom-xauth-changes-to-options.h.patch
+++ b/meta/recipes-core/dropbear/dropbear/0001-urandom-xauth-changes-to-options.h.patch
@@ -1,15 +1,18 @@
1Subject: [PATCH 1/6] urandom-xauth-changes-to-options.h 1From cdc6a4a57a86d8116a92a5d905993e65cf723556 Mon Sep 17 00:00:00 2001
2From: Richard Purdie <richard@openedhand.com>
3Date: Wed, 31 Aug 2005 10:45:47 +0000
4Subject: [PATCH] urandom-xauth-changes-to-options.h
2 5
3Upstream-Status: Inappropriate [configuration] 6Upstream-Status: Inappropriate [configuration]
4--- 7---
5 default_options.h | 2 +- 8 src/default_options.h | 2 +-
6 1 file changed, 1 insertion(+), 1 deletion(-) 9 1 file changed, 1 insertion(+), 1 deletion(-)
7 10
8diff --git a/default_options.h b/default_options.h 11diff --git a/src/default_options.h b/src/default_options.h
9index 349338c..5ffac25 100644 12index 6e970bb..ccc8b47 100644
10--- a/default_options.h 13--- a/src/default_options.h
11+++ b/default_options.h 14+++ b/src/default_options.h
12@@ -289,7 +289,7 @@ group1 in Dropbear server too */ 15@@ -311,7 +311,7 @@ group1 in Dropbear server too */
13 16
14 /* The command to invoke for xauth when using X11 forwarding. 17 /* The command to invoke for xauth when using X11 forwarding.
15 * "-q" for quiet */ 18 * "-q" for quiet */
@@ -18,6 +21,3 @@ index 349338c..5ffac25 100644
18 21
19 22
20 /* If you want to enable running an sftp server (such as the one included with 23 /* If you want to enable running an sftp server (such as the one included with
21--
222.25.1
23
diff --git a/meta/recipes-core/dropbear/dropbear/0005-dropbear-enable-pam.patch b/meta/recipes-core/dropbear/dropbear/0005-dropbear-enable-pam.patch
index 32c3ea5f08..6743f506e9 100644
--- a/meta/recipes-core/dropbear/dropbear/0005-dropbear-enable-pam.patch
+++ b/meta/recipes-core/dropbear/dropbear/0005-dropbear-enable-pam.patch
@@ -1,7 +1,7 @@
1From b8cece92ba19aa77ac013ea161bfe4c7147747c9 Mon Sep 17 00:00:00 2001 1From 253ca01f0fc50dbaeb2ff8bcece0c34256eba94f Mon Sep 17 00:00:00 2001
2From: Jussi Kukkonen <jussi.kukkonen@intel.com> 2From: Jussi Kukkonen <jussi.kukkonen@intel.com>
3Date: Wed, 2 Dec 2015 11:36:02 +0200 3Date: Wed, 2 Dec 2015 11:36:02 +0200
4Subject: Enable pam 4Subject: [PATCH] Enable pam
5 5
6We need modify file default_options.h besides enabling pam in 6We need modify file default_options.h besides enabling pam in
7configure if we want dropbear to support pam. 7configure if we want dropbear to support pam.
@@ -11,14 +11,14 @@ Upstream-Status: Pending
11Signed-off-by: Xiaofeng Yan <xiaofeng.yan@windriver.com> 11Signed-off-by: Xiaofeng Yan <xiaofeng.yan@windriver.com>
12Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> 12Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
13--- 13---
14 default_options.h | 4 ++-- 14 src/default_options.h | 4 ++--
15 1 file changed, 2 insertions(+), 2 deletions(-) 15 1 file changed, 2 insertions(+), 2 deletions(-)
16 16
17diff --git a/default_options.h b/default_options.h 17diff --git a/src/default_options.h b/src/default_options.h
18index 0e3d027..349338c 100644 18index ccc8b47..12768d1 100644
19--- a/default_options.h 19--- a/src/default_options.h
20+++ b/default_options.h 20+++ b/src/default_options.h
21@@ -210,7 +210,7 @@ group1 in Dropbear server too */ 21@@ -228,7 +228,7 @@ group1 in Dropbear server too */
22 22
23 /* Authentication Types - at least one required. 23 /* Authentication Types - at least one required.
24 RFC Draft requires pubkey auth, and recommends password */ 24 RFC Draft requires pubkey auth, and recommends password */
@@ -27,7 +27,7 @@ index 0e3d027..349338c 100644
27 27
28 /* Note: PAM auth is quite simple and only works for PAM modules which just do 28 /* Note: PAM auth is quite simple and only works for PAM modules which just do
29 * a simple "Login: " "Password: " (you can edit the strings in svr-authpam.c). 29 * a simple "Login: " "Password: " (you can edit the strings in svr-authpam.c).
30@@ -218,7 +218,7 @@ group1 in Dropbear server too */ 30@@ -236,7 +236,7 @@ group1 in Dropbear server too */
31 * but there's an interface via a PAM module. It won't work for more complex 31 * but there's an interface via a PAM module. It won't work for more complex
32 * PAM challenge/response. 32 * PAM challenge/response.
33 * You can't enable both PASSWORD and PAM. */ 33 * You can't enable both PASSWORD and PAM. */
@@ -36,6 +36,3 @@ index 0e3d027..349338c 100644
36 36
37 /* ~/.ssh/authorized_keys authentication. 37 /* ~/.ssh/authorized_keys authentication.
38 * You must define DROPBEAR_SVR_PUBKEY_AUTH in order to use plugins. */ 38 * You must define DROPBEAR_SVR_PUBKEY_AUTH in order to use plugins. */
39--
402.25.1
41
diff --git a/meta/recipes-core/dropbear/dropbear/0006-dropbear-configuration-file.patch b/meta/recipes-core/dropbear/dropbear/0006-dropbear-configuration-file.patch
index deed78ffb9..44861088cc 100644
--- a/meta/recipes-core/dropbear/dropbear/0006-dropbear-configuration-file.patch
+++ b/meta/recipes-core/dropbear/dropbear/0006-dropbear-configuration-file.patch
@@ -1,4 +1,4 @@
1From e3a5db1b6d3f6382a15b2266458c26c645a10f18 Mon Sep 17 00:00:00 2001 1From 16b147f97f0938cddb55ec1c90bc919c13f26fc0 Mon Sep 17 00:00:00 2001
2From: Mingli Yu <Mingli.Yu@windriver.com> 2From: Mingli Yu <Mingli.Yu@windriver.com>
3Date: Thu, 6 Sep 2018 15:54:00 +0800 3Date: Thu, 6 Sep 2018 15:54:00 +0800
4Subject: [PATCH] dropbear configuration file 4Subject: [PATCH] dropbear configuration file
@@ -12,14 +12,14 @@ Signed-off-by: Maxin B. John <maxin.john@enea.com>
12Signed-off-by: Xiaofeng Yan <xiaofeng.yan@windriver.com> 12Signed-off-by: Xiaofeng Yan <xiaofeng.yan@windriver.com>
13Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com> 13Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
14--- 14---
15 svr-authpam.c | 2 +- 15 src/svr-authpam.c | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-) 16 1 file changed, 1 insertion(+), 1 deletion(-)
17 17
18diff --git a/svr-authpam.c b/svr-authpam.c 18diff --git a/src/svr-authpam.c b/src/svr-authpam.c
19index d201bc9..165ec5c 100644 19index ec14632..026102f 100644
20--- a/svr-authpam.c 20--- a/src/svr-authpam.c
21+++ b/svr-authpam.c 21+++ b/src/svr-authpam.c
22@@ -223,7 +223,7 @@ void svr_auth_pam(int valid_user) { 22@@ -224,7 +224,7 @@ void svr_auth_pam(int valid_user) {
23 } 23 }
24 24
25 /* Init pam */ 25 /* Init pam */
@@ -28,6 +28,3 @@ index d201bc9..165ec5c 100644
28 dropbear_log(LOG_WARNING, "pam_start() failed, rc=%d, %s", 28 dropbear_log(LOG_WARNING, "pam_start() failed, rc=%d, %s",
29 rc, pam_strerror(pamHandlep, rc)); 29 rc, pam_strerror(pamHandlep, rc));
30 goto cleanup; 30 goto cleanup;
31--
322.7.4
33
diff --git a/meta/recipes-core/dropbear/dropbear/CVE-2023-36328.patch b/meta/recipes-core/dropbear/dropbear/CVE-2023-36328.patch
deleted file mode 100644
index ec50d69816..0000000000
--- a/meta/recipes-core/dropbear/dropbear/CVE-2023-36328.patch
+++ /dev/null
@@ -1,144 +0,0 @@
1From beba892bc0d4e4ded4d667ab1d2a94f4d75109a9 Mon Sep 17 00:00:00 2001
2From: czurnieden <czurnieden@gmx.de>
3Date: Fri, 8 Sep 2023 10:07:32 +0000
4Subject: [PATCH] Fix possible integer overflow
5
6CVE: CVE-2023-36328
7
8Upstream-Status: Backport [https://github.com/libtom/libtommath/commit/beba892bc0d4e4ded4d667ab1d2a94f4d75109a9]
9
10Signed-off-by: Yogita Urade <yogita.urade@windriver.com>
11---
12 libtommath/bn_mp_2expt.c | 4 ++++
13 libtommath/bn_mp_grow.c | 4 ++++
14 libtommath/bn_mp_init_size.c | 5 +++++
15 libtommath/bn_mp_mul_2d.c | 4 ++++
16 libtommath/bn_s_mp_mul_digs.c | 4 ++++
17 libtommath/bn_s_mp_mul_digs_fast.c | 4 ++++
18 libtommath/bn_s_mp_mul_high_digs.c | 4 ++++
19 libtommath/bn_s_mp_mul_high_digs_fast.c | 4 ++++
20 8 files changed, 33 insertions(+)
21
22diff --git a/libtommath/bn_mp_2expt.c b/libtommath/bn_mp_2expt.c
23index 0ae3df1..ca6fbc3 100644
24--- a/libtommath/bn_mp_2expt.c
25+++ b/libtommath/bn_mp_2expt.c
26@@ -12,6 +12,10 @@ mp_err mp_2expt(mp_int *a, int b)
27 {
28 mp_err err;
29
30+ if (b < 0) {
31+ return MP_VAL;
32+ }
33+
34 /* zero a as per default */
35 mp_zero(a);
36
37diff --git a/libtommath/bn_mp_grow.c b/libtommath/bn_mp_grow.c
38index 9e904c5..2b16826 100644
39--- a/libtommath/bn_mp_grow.c
40+++ b/libtommath/bn_mp_grow.c
41@@ -9,6 +9,10 @@ mp_err mp_grow(mp_int *a, int size)
42 int i;
43 mp_digit *tmp;
44
45+ if (size < 0) {
46+ return MP_VAL;
47+ }
48+
49 /* if the alloc size is smaller alloc more ram */
50 if (a->alloc < size) {
51 /* reallocate the array a->dp
52diff --git a/libtommath/bn_mp_init_size.c b/libtommath/bn_mp_init_size.c
53index d622687..5fefa96 100644
54--- a/libtommath/bn_mp_init_size.c
55+++ b/libtommath/bn_mp_init_size.c
56@@ -6,6 +6,11 @@
57 /* init an mp_init for a given size */
58 mp_err mp_init_size(mp_int *a, int size)
59 {
60+
61+ if (size < 0) {
62+ return MP_VAL;
63+ }
64+
65 size = MP_MAX(MP_MIN_PREC, size);
66
67 /* alloc mem */
68diff --git a/libtommath/bn_mp_mul_2d.c b/libtommath/bn_mp_mul_2d.c
69index 87354de..2744163 100644
70--- a/libtommath/bn_mp_mul_2d.c
71+++ b/libtommath/bn_mp_mul_2d.c
72@@ -9,6 +9,10 @@ mp_err mp_mul_2d(const mp_int *a, int b, mp_int *c)
73 mp_digit d;
74 mp_err err;
75
76+ if (b < 0) {
77+ return MP_VAL;
78+ }
79+
80 /* copy */
81 if (a != c) {
82 if ((err = mp_copy(a, c)) != MP_OKAY) {
83diff --git a/libtommath/bn_s_mp_mul_digs.c b/libtommath/bn_s_mp_mul_digs.c
84index 64509d4..2d2f5b0 100644
85--- a/libtommath/bn_s_mp_mul_digs.c
86+++ b/libtommath/bn_s_mp_mul_digs.c
87@@ -16,6 +16,10 @@ mp_err s_mp_mul_digs(const mp_int *a, const mp_int *b, mp_int *c, int digs)
88 mp_word r;
89 mp_digit tmpx, *tmpt, *tmpy;
90
91+ if (digs < 0) {
92+ return MP_VAL;
93+ }
94+
95 /* can we use the fast multiplier? */
96 if ((digs < MP_WARRAY) &&
97 (MP_MIN(a->used, b->used) < MP_MAXFAST)) {
98diff --git a/libtommath/bn_s_mp_mul_digs_fast.c b/libtommath/bn_s_mp_mul_digs_fast.c
99index b2a287b..d6dd3cc 100644
100--- a/libtommath/bn_s_mp_mul_digs_fast.c
101+++ b/libtommath/bn_s_mp_mul_digs_fast.c
102@@ -26,6 +26,10 @@ mp_err s_mp_mul_digs_fast(const mp_int *a, const mp_int *b, mp_int *c, int digs)
103 mp_digit W[MP_WARRAY];
104 mp_word _W;
105
106+ if (digs < 0) {
107+ return MP_VAL;
108+ }
109+
110 /* grow the destination as required */
111 if (c->alloc < digs) {
112 if ((err = mp_grow(c, digs)) != MP_OKAY) {
113diff --git a/libtommath/bn_s_mp_mul_high_digs.c b/libtommath/bn_s_mp_mul_high_digs.c
114index 2bb2a50..c9dd355 100644
115--- a/libtommath/bn_s_mp_mul_high_digs.c
116+++ b/libtommath/bn_s_mp_mul_high_digs.c
117@@ -15,6 +15,10 @@ mp_err s_mp_mul_high_digs(const mp_int *a, const mp_int *b, mp_int *c, int digs)
118 mp_word r;
119 mp_digit tmpx, *tmpt, *tmpy;
120
121+ if (digs < 0) {
122+ return MP_VAL;
123+ }
124+
125 /* can we use the fast multiplier? */
126 if (MP_HAS(S_MP_MUL_HIGH_DIGS_FAST)
127 && ((a->used + b->used + 1) < MP_WARRAY)
128diff --git a/libtommath/bn_s_mp_mul_high_digs_fast.c b/libtommath/bn_s_mp_mul_high_digs_fast.c
129index a2c4fb6..afe3e4b 100644
130--- a/libtommath/bn_s_mp_mul_high_digs_fast.c
131+++ b/libtommath/bn_s_mp_mul_high_digs_fast.c
132@@ -19,6 +19,10 @@ mp_err s_mp_mul_high_digs_fast(const mp_int *a, const mp_int *b, mp_int *c, int
133 mp_digit W[MP_WARRAY];
134 mp_word _W;
135
136+ if (digs < 0) {
137+ return MP_VAL;
138+ }
139+
140 /* grow the destination as required */
141 pa = a->used + b->used;
142 if (c->alloc < pa) {
143--
1442.35.5
diff --git a/meta/recipes-core/dropbear/dropbear/dropbear-disable-weak-ciphers.patch b/meta/recipes-core/dropbear/dropbear/dropbear-disable-weak-ciphers.patch
index 5c60868ed8..a20781d31d 100644
--- a/meta/recipes-core/dropbear/dropbear/dropbear-disable-weak-ciphers.patch
+++ b/meta/recipes-core/dropbear/dropbear/dropbear-disable-weak-ciphers.patch
@@ -1,4 +1,4 @@
1From c347ece05a7fdbf50d76cb136b9ed45caed333f6 Mon Sep 17 00:00:00 2001 1From c8a0c8e87b772576f3a431c3b4cacaf5aa001dcc Mon Sep 17 00:00:00 2001
2From: Joseph Reynolds <joseph.reynolds1@ibm.com> 2From: Joseph Reynolds <joseph.reynolds1@ibm.com>
3Date: Thu, 20 Jun 2019 16:29:15 -0500 3Date: Thu, 20 Jun 2019 16:29:15 -0500
4Subject: [PATCH] dropbear: new feature: disable-weak-ciphers 4Subject: [PATCH] dropbear: new feature: disable-weak-ciphers
@@ -10,14 +10,14 @@ and we want to support the stong algorithms.
10Upstream-Status: Inappropriate [configuration] 10Upstream-Status: Inappropriate [configuration]
11Signed-off-by: Joseph Reynolds <joseph.reynolds1@ibm.com> 11Signed-off-by: Joseph Reynolds <joseph.reynolds1@ibm.com>
12--- 12---
13 default_options.h | 2 +- 13 src/default_options.h | 2 +-
14 1 file changed, 1 insertion(+), 1 deletion(-) 14 1 file changed, 1 insertion(+), 1 deletion(-)
15 15
16diff --git a/default_options.h b/default_options.h 16diff --git a/src/default_options.h b/src/default_options.h
17index d417588..bc5200f 100644 17index 12768d1..2b07497 100644
18--- a/default_options.h 18--- a/src/default_options.h
19+++ b/default_options.h 19+++ b/src/default_options.h
20@@ -180,7 +180,7 @@ IMPORTANT: Some options will require "make clean" after changes */ 20@@ -197,7 +197,7 @@ IMPORTANT: Some options will require "make clean" after changes */
21 * Small systems should generally include either curve25519 or ecdh for performance. 21 * Small systems should generally include either curve25519 or ecdh for performance.
22 * curve25519 is less widely supported but is faster 22 * curve25519 is less widely supported but is faster
23 */ 23 */
@@ -26,6 +26,3 @@ index d417588..bc5200f 100644
26 #define DROPBEAR_DH_GROUP14_SHA256 1 26 #define DROPBEAR_DH_GROUP14_SHA256 1
27 #define DROPBEAR_DH_GROUP16 0 27 #define DROPBEAR_DH_GROUP16 0
28 #define DROPBEAR_CURVE25519 1 28 #define DROPBEAR_CURVE25519 1
29--
302.25.1
31
diff --git a/meta/recipes-core/dropbear/dropbear_2022.83.bb b/meta/recipes-core/dropbear/dropbear_2024.85.bb
index 528eff1a10..54001414d0 100644
--- a/meta/recipes-core/dropbear/dropbear_2022.83.bb
+++ b/meta/recipes-core/dropbear/dropbear_2024.85.bb
@@ -21,10 +21,9 @@ SRC_URI = "http://matt.ucc.asn.au/dropbear/releases/dropbear-${PV}.tar.bz2 \
21 file://dropbear.default \ 21 file://dropbear.default \
22 ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \ 22 ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \
23 ${@bb.utils.contains('PACKAGECONFIG', 'disable-weak-ciphers', 'file://dropbear-disable-weak-ciphers.patch', '', d)} \ 23 ${@bb.utils.contains('PACKAGECONFIG', 'disable-weak-ciphers', 'file://dropbear-disable-weak-ciphers.patch', '', d)} \
24 file://CVE-2023-36328.patch \
25 " 24 "
26 25
27SRC_URI[sha256sum] = "bc5a121ffbc94b5171ad5ebe01be42746d50aa797c9549a4639894a16749443b" 26SRC_URI[sha256sum] = "86b036c433a69d89ce51ebae335d65c47738ccf90d13e5eb0fea832e556da502"
28 27
29PAM_SRC_URI = "file://0005-dropbear-enable-pam.patch \ 28PAM_SRC_URI = "file://0005-dropbear-enable-pam.patch \
30 file://0006-dropbear-configuration-file.patch \ 29 file://0006-dropbear-configuration-file.patch \
@@ -77,7 +76,7 @@ do_install() {
77 ${D}${sbindir} \ 76 ${D}${sbindir} \
78 ${D}${localstatedir} 77 ${D}${localstatedir}
79 78
80 install -m 0644 ${WORKDIR}/dropbear.default ${D}${sysconfdir}/default/dropbear 79 install -m 0644 ${UNPACKDIR}/dropbear.default ${D}${sysconfdir}/default/dropbear
81 80
82 install -m 0755 dropbearmulti ${D}${sbindir}/ 81 install -m 0755 dropbearmulti ${D}${sbindir}/
83 82
@@ -95,18 +94,18 @@ do_install() {
95 -e 's,/usr/sbin,${sbindir},g' \ 94 -e 's,/usr/sbin,${sbindir},g' \
96 -e 's,/var,${localstatedir},g' \ 95 -e 's,/var,${localstatedir},g' \
97 -e 's,/usr/bin,${bindir},g' \ 96 -e 's,/usr/bin,${bindir},g' \
98 -e 's,/usr,${prefix},g' ${WORKDIR}/init > ${D}${sysconfdir}/init.d/dropbear 97 -e 's,/usr,${prefix},g' ${UNPACKDIR}/init > ${D}${sysconfdir}/init.d/dropbear
99 chmod 755 ${D}${sysconfdir}/init.d/dropbear 98 chmod 755 ${D}${sysconfdir}/init.d/dropbear
100 if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then 99 if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
101 install -d ${D}${sysconfdir}/pam.d 100 install -d ${D}${sysconfdir}/pam.d
102 install -m 0644 ${WORKDIR}/dropbear ${D}${sysconfdir}/pam.d/ 101 install -m 0644 ${UNPACKDIR}/dropbear ${D}${sysconfdir}/pam.d/
103 fi 102 fi
104 103
105 # deal with systemd unit files 104 # deal with systemd unit files
106 install -d ${D}${systemd_system_unitdir} 105 install -d ${D}${systemd_system_unitdir}
107 install -m 0644 ${WORKDIR}/dropbearkey.service ${D}${systemd_system_unitdir} 106 install -m 0644 ${UNPACKDIR}/dropbearkey.service ${D}${systemd_system_unitdir}
108 install -m 0644 ${WORKDIR}/dropbear@.service ${D}${systemd_system_unitdir} 107 install -m 0644 ${UNPACKDIR}/dropbear@.service ${D}${systemd_system_unitdir}
109 install -m 0644 ${WORKDIR}/dropbear.socket ${D}${systemd_system_unitdir} 108 install -m 0644 ${UNPACKDIR}/dropbear.socket ${D}${systemd_system_unitdir}
110 sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ 109 sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \
111 -e 's,@BINDIR@,${bindir},g' \ 110 -e 's,@BINDIR@,${bindir},g' \
112 -e 's,@SBINDIR@,${sbindir},g' \ 111 -e 's,@SBINDIR@,${sbindir},g' \
diff --git a/meta/recipes-core/ell/ell_0.63.bb b/meta/recipes-core/ell/ell_0.65.bb
index 7ecb63a478..9b559caf8a 100644
--- a/meta/recipes-core/ell/ell_0.63.bb
+++ b/meta/recipes-core/ell/ell_0.65.bb
@@ -15,8 +15,4 @@ DEPENDS = "dbus"
15inherit autotools pkgconfig 15inherit autotools pkgconfig
16 16
17SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/libs/${BPN}/${BPN}-${PV}.tar.xz" 17SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/libs/${BPN}/${BPN}-${PV}.tar.xz"
18SRC_URI[sha256sum] = "7397c76996d7646b9917ebf016cd67586b10166295af2e0e18cdb5b8f6659965" 18SRC_URI[sha256sum] = "9ee7ac57b188d391cead705d3596a6d3240341786475149db297782a52269aa5"
19
20do_configure:prepend () {
21 mkdir -p ${S}/build-aux
22}
diff --git a/meta/recipes-core/gettext/gettext-minimal-native_0.22.5.bb b/meta/recipes-core/gettext/gettext-minimal-native_0.22.5.bb
index db1bbb7e68..96acf9bb9f 100644
--- a/meta/recipes-core/gettext/gettext-minimal-native_0.22.5.bb
+++ b/meta/recipes-core/gettext/gettext-minimal-native_0.22.5.bb
@@ -13,7 +13,7 @@ INHIBIT_DEFAULT_DEPS = "1"
13INHIBIT_AUTOTOOLS_DEPS = "1" 13INHIBIT_AUTOTOOLS_DEPS = "1"
14 14
15LICENSE = "FSF-Unlimited" 15LICENSE = "FSF-Unlimited"
16LIC_FILES_CHKSUM = "file://../COPYING;md5=4bd090a20bfcd1a18f1f79837b5e3e91" 16LIC_FILES_CHKSUM = "file://${UNPACKDIR}/COPYING;md5=4bd090a20bfcd1a18f1f79837b5e3e91"
17 17
18inherit native 18inherit native
19 19
diff --git a/meta/recipes-core/gettext/gettext/0001-intl-Fix-build-failure-with-make-j.patch b/meta/recipes-core/gettext/gettext/0001-intl-Fix-build-failure-with-make-j.patch
new file mode 100644
index 0000000000..144259dd3f
--- /dev/null
+++ b/meta/recipes-core/gettext/gettext/0001-intl-Fix-build-failure-with-make-j.patch
@@ -0,0 +1,35 @@
1From 97a6a63ad61949663283f5fad68c9d5fb9be1f15 Mon Sep 17 00:00:00 2001
2From: Bruno Haible <bruno@clisp.org>
3Date: Tue, 12 Sep 2023 11:33:41 +0200
4Subject: [PATCH] intl: Fix build failure with "make -j".
5
6Reported by Christian Weisgerber <naddy@mips.inka.de> at
7<https://lists.gnu.org/archive/html/bug-gettext/2023-09/msg00005.html>.
8
9* gettext-runtime/intl/Makefile.am (langprefs.lo, log.lo): Depend on gettextP.h
10and its subordinate includes.
11
12Upstream-Status: Backport [https://git.savannah.gnu.org/gitweb/?p=gettext.git;a=commit;h=97a6a63ad61949663283f5fad68c9d5fb9be1f15]
13Signed-off-by: Changqing Li <changqing.li@windriver.com>
14---
15 gettext-runtime/intl/Makefile.am | 4 ++--
16 1 file changed, 2 insertions(+), 2 deletions(-)
17
18diff --git a/gettext-runtime/intl/Makefile.am b/gettext-runtime/intl/Makefile.am
19index da7abb758..9e56978bc 100644
20--- a/gettext-runtime/intl/Makefile.am
21+++ b/gettext-runtime/intl/Makefile.am
22@@ -387,8 +387,8 @@ dngettext.lo: ../config.h $(srcdir)/gettextP.h libgnuintl.h $(srcdir)/gmo
23 ngettext.lo: ../config.h $(srcdir)/gettextP.h libgnuintl.h $(srcdir)/gmo.h $(srcdir)/loadinfo.h
24 plural.lo: ../config.h $(srcdir)/plural-exp.h $(PLURAL_DEPS)
25 plural-exp.lo: ../config.h $(srcdir)/plural-exp.h
26-langprefs.lo: ../config.h
27-log.lo: ../config.h
28+langprefs.lo: ../config.h $(srcdir)/gettextP.h libgnuintl.h $(srcdir)/gmo.h $(srcdir)/loadinfo.h
29+log.lo: ../config.h $(srcdir)/gettextP.h libgnuintl.h $(srcdir)/gmo.h $(srcdir)/loadinfo.h
30 printf.lo: ../config.h
31 setlocale.lo: ../config.h $(srcdir)/gettextP.h libgnuintl.h $(srcdir)/gmo.h $(srcdir)/loadinfo.h
32 version.lo: ../config.h libgnuintl.h
33--
342.25.1
35
diff --git a/meta/recipes-core/gettext/gettext_0.22.5.bb b/meta/recipes-core/gettext/gettext_0.22.5.bb
index 1a66d37916..7eeb1a86fd 100644
--- a/meta/recipes-core/gettext/gettext_0.22.5.bb
+++ b/meta/recipes-core/gettext/gettext_0.22.5.bb
@@ -28,6 +28,7 @@ SRC_URI += " \
28 file://serial-tests-config.patch \ 28 file://serial-tests-config.patch \
29 file://0001-tests-autopoint-3-unset-MAKEFLAGS.patch \ 29 file://0001-tests-autopoint-3-unset-MAKEFLAGS.patch \
30 file://0001-init-env.in-do-not-add-C-CXX-parameters.patch \ 30 file://0001-init-env.in-do-not-add-C-CXX-parameters.patch \
31 file://0001-intl-Fix-build-failure-with-make-j.patch \
31 " 32 "
32 33
33inherit autotools texinfo pkgconfig ptest 34inherit autotools texinfo pkgconfig ptest
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch b/meta/recipes-core/glib-2.0/files/0001-Do-not-write-bindir-into-pkg-config-files.patch
index 8e6598fbef..10568b7c9f 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-Do-not-write-bindir-into-pkg-config-files.patch
@@ -1,26 +1,30 @@
1From e7077aa23bfcd31a8e72e39dc93ce4f854678376 Mon Sep 17 00:00:00 2001 1From 10b08af6c7dcb03f954da29b6c4f9636b8796f30 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Fri, 15 Feb 2019 11:17:27 +0100 3Date: Fri, 15 Feb 2019 11:17:27 +0100
4Subject: [PATCH] Do not write $bindir into pkg-config files 4Subject: [PATCH] Do not prefix executables with $bindir in pkg-config files
5 5
6This would otherwise break when using the files to build other target 6This would otherwise break when using the executables to build other target
7components (we need to rely on PATH containing the paths to utilities, 7components (we need to rely on PATH containing the paths to utilities,
8rather than use target paths). 8rather than use target paths).
9 9
10Upstream-Status: Inappropriate [upstream wants the paths in .pc files] 10Upstream-Status: Inappropriate [upstream wants the paths in .pc files]
11Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 11Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
12--- 12---
13 gio/meson.build | 16 ++++++++-------- 13 gio/meson.build | 17 +++++++++--------
14 glib/meson.build | 6 +++--- 14 glib/meson.build | 7 ++++---
15 2 files changed, 11 insertions(+), 11 deletions(-) 15 2 files changed, 13 insertions(+), 11 deletions(-)
16 16
17diff --git a/gio/meson.build b/gio/meson.build 17diff --git a/gio/meson.build b/gio/meson.build
18index 5f91586..1a95f4f 100644 18index 77cba7b..25d709e 100644
19--- a/gio/meson.build 19--- a/gio/meson.build
20+++ b/gio/meson.build 20+++ b/gio/meson.build
21@@ -884,14 +884,14 @@ pkg.generate(libgio, 21@@ -883,17 +883,18 @@ libgio_dep = declare_dependency(link_with : libgio,
22 pkg.generate(libgio,
23 requires : ['glib-2.0', 'gobject-2.0'],
24 variables : [
25+ 'bindir=' + '${prefix}' / get_option('bindir'),
26 'schemasdir=' + '${datadir}' / schemas_subdir,
22 'dtdsdir=' + '${datadir}' / dtds_subdir, 27 'dtdsdir=' + '${datadir}' / dtds_subdir,
23 'bindir=' + '${prefix}' / get_option('bindir'),
24 'giomoduledir=' + pkgconfig_giomodulesdir, 28 'giomoduledir=' + pkgconfig_giomodulesdir,
25- 'gio=' + '${bindir}' / 'gio', 29- 'gio=' + '${bindir}' / 'gio',
26- 'gio_querymodules=' + pkgconfig_multiarch_bindir / 'gio-querymodules', 30- 'gio_querymodules=' + pkgconfig_multiarch_bindir / 'gio-querymodules',
@@ -42,16 +46,17 @@ index 5f91586..1a95f4f 100644
42 version : glib_version, 46 version : glib_version,
43 install_dir : glib_pkgconfigreldir, 47 install_dir : glib_pkgconfigreldir,
44diff --git a/glib/meson.build b/glib/meson.build 48diff --git a/glib/meson.build b/glib/meson.build
45index c26a35e..1d8ca6b 100644 49index d2efeba..5f5841d 100644
46--- a/glib/meson.build 50--- a/glib/meson.build
47+++ b/glib/meson.build 51+++ b/glib/meson.build
48@@ -447,9 +447,9 @@ pkg.generate(libglib, 52@@ -447,9 +447,10 @@ pkg.generate(libglib,
53 subdirs : ['glib-2.0'],
54 extra_cflags : ['-I${libdir}/glib-2.0/include'] + win32_cflags,
49 variables : [ 55 variables : [
50 'bindir=' + '${prefix}' / get_option('bindir'),
51 'datadir=' + '${prefix}' / get_option('datadir'),
52- 'glib_genmarshal=' + '${bindir}' / 'glib-genmarshal', 56- 'glib_genmarshal=' + '${bindir}' / 'glib-genmarshal',
53- 'gobject_query=' + '${bindir}' / 'gobject-query', 57- 'gobject_query=' + '${bindir}' / 'gobject-query',
54- 'glib_mkenums=' + '${bindir}' / 'glib-mkenums', 58- 'glib_mkenums=' + '${bindir}' / 'glib-mkenums',
59+ 'bindir=' + '${prefix}' / get_option('bindir'),
55+ 'glib_genmarshal=glib-genmarshal', 60+ 'glib_genmarshal=glib-genmarshal',
56+ 'gobject_query=gobject-query', 61+ 'gobject_query=gobject-query',
57+ 'glib_mkenums=glib-mkenums', 62+ 'glib_mkenums=glib-mkenums',
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch b/meta/recipes-core/glib-2.0/files/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch
index eb9dfdbcf9..b9c9706fc4 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch
@@ -1,4 +1,4 @@
1From 9a5d4bf65b658d744d610ee27ecd2ae65b14b158 Mon Sep 17 00:00:00 2001 1From 55c49c51d8db5af15132653003d2b65a5215eebf Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 15 Mar 2014 22:42:29 -0700 3Date: Sat, 15 Mar 2014 22:42:29 -0700
4Subject: [PATCH] Fix DATADIRNAME on uclibc/Linux 4Subject: [PATCH] Fix DATADIRNAME on uclibc/Linux
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch b/meta/recipes-core/glib-2.0/files/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch
index ad69f7ec65..bc539fe3e8 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch
@@ -1,4 +1,4 @@
1From 4933aef791857a5aac650b60af800778658b875b Mon Sep 17 00:00:00 2001 1From 53333cf3ec787cb7e60585237327390e2ca89f4c Mon Sep 17 00:00:00 2001
2From: Jussi Kukkonen <jussi.kukkonen@intel.com> 2From: Jussi Kukkonen <jussi.kukkonen@intel.com>
3Date: Tue, 22 Mar 2016 15:14:58 +0200 3Date: Tue, 22 Mar 2016 15:14:58 +0200
4Subject: [PATCH] Install gio-querymodules as libexec_PROGRAM 4Subject: [PATCH] Install gio-querymodules as libexec_PROGRAM
@@ -13,10 +13,10 @@ Upstream-Status: Inappropriate [OE specific]
13 1 file changed, 1 insertion(+) 13 1 file changed, 1 insertion(+)
14 14
15diff --git a/gio/meson.build b/gio/meson.build 15diff --git a/gio/meson.build b/gio/meson.build
16index f9fdf6e..5f91586 100644 16index 59c2b0f..77cba7b 100644
17--- a/gio/meson.build 17--- a/gio/meson.build
18+++ b/gio/meson.build 18+++ b/gio/meson.build
19@@ -1005,6 +1005,7 @@ gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodu 19@@ -1007,6 +1007,7 @@ gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodu
20 c_args : gio_c_args, 20 c_args : gio_c_args,
21 # intl.lib is not compatible with SAFESEH 21 # intl.lib is not compatible with SAFESEH
22 link_args : noseh_link_args, 22 link_args : noseh_link_args,
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch b/meta/recipes-core/glib-2.0/files/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch
index 0e3a62af6a..5e543339d8 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch
@@ -1,4 +1,4 @@
1From 8ae2e9c2a04e089306693a021149dc6b7d1bd679 Mon Sep 17 00:00:00 2001 1From 3db055ce8029372096be534c5cfc385f068bab17 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Fri, 12 Jun 2015 17:08:46 +0300 3Date: Fri, 12 Jun 2015 17:08:46 +0300
4Subject: [PATCH] Remove the warning about deprecated paths in schemas 4Subject: [PATCH] Remove the warning about deprecated paths in schemas
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch b/meta/recipes-core/glib-2.0/files/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch
index aee2986033..aa7127b65b 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch
@@ -1,4 +1,4 @@
1From 878e51f82100c698236fda0e069e14ea9249350c Mon Sep 17 00:00:00 2001 1From 97b4f18c65c52c9e6412ecf8affc22f6f42d3465 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Wed, 8 Jan 2020 18:22:46 +0100 3Date: Wed, 8 Jan 2020 18:22:46 +0100
4Subject: [PATCH] gio/tests/resources.c: comment out a build host-only test 4Subject: [PATCH] gio/tests/resources.c: comment out a build host-only test
@@ -13,7 +13,7 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
13 1 file changed, 1 insertion(+), 1 deletion(-) 13 1 file changed, 1 insertion(+), 1 deletion(-)
14 14
15diff --git a/gio/tests/resources.c b/gio/tests/resources.c 15diff --git a/gio/tests/resources.c b/gio/tests/resources.c
16index f567914..b21b616 100644 16index f7dc039..f708876 100644
17--- a/gio/tests/resources.c 17--- a/gio/tests/resources.c
18+++ b/gio/tests/resources.c 18+++ b/gio/tests/resources.c
19@@ -1068,7 +1068,7 @@ main (int argc, 19@@ -1068,7 +1068,7 @@ main (int argc,
diff --git a/meta/recipes-core/glib-2.0/files/0001-girepository-introspection-correctly-install-.gir-fi.patch b/meta/recipes-core/glib-2.0/files/0001-girepository-introspection-correctly-install-.gir-fi.patch
new file mode 100644
index 0000000000..7be9cd8b84
--- /dev/null
+++ b/meta/recipes-core/glib-2.0/files/0001-girepository-introspection-correctly-install-.gir-fi.patch
@@ -0,0 +1,88 @@
1From f1beef5c2d09fae3a5e5a314f984cb3f20abe732 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex@linutronix.de>
3Date: Tue, 23 Apr 2024 11:24:34 +0200
4Subject: [PATCH] girepository/introspection: correctly install .gir files into
5 custom locations provided via meson option
6
7Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/4020]
8Signed-off-by: Alexander Kanavin <alex@linutronix.de>
9---
10 girepository/introspection/meson.build | 9 +++++++++
11 1 file changed, 9 insertions(+)
12
13diff --git a/girepository/introspection/meson.build b/girepository/introspection/meson.build
14index 9405686..862ca61 100644
15--- a/girepository/introspection/meson.build
16+++ b/girepository/introspection/meson.build
17@@ -49,6 +49,7 @@ glib_gir = gnome.generate_gir(libglib,
18 export_packages: 'glib-2.0',
19 header: 'glib.h',
20 install: true,
21+ install_dir_gir: glib_girdir,
22 dependencies: [
23 libgobject_dep,
24 ],
25@@ -76,6 +77,7 @@ if host_system == 'windows'
26 header: 'glib.h',
27 includes: [ glib_gir[0] ],
28 install: true,
29+ install_dir_gir: glib_girdir,
30 dependencies: [
31 libgobject_dep,
32 ],
33@@ -104,6 +106,7 @@ else
34 header: 'glib.h',
35 includes: [ glib_gir[0] ],
36 install: true,
37+ install_dir_gir: glib_girdir,
38 dependencies: [
39 libgobject_dep,
40 ],
41@@ -137,6 +140,7 @@ gobject_gir = gnome.generate_gir(libgobject,
42 header: 'glib-object.h',
43 includes: [ glib_gir[0] ],
44 install: true,
45+ install_dir_gir: glib_girdir,
46 env: gi_gen_env_variables,
47 extra_args: gir_args + [
48 '-DGOBJECT_COMPILATION',
49@@ -162,6 +166,7 @@ gmodule_gir = gnome.generate_gir(libgmodule,
50 header: 'gmodule.h',
51 includes: [ glib_gir[0] ],
52 install: true,
53+ install_dir_gir: glib_girdir,
54 dependencies: [
55 libglib_dep,
56 ],
57@@ -224,6 +229,7 @@ gio_gir = gnome.generate_gir(libgio,
58 header: 'gio/gio.h',
59 includes: [ glib_gir[0], gmodule_gir[0], gobject_gir[0] ],
60 install: true,
61+ install_dir_gir: glib_girdir,
62 dependencies: [
63 libglib_dep,
64 libgobject_dep,
65@@ -249,6 +255,7 @@ if host_system == 'windows'
66 header: 'gio/gio.h',
67 includes: [ glib_gir[0], gmodule_gir[0], gobject_gir[0], gio_gir[0] ],
68 install: true,
69+ install_dir_gir: glib_girdir,
70 dependencies: [
71 libglib_dep,
72 libgobject_dep,
73@@ -277,6 +284,7 @@ else
74 header: 'gio/gio.h',
75 includes: [ glib_gir[0], gmodule_gir[0], gobject_gir[0], gio_gir[0] ],
76 install: true,
77+ install_dir_gir: glib_girdir,
78 dependencies: [
79 libglib_dep,
80 libgobject_dep,
81@@ -314,6 +322,7 @@ girepository_gir = gnome.generate_gir(libgirepository,
82 header: 'girepository/girepository.h',
83 includes: [ glib_gir[0], gmodule_gir[0], gobject_gir[0], gio_gir[0] ],
84 install: true,
85+ install_dir_gir: glib_girdir,
86 dependencies: [ libglib_dep, libgobject_dep, libgmodule_dep, libgio_dep ],
87 extra_args: gir_args + libgirepository_gir_args,
88 )
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Run-atomics-test-on-clang-as-well.patch b/meta/recipes-core/glib-2.0/files/0001-meson-Run-atomics-test-on-clang-as-well.patch
index 0b10269114..3a8d3596b0 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Run-atomics-test-on-clang-as-well.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-meson-Run-atomics-test-on-clang-as-well.patch
@@ -1,4 +1,4 @@
1From b4b523160ef550a53705fcc45ac6e10d086ce491 Mon Sep 17 00:00:00 2001 1From f04ea29f9f96892ada81bd0acfcef70183138229 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 12 Oct 2019 17:46:26 -0700 3Date: Sat, 12 Oct 2019 17:46:26 -0700
4Subject: [PATCH] meson: Run atomics test on clang as well 4Subject: [PATCH] meson: Run atomics test on clang as well
@@ -14,10 +14,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
14 1 file changed, 1 insertion(+), 1 deletion(-) 14 1 file changed, 1 insertion(+), 1 deletion(-)
15 15
16diff --git a/meson.build b/meson.build 16diff --git a/meson.build b/meson.build
17index 6ee775e..8bc5fa7 100644 17index 257afb5..5caa6e6 100644
18--- a/meson.build 18--- a/meson.build
19+++ b/meson.build 19+++ b/meson.build
20@@ -1938,7 +1938,7 @@ atomicdefine = ''' 20@@ -2024,7 +2024,7 @@ atomicdefine = '''
21 # We know that we can always use real ("lock free") atomic operations with MSVC 21 # We know that we can always use real ("lock free") atomic operations with MSVC
22 if cc.get_id() == 'msvc' or cc.get_id() == 'clang-cl' or cc.links(atomictest, name : 'atomic ops') 22 if cc.get_id() == 'msvc' or cc.get_id() == 'clang-cl' or cc.links(atomictest, name : 'atomic ops')
23 have_atomic_lock_free = true 23 have_atomic_lock_free = true
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch b/meta/recipes-core/glib-2.0/files/0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch
index 14dcb278e0..9be04960aa 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch
@@ -1,4 +1,4 @@
1From 294f3e6e9a0a9f4733e85ed6810d1b743055370b Mon Sep 17 00:00:00 2001 1From a63c865aa9a24f3230e8e2bcb5bce88f179c7e2b Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex@linutronix.de> 2From: Alexander Kanavin <alex@linutronix.de>
3Date: Sat, 16 Sep 2023 22:28:27 +0200 3Date: Sat, 16 Sep 2023 22:28:27 +0200
4Subject: [PATCH] meson.build: do not enable pidfd features on native glib 4Subject: [PATCH] meson.build: do not enable pidfd features on native glib
@@ -14,10 +14,10 @@ Signed-off-by: Alexander Kanavin <alex@linutronix.de>
14 1 file changed, 2 insertions(+), 1 deletion(-) 14 1 file changed, 2 insertions(+), 1 deletion(-)
15 15
16diff --git a/meson.build b/meson.build 16diff --git a/meson.build b/meson.build
17index 8bc5fa7..df1fa60 100644 17index 5caa6e6..688f214 100644
18--- a/meson.build 18--- a/meson.build
19+++ b/meson.build 19+++ b/meson.build
20@@ -981,7 +981,8 @@ if cc.links('''#include <sys/syscall.h> 20@@ -1022,7 +1022,8 @@ if cc.links('''#include <sys/syscall.h>
21 waitid (P_PIDFD, 0, &child_info, WEXITED | WNOHANG); 21 waitid (P_PIDFD, 0, &child_info, WEXITED | WNOHANG);
22 return 0; 22 return 0;
23 }''', name : 'pidfd_open(2) system call') 23 }''', name : 'pidfd_open(2) system call')
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0010-Do-not-hardcode-python-path-into-various-tools.patch b/meta/recipes-core/glib-2.0/files/0010-Do-not-hardcode-python-path-into-various-tools.patch
index 6dff5179c7..4dec252c1f 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0010-Do-not-hardcode-python-path-into-various-tools.patch
+++ b/meta/recipes-core/glib-2.0/files/0010-Do-not-hardcode-python-path-into-various-tools.patch
@@ -1,4 +1,4 @@
1From 50636758c73e5e61212a8f801c6c602b8aab5ba7 Mon Sep 17 00:00:00 2001 1From dc7f09c4f52638a70768c528d186da6f83dedc97 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Tue, 3 Oct 2017 10:45:55 +0300 3Date: Tue, 3 Oct 2017 10:45:55 +0300
4Subject: [PATCH] Do not hardcode python path into various tools 4Subject: [PATCH] Do not hardcode python path into various tools
@@ -32,7 +32,7 @@ index aa5af43..56e8e2e 100755
32 # pylint: disable=too-many-lines, missing-docstring, invalid-name 32 # pylint: disable=too-many-lines, missing-docstring, invalid-name
33 33
34diff --git a/gobject/glib-mkenums.in b/gobject/glib-mkenums.in 34diff --git a/gobject/glib-mkenums.in b/gobject/glib-mkenums.in
35index 353e53a..8ed6c39 100755 35index e10b910..4b619f8 100755
36--- a/gobject/glib-mkenums.in 36--- a/gobject/glib-mkenums.in
37+++ b/gobject/glib-mkenums.in 37+++ b/gobject/glib-mkenums.in
38@@ -1,4 +1,4 @@ 38@@ -1,4 +1,4 @@
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common b/meta/recipes-core/glib-2.0/files/meson.cross.d/common
index 0d7c5fa3f8..0d7c5fa3f8 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common
+++ b/meta/recipes-core/glib-2.0/files/meson.cross.d/common
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-glibc b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-glibc
index 3049e5116e..3049e5116e 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-glibc
+++ b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-glibc
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-linux b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-linux
index adad7e62ee..adad7e62ee 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-linux
+++ b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-linux
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-mingw b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-mingw
index 75f911ba1e..75f911ba1e 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-mingw
+++ b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-mingw
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-musl b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-musl
index 3049e5116e..3049e5116e 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-musl
+++ b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-musl
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch b/meta/recipes-core/glib-2.0/files/relocate-modules.patch
index 3e79bbf679..a1ff198aa6 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch
+++ b/meta/recipes-core/glib-2.0/files/relocate-modules.patch
@@ -1,4 +1,4 @@
1From f40e89b3852df37959606ee13b1a14ade81fa886 Mon Sep 17 00:00:00 2001 1From 0133aeabd37a9137722abd86039d7d0797b5896f Mon Sep 17 00:00:00 2001
2From: Ross Burton <ross.burton@intel.com> 2From: Ross Burton <ross.burton@intel.com>
3Date: Fri, 11 Mar 2016 15:35:55 +0000 3Date: Fri, 11 Mar 2016 15:35:55 +0000
4Subject: [PATCH] glib-2.0: relocate the GIO module directory for native builds 4Subject: [PATCH] glib-2.0: relocate the GIO module directory for native builds
@@ -18,10 +18,10 @@ Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
18 1 file changed, 7 deletions(-) 18 1 file changed, 7 deletions(-)
19 19
20diff --git a/gio/giomodule.c b/gio/giomodule.c 20diff --git a/gio/giomodule.c b/gio/giomodule.c
21index 17fabe6..8021208 100644 21index 1e14955..3c09bb5 100644
22--- a/gio/giomodule.c 22--- a/gio/giomodule.c
23+++ b/gio/giomodule.c 23+++ b/gio/giomodule.c
24@@ -1271,11 +1271,6 @@ get_gio_module_dir (void) 24@@ -1259,11 +1259,6 @@ get_gio_module_dir (void)
25 g_free (install_dir); 25 g_free (install_dir);
26 #else 26 #else
27 module_dir = g_strdup (GIO_MODULE_DIR); 27 module_dir = g_strdup (GIO_MODULE_DIR);
@@ -33,7 +33,7 @@ index 17fabe6..8021208 100644
33 #include <dlfcn.h> 33 #include <dlfcn.h>
34 { 34 {
35 g_autofree gchar *path = NULL; 35 g_autofree gchar *path = NULL;
36@@ -1294,8 +1289,6 @@ get_gio_module_dir (void) 36@@ -1282,8 +1277,6 @@ get_gio_module_dir (void)
37 } 37 }
38 } 38 }
39 } 39 }
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/run-ptest b/meta/recipes-core/glib-2.0/files/run-ptest
index 831bc3b91f..831bc3b91f 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/run-ptest
+++ b/meta/recipes-core/glib-2.0/files/run-ptest
diff --git a/meta/recipes-core/glib-2.0/files/skip-timeout.patch b/meta/recipes-core/glib-2.0/files/skip-timeout.patch
new file mode 100644
index 0000000000..0f8b51294b
--- /dev/null
+++ b/meta/recipes-core/glib-2.0/files/skip-timeout.patch
@@ -0,0 +1,29 @@
1From ac75f5d9206e52eec64fef0db4cd91b58a764c99 Mon Sep 17 00:00:00 2001
2From: Ross Burton <ross.burton@arm.com>
3Date: Thu, 28 Mar 2024 16:27:09 +0000
4Subject: [PATCH] Skip /timeout/rounding test
5
6This test is sensitive to load because it expects certain timeout operations
7to succeed in specific time periods. Whilst these timeouts are fairly large,
8they're still exceeded inside a qemu on a loaded system.
9
10https://bugzilla.yoctoproject.org/show_bug.cgi?id=14464
11
12Upstream-Status: Inappropriate [OE-specific]
13Signed-off-by: Ross Burton <ross.burton@arm.com>
14---
15 glib/tests/timeout.c | 1 -
16 1 file changed, 1 deletion(-)
17
18diff --git a/glib/tests/timeout.c b/glib/tests/timeout.c
19index 1ae3f3a..85a715b 100644
20--- a/glib/tests/timeout.c
21+++ b/glib/tests/timeout.c
22@@ -214,7 +214,6 @@ main (int argc, char *argv[])
23 g_test_add_func ("/timeout/seconds-once", test_seconds_once);
24 g_test_add_func ("/timeout/weeks-overflow", test_weeks_overflow);
25 g_test_add_func ("/timeout/far-future-ready-time", test_far_future_ready_time);
26- g_test_add_func ("/timeout/rounding", test_rounding);
27
28 return g_test_run ();
29 }
diff --git a/meta/recipes-core/glib-2.0/glib-2.0-initial_2.80.2.bb b/meta/recipes-core/glib-2.0/glib-2.0-initial_2.80.2.bb
new file mode 100644
index 0000000000..7da2838265
--- /dev/null
+++ b/meta/recipes-core/glib-2.0/glib-2.0-initial_2.80.2.bb
@@ -0,0 +1,5 @@
1require glib.inc
2PACKAGES = ""
3PACKAGECONFIG = ""
4
5
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch b/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch
deleted file mode 100644
index 32b4cea409..0000000000
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch
+++ /dev/null
@@ -1,80 +0,0 @@
1From c0733f7a91dfe13152abc60c5a3064456b3e9d63 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Wed, 13 Feb 2019 15:32:05 +0100
4Subject: [PATCH] Set host_machine correctly when building with mingw32
5
6Upstream-Status: Inappropriate [oe-core specific]
7Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
8---
9 gio/tests/meson.build | 8 ++++----
10 glib/tests/meson.build | 2 +-
11 meson.build | 3 +++
12 3 files changed, 8 insertions(+), 5 deletions(-)
13
14diff --git a/gio/tests/meson.build b/gio/tests/meson.build
15index 4ef3343..e498e7e 100644
16--- a/gio/tests/meson.build
17+++ b/gio/tests/meson.build
18@@ -29,7 +29,7 @@ endif
19
20 test_cpp_args = test_c_args
21
22-if host_machine.system() == 'windows'
23+if host_system == 'windows'
24 common_gio_tests_deps += [iphlpapi_dep, winsock2, cc.find_library ('secur32')]
25 endif
26
27@@ -230,7 +230,7 @@ if have_dbus_daemon
28 endif
29
30 # Test programs buildable on UNIX only
31-if host_machine.system() != 'windows'
32+if host_system != 'windows'
33 gio_tests += {
34 'file' : {},
35 'gdbus-peer-object-manager' : {},
36@@ -562,7 +562,7 @@ if host_machine.system() != 'windows'
37 endif # unix
38
39 # Test programs buildable on Windows only
40-if host_machine.system() == 'windows'
41+if host_system == 'windows'
42 gio_tests += {'win32-streams' : {}}
43 endif
44
45@@ -632,7 +632,7 @@ if cc.get_id() != 'msvc' and cc.get_id() != 'clang-cl'
46 }
47 endif
48
49-if host_machine.system() != 'windows'
50+if host_system != 'windows'
51 test_extra_programs += {
52 'gdbus-example-unix-fd-client' : {
53 'install' : false,
54diff --git a/glib/tests/meson.build b/glib/tests/meson.build
55index d80c86e..5329cda 100644
56--- a/glib/tests/meson.build
57+++ b/glib/tests/meson.build
58@@ -216,7 +216,7 @@ if glib_conf.has('HAVE_EVENTFD')
59 }
60 endif
61
62-if host_machine.system() == 'windows'
63+if host_system == 'windows'
64 if winsock2.found()
65 glib_tests += {
66 'gpoll' : {
67diff --git a/meson.build b/meson.build
68index 813c9b7..6ee775e 100644
69--- a/meson.build
70+++ b/meson.build
71@@ -54,6 +54,9 @@ else
72 endif
73
74 host_system = host_machine.system()
75+if host_system == 'mingw32'
76+ host_system = 'windows'
77+endif
78
79 if host_system == 'darwin'
80 ios_test_code = '''#include <TargetConditionals.h>
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch b/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
deleted file mode 100644
index b11c283e6d..0000000000
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
+++ /dev/null
@@ -1,34 +0,0 @@
1From a8eb944a10353403241608a084787f6efcbb2eb7 Mon Sep 17 00:00:00 2001
2From: Jordan Williams <jordan@jwillikers.com>
3Date: Fri, 1 Dec 2023 09:53:50 -0600
4Subject: [PATCH] Switch from the deprecated distutils module to the packaging
5 module
6
7The distutils module was removed in Python 3.12.
8
9Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/commit/6ef967a0f930ce37a8c9b5aff969693b34714291]
10
11Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
12---
13 gio/gdbus-2.0/codegen/utils.py | 4 ++--
14 1 file changed, 2 insertions(+), 2 deletions(-)
15
16diff --git a/gio/gdbus-2.0/codegen/utils.py b/gio/gdbus-2.0/codegen/utils.py
17index 0204610..08f1ba9 100644
18--- a/gio/gdbus-2.0/codegen/utils.py
19+++ b/gio/gdbus-2.0/codegen/utils.py
20@@ -19,7 +19,7 @@
21 #
22 # Author: David Zeuthen <davidz@redhat.com>
23
24-import distutils.version
25+import packaging.version
26 import os
27 import sys
28
29@@ -166,4 +166,4 @@ def version_cmp_key(key):
30 v = str(key[0])
31 else:
32 v = "0"
33- return (distutils.version.LooseVersion(v), key[1])
34+ return (packaging.version.Version(v), key[1])
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/fix-regex.patch b/meta/recipes-core/glib-2.0/glib-2.0/fix-regex.patch
deleted file mode 100644
index bdfbd55899..0000000000
--- a/meta/recipes-core/glib-2.0/glib-2.0/fix-regex.patch
+++ /dev/null
@@ -1,54 +0,0 @@
1From cce3ae98a2c1966719daabff5a4ec6cf94a846f6 Mon Sep 17 00:00:00 2001
2From: Philip Withnall <pwithnall@gnome.org>
3Date: Mon, 26 Feb 2024 16:55:44 +0000
4Subject: [PATCH] tests: Remove variable-length lookbehind tests for GRegex
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9PCRE2 10.43 has now introduced support for variable-length lookbehind,
10so these tests now fail if GLib is built against PCRE2 10.43 or higher.
11
12See
13https://github.com/PCRE2Project/pcre2/blob/e8db6fa7137f4c6f66cb87e0a3c9467252ec1ef7/ChangeLog#L94.
14
15Rather than making the tests conditional on the version of PCRE2 in use,
16just remove them. They are mostly testing the PCRE2 code rather than
17any code in GLib, so don’t have much value.
18
19This should fix CI runs on msys2-mingw32, which updated to PCRE2 10.43 2
20days ago.
21
22Signed-off-by: Philip Withnall <pwithnall@gnome.org>
23
24Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/commit/cce3ae98a2c1966719daabff5a4ec6cf94a846f6]
25Signed-off-by: Alexander Kanavin <alex@linutronix.de>
26---
27 glib/tests/regex.c | 10 ----------
28 1 file changed, 10 deletions(-)
29
30diff --git a/glib/tests/regex.c b/glib/tests/regex.c
31index 1082526292..d7a698ec67 100644
32--- a/glib/tests/regex.c
33+++ b/glib/tests/regex.c
34@@ -1885,16 +1885,6 @@ test_lookbehind (void)
35 g_match_info_free (match);
36 g_regex_unref (regex);
37
38- regex = g_regex_new ("(?<!dogs?|cats?) x", G_REGEX_OPTIMIZE, G_REGEX_MATCH_DEFAULT, &error);
39- g_assert (regex == NULL);
40- g_assert_error (error, G_REGEX_ERROR, G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND);
41- g_clear_error (&error);
42-
43- regex = g_regex_new ("(?<=ab(c|de)) foo", G_REGEX_OPTIMIZE, G_REGEX_MATCH_DEFAULT, &error);
44- g_assert (regex == NULL);
45- g_assert_error (error, G_REGEX_ERROR, G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND);
46- g_clear_error (&error);
47-
48 regex = g_regex_new ("(?<=abc|abde)foo", G_REGEX_OPTIMIZE, G_REGEX_MATCH_DEFAULT, &error);
49 g_assert (regex);
50 g_assert_no_error (error);
51--
52GitLab
53
54
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/memory-monitor.patch b/meta/recipes-core/glib-2.0/glib-2.0/memory-monitor.patch
deleted file mode 100644
index 4f38509da6..0000000000
--- a/meta/recipes-core/glib-2.0/glib-2.0/memory-monitor.patch
+++ /dev/null
@@ -1,361 +0,0 @@
1From ce840b6b111e1e109e511f6833d6aa419e2b723a Mon Sep 17 00:00:00 2001
2From: Philip Withnall <philip@tecnocode.co.uk>
3Date: Tue, 23 Jan 2024 11:16:52 +0000
4Subject: [PATCH] Merge branch '2887-memory-monitor-tests' into 'main'
5
6tests: Fix race condition in memory-monitor-dbus.test
7
8Closes #2887
9
10See merge request GNOME/glib!3844
11
12Hopefully these commits fix the occasional failures we've been seeing:
13https://bugzilla.yoctoproject.org/show_bug.cgi?id=15362
14
15Upstream-Status: Backport
16Signed-off-by: Ross Burton <ross.burton@arm.com>
17---
18 gio/tests/memory-monitor-dbus.py.in | 64 +++++++++++++-------
19 gio/tests/memory-monitor-portal.py.in | 54 ++++++++++-------
20 gio/tests/power-profile-monitor-dbus.py.in | 35 ++++++-----
21 gio/tests/power-profile-monitor-portal.py.in | 34 ++++++-----
22 4 files changed, 113 insertions(+), 74 deletions(-)
23
24diff --git a/gio/tests/memory-monitor-dbus.py.in b/gio/tests/memory-monitor-dbus.py.in
25index bf32918..7aae01e 100755
26--- a/gio/tests/memory-monitor-dbus.py.in
27+++ b/gio/tests/memory-monitor-dbus.py.in
28@@ -16,7 +16,6 @@ import sys
29 import subprocess
30 import fcntl
31 import os
32-import time
33
34 import taptestrunner
35
36@@ -57,53 +56,74 @@ try:
37 fcntl.fcntl(self.p_mock.stdout, fcntl.F_SETFL, flags | os.O_NONBLOCK)
38 self.last_warning = -1
39 self.dbusmock = dbus.Interface(self.obj_lmm, dbusmock.MOCK_IFACE)
40+
41+ try:
42+ self.wait_for_bus_object('org.freedesktop.LowMemoryMonitor',
43+ '/org/freedesktop/LowMemoryMonitor',
44+ system_bus=True)
45+ except:
46+ raise
47+
48 self.memory_monitor = Gio.MemoryMonitor.dup_default()
49+ assert("GMemoryMonitorDBus" in str(self.memory_monitor))
50 self.memory_monitor.connect("low-memory-warning", self.memory_warning_cb)
51 self.mainloop = GLib.MainLoop()
52 self.main_context = self.mainloop.get_context()
53
54+ # The LowMemoryMonitor API is stateless: it doesn’t expose any
55+ # properties, just a warning signal. Emit the signal in a loop until
56+ # the GMemoryMonitor instance has initialised and synchronised to
57+ # the right state.
58+ def emit_warning(level):
59+ self.dbusmock.EmitWarning(level)
60+ return GLib.SOURCE_CONTINUE
61+
62+ idle_id = GLib.idle_add(emit_warning, 0)
63+ while self.last_warning != 0:
64+ self.main_context.iteration(True)
65+ GLib.source_remove(idle_id)
66+
67 def tearDown(self):
68 self.p_mock.terminate()
69 self.p_mock.wait()
70
71- def assertEventually(self, condition, message=None, timeout=50):
72+ def assertEventually(self, condition, message=None, timeout=5):
73 '''Assert that condition function eventually returns True.
74
75- Timeout is in deciseconds, defaulting to 50 (5 seconds). message is
76+ Timeout is in seconds, defaulting to 5 seconds. message is
77 printed on failure.
78 '''
79- while timeout >= 0:
80- context = GLib.MainContext.default()
81- while context.iteration(False):
82- pass
83- if condition():
84- break
85- timeout -= 1
86- time.sleep(0.1)
87- else:
88- self.fail(message or 'timed out waiting for ' + str(condition))
89+ if not message:
90+ message = 'timed out waiting for ' + str(condition)
91+
92+ def timed_out_cb(message):
93+ self.fail(message)
94+ return GLib.SOURCE_REMOVE
95+
96+ timeout_source = GLib.timeout_source_new_seconds(timeout)
97+ timeout_source.set_callback(timed_out_cb, message)
98+ timeout_source.attach(self.main_context)
99+
100+ while not condition():
101+ self.main_context.iteration(True)
102+
103+ timeout_source.destroy()
104
105 def memory_warning_cb(self, monitor, level):
106+ print("Received memory warning signal, level", level)
107 self.last_warning = level
108 self.main_context.wakeup()
109
110 def test_low_memory_warning_signal(self):
111 '''LowMemoryWarning signal'''
112
113- # Wait 2 seconds
114- timeout = 2
115- while timeout > 0:
116- time.sleep(0.5)
117- timeout -= 0.5
118- self.main_context.iteration(False)
119-
120 self.dbusmock.EmitWarning(100)
121 # Wait 2 seconds or until warning
122- self.assertEventually(lambda: self.last_warning == 100, "'100' low-memory warning not received", 20)
123+ self.assertEventually(lambda: self.last_warning == 100, "'100' low-memory warning not received", 2)
124
125 self.dbusmock.EmitWarning(255)
126 # Wait 2 seconds or until warning
127- self.assertEventually(lambda: self.last_warning == 255, "'255' low-memory warning not received", 20)
128+ self.assertEventually(lambda: self.last_warning == 255, "'255' low-memory warning not received", 2)
129
130 except ImportError as e:
131 @unittest.skip("Cannot import %s" % e.name)
132diff --git a/gio/tests/memory-monitor-portal.py.in b/gio/tests/memory-monitor-portal.py.in
133index 748cee8..f570508 100755
134--- a/gio/tests/memory-monitor-portal.py.in
135+++ b/gio/tests/memory-monitor-portal.py.in
136@@ -16,7 +16,6 @@ import sys
137 import subprocess
138 import fcntl
139 import os
140-import time
141
142 import taptestrunner
143
144@@ -80,26 +79,44 @@ try:
145 self.mainloop = GLib.MainLoop()
146 self.main_context = self.mainloop.get_context()
147
148+ # The LowMemoryMonitor API is stateless: it doesn’t expose any
149+ # properties, just a warning signal. Emit the signal in a loop until
150+ # the GMemoryMonitor instance has initialised and synchronised to
151+ # the right state.
152+ def emit_warning(level):
153+ self.dbusmock.EmitWarning(level)
154+ return GLib.SOURCE_CONTINUE
155+
156+ idle_id = GLib.idle_add(self.emit_warning, 0)
157+ while self.last_warning != 0:
158+ self.main_context.iteration(True)
159+ GLib.source_remove(idle_id)
160+
161 def tearDown(self):
162 self.p_mock.terminate()
163 self.p_mock.wait()
164
165- def assertEventually(self, condition, message=None, timeout=50):
166+ def assertEventually(self, condition, message=None, timeout=5):
167 '''Assert that condition function eventually returns True.
168
169- Timeout is in deciseconds, defaulting to 50 (5 seconds). message is
170+ Timeout is in seconds, defaulting to 5 seconds. message is
171 printed on failure.
172 '''
173- while timeout >= 0:
174- context = GLib.MainContext.default()
175- while context.iteration(False):
176- pass
177- if condition():
178- break
179- timeout -= 1
180- time.sleep(0.1)
181- else:
182- self.fail(message or 'timed out waiting for ' + str(condition))
183+ if not message:
184+ message = 'timed out waiting for ' + str(condition)
185+
186+ def timed_out_cb(message):
187+ self.fail(message)
188+ return GLib.SOURCE_REMOVE
189+
190+ timeout_source = GLib.timeout_source_new_seconds(timeout)
191+ timeout_source.set_callback(timed_out_cb, message)
192+ timeout_source.attach(self.main_context)
193+
194+ while not condition():
195+ self.main_context.iteration(True)
196+
197+ timeout_source.destroy()
198
199 def portal_memory_warning_cb(self, monitor, level):
200 self.last_warning = level
201@@ -108,20 +125,13 @@ try:
202 def test_low_memory_warning_portal_signal(self):
203 '''LowMemoryWarning signal'''
204
205- # Wait 2 seconds
206- timeout = 2
207- while timeout > 0:
208- time.sleep(0.5)
209- timeout -= 0.5
210- self.main_context.iteration(False)
211-
212 self.dbusmock.EmitWarning(100)
213 # Wait 2 seconds or until warning
214- self.assertEventually(lambda: self.last_warning == 100, "'100' low-memory warning not received", 20)
215+ self.assertEventually(lambda: self.last_warning == 100, "'100' low-memory warning not received", 2)
216
217 self.dbusmock.EmitWarning(255)
218 # Wait 2 seconds or until warning
219- self.assertEventually(lambda: self.last_warning == 255, "'255' low-memory warning not received", 20)
220+ self.assertEventually(lambda: self.last_warning == 255, "'255' low-memory warning not received", 2)
221
222 except ImportError as e:
223 @unittest.skip("Cannot import %s" % e.name)
224diff --git a/gio/tests/power-profile-monitor-dbus.py.in b/gio/tests/power-profile-monitor-dbus.py.in
225index 06e594f..f955afc 100755
226--- a/gio/tests/power-profile-monitor-dbus.py.in
227+++ b/gio/tests/power-profile-monitor-dbus.py.in
228@@ -16,7 +16,6 @@ import sys
229 import subprocess
230 import fcntl
231 import os
232-import time
233
234 import taptestrunner
235
236@@ -58,6 +57,7 @@ try:
237 self.power_saver_enabled = False
238 self.dbus_props = dbus.Interface(self.obj_ppd, dbus.PROPERTIES_IFACE)
239 self.power_profile_monitor = Gio.PowerProfileMonitor.dup_default()
240+ assert("GPowerProfileMonitorDBus" in str(self.power_profile_monitor))
241 self.power_profile_monitor.connect("notify::power-saver-enabled", self.power_saver_enabled_cb)
242 self.mainloop = GLib.MainLoop()
243 self.main_context = self.mainloop.get_context()
244@@ -66,22 +66,27 @@ try:
245 self.p_mock.terminate()
246 self.p_mock.wait()
247
248- def assertEventually(self, condition, message=None, timeout=50):
249+ def assertEventually(self, condition, message=None, timeout=5):
250 '''Assert that condition function eventually returns True.
251
252- Timeout is in deciseconds, defaulting to 50 (5 seconds). message is
253+ Timeout is in seconds, defaulting to 5 seconds. message is
254 printed on failure.
255 '''
256- while timeout >= 0:
257- context = GLib.MainContext.default()
258- while context.iteration(False):
259- pass
260- if condition():
261- break
262- timeout -= 1
263- time.sleep(0.1)
264- else:
265- self.fail(message or 'timed out waiting for ' + str(condition))
266+ if not message:
267+ message = 'timed out waiting for ' + str(condition)
268+
269+ def timed_out_cb(message):
270+ self.fail(message)
271+ return GLib.SOURCE_REMOVE
272+
273+ timeout_source = GLib.timeout_source_new_seconds(timeout)
274+ timeout_source.set_callback(timed_out_cb, message)
275+ timeout_source.attach(self.main_context)
276+
277+ while not condition():
278+ self.main_context.iteration(True)
279+
280+ timeout_source.destroy()
281
282 def power_saver_enabled_cb(self, spec, data):
283 self.power_saver_enabled = self.power_profile_monitor.get_power_saver_enabled()
284@@ -92,10 +97,10 @@ try:
285
286 self.assertEqual(self.power_profile_monitor.get_power_saver_enabled(), False)
287 self.dbus_props.Set('net.hadess.PowerProfiles', 'ActiveProfile', dbus.String('power-saver', variant_level=1))
288- self.assertEventually(lambda: self.power_saver_enabled == True, "power-saver didn't become enabled", 10)
289+ self.assertEventually(lambda: self.power_saver_enabled == True, "power-saver didn't become enabled", 1)
290
291 self.dbus_props.Set('net.hadess.PowerProfiles', 'ActiveProfile', dbus.String('balanced', variant_level=1))
292- self.assertEventually(lambda: self.power_saver_enabled == False, "power-saver didn't become disabled", 10)
293+ self.assertEventually(lambda: self.power_saver_enabled == False, "power-saver didn't become disabled", 1)
294
295 except ImportError as e:
296 @unittest.skip("Cannot import %s" % e.name)
297diff --git a/gio/tests/power-profile-monitor-portal.py.in b/gio/tests/power-profile-monitor-portal.py.in
298index 09e9a45..ad2abf6 100755
299--- a/gio/tests/power-profile-monitor-portal.py.in
300+++ b/gio/tests/power-profile-monitor-portal.py.in
301@@ -16,7 +16,6 @@ import sys
302 import subprocess
303 import fcntl
304 import os
305-import time
306
307 import taptestrunner
308
309@@ -90,22 +89,27 @@ try:
310 self.p_mock.terminate()
311 self.p_mock.wait()
312
313- def assertEventually(self, condition, message=None, timeout=50):
314+ def assertEventually(self, condition, message=None, timeout=5):
315 '''Assert that condition function eventually returns True.
316
317- Timeout is in deciseconds, defaulting to 50 (5 seconds). message is
318+ Timeout is in seconds, defaulting to 5 seconds. message is
319 printed on failure.
320 '''
321- while timeout >= 0:
322- context = GLib.MainContext.default()
323- while context.iteration(False):
324- pass
325- if condition():
326- break
327- timeout -= 1
328- time.sleep(0.1)
329- else:
330- self.fail(message or 'timed out waiting for ' + str(condition))
331+ if not message:
332+ message = 'timed out waiting for ' + str(condition)
333+
334+ def timed_out_cb(message):
335+ self.fail(message)
336+ return GLib.SOURCE_REMOVE
337+
338+ timeout_source = GLib.timeout_source_new_seconds(timeout)
339+ timeout_source.set_callback(timed_out_cb, message)
340+ timeout_source.attach(self.main_context)
341+
342+ while not condition():
343+ self.main_context.iteration(True)
344+
345+ timeout_source.destroy()
346
347 def power_saver_enabled_cb(self, spec, data):
348 self.power_saver_enabled = self.power_profile_monitor.get_power_saver_enabled()
349@@ -116,10 +120,10 @@ try:
350
351 self.assertEqual(self.power_profile_monitor.get_power_saver_enabled(), False)
352 self.dbus_props.Set('net.hadess.PowerProfiles', 'ActiveProfile', dbus.String('power-saver', variant_level=1))
353- self.assertEventually(lambda: self.power_saver_enabled == True, "power-saver didn't become enabled", 10)
354+ self.assertEventually(lambda: self.power_saver_enabled == True, "power-saver didn't become enabled", 1)
355
356 self.dbus_props.Set('net.hadess.PowerProfiles', 'ActiveProfile', dbus.String('balanced', variant_level=1))
357- self.assertEventually(lambda: self.power_saver_enabled == False, "power-saver didn't become disabled", 10)
358+ self.assertEventually(lambda: self.power_saver_enabled == False, "power-saver didn't become disabled", 1)
359
360 def test_power_profile_power_saver_enabled_portal_default(self):
361 '''power-saver-enabled property default value'''
diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.78.4.bb b/meta/recipes-core/glib-2.0/glib-2.0_2.78.4.bb
deleted file mode 100644
index f0fd057be7..0000000000
--- a/meta/recipes-core/glib-2.0/glib-2.0_2.78.4.bb
+++ /dev/null
@@ -1,56 +0,0 @@
1require glib.inc
2
3PE = "1"
4
5SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}"
6
7SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
8 file://run-ptest \
9 file://0001-Fix-DATADIRNAME-on-uclibc-Linux.patch \
10 file://0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch \
11 file://0001-Install-gio-querymodules-as-libexec_PROGRAM.patch \
12 file://0010-Do-not-hardcode-python-path-into-various-tools.patch \
13 file://0001-Set-host_machine-correctly-when-building-with-mingw3.patch \
14 file://0001-Do-not-write-bindir-into-pkg-config-files.patch \
15 file://0001-meson-Run-atomics-test-on-clang-as-well.patch \
16 file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \
17 file://0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch \
18 file://memory-monitor.patch \
19 file://fix-regex.patch \
20 "
21SRC_URI:append:class-native = " file://relocate-modules.patch \
22 file://0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch \
23 "
24
25SRC_URI[sha256sum] = "24b8e0672dca120cc32d394bccb85844e732e04fe75d18bb0573b2dbc7548f63"
26
27# Find any meson cross files in FILESPATH that are relevant for the current
28# build (using siteinfo) and add them to EXTRA_OEMESON.
29inherit siteinfo
30def find_meson_cross_files(d):
31 if bb.data.inherits_class('native', d):
32 return ""
33
34 thisdir = os.path.normpath(d.getVar("THISDIR"))
35 import collections
36 sitedata = siteinfo_data(d)
37 # filename -> found
38 files = collections.OrderedDict()
39 for path in d.getVar("FILESPATH").split(":"):
40 for element in sitedata:
41 filename = os.path.normpath(os.path.join(path, "meson.cross.d", element))
42 sanitized_path = filename.replace(thisdir, "${THISDIR}")
43 if sanitized_path == filename:
44 if os.path.exists(filename):
45 bb.error("Cannot add '%s' to --cross-file, because it's not relative to THISDIR '%s' and sstate signature would contain this full path" % (filename, thisdir))
46 continue
47 files[filename.replace(thisdir, "${THISDIR}")] = os.path.exists(filename)
48
49 items = ["--cross-file=" + k for k,v in files.items() if v]
50 d.appendVar("EXTRA_OEMESON", " " + " ".join(items))
51 items = ["%s:%s" % (k, "True" if v else "False") for k,v in files.items()]
52 d.appendVarFlag("do_configure", "file-checksums", " " + " ".join(items))
53
54python () {
55 find_meson_cross_files(d)
56}
diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.80.2.bb b/meta/recipes-core/glib-2.0/glib-2.0_2.80.2.bb
new file mode 100644
index 0000000000..ef80cc47cf
--- /dev/null
+++ b/meta/recipes-core/glib-2.0/glib-2.0_2.80.2.bb
@@ -0,0 +1,2 @@
1require glib.inc
2
diff --git a/meta/recipes-core/glib-2.0/glib.inc b/meta/recipes-core/glib-2.0/glib.inc
index fac8875d84..690d1c162c 100644
--- a/meta/recipes-core/glib-2.0/glib.inc
+++ b/meta/recipes-core/glib-2.0/glib.inc
@@ -28,21 +28,26 @@ PACKAGES += "${PN}-codegen ${PN}-utils"
28 28
29LEAD_SONAME = "libglib-2.0.*" 29LEAD_SONAME = "libglib-2.0.*"
30 30
31inherit meson gettext gtk-doc pkgconfig ptest-gnome upstream-version-is-even bash-completion gio-module-cache manpages gobject-introspection-data 31inherit meson gettext gi-docgen pkgconfig ptest-gnome upstream-version-is-even bash-completion gio-module-cache manpages gobject-introspection-data
32
33GTKDOC_MESON_OPTION = "gtk_doc"
34 32
35S = "${WORKDIR}/glib-${PV}" 33S = "${WORKDIR}/glib-${PV}"
36 34
35GIDOCGEN_MESON_OPTION = "documentation"
36
37PACKAGECONFIG ??= "libmount \ 37PACKAGECONFIG ??= "libmount \
38 ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'introspection', '', d)} \
38 ${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}" 39 ${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}"
40PACKAGECONFIG:class-native = ""
41
39PACKAGECONFIG[libmount] = "-Dlibmount=enabled,-Dlibmount=disabled,util-linux" 42PACKAGECONFIG[libmount] = "-Dlibmount=enabled,-Dlibmount=disabled,util-linux"
40PACKAGECONFIG[manpages] = "-Dman=true, -Dman=false, libxslt-native xmlto-native" 43PACKAGECONFIG[manpages] = "-Dman-pages=enabled, -Dman-pages=disabled, python3-docutils-native"
41PACKAGECONFIG[libelf] = "-Dlibelf=enabled,-Dlibelf=disabled,elfutils" 44PACKAGECONFIG[libelf] = "-Dlibelf=enabled,-Dlibelf=disabled,elfutils"
42PACKAGECONFIG[tests] = "-Dinstalled_tests=true,-Dinstalled_tests=false," 45PACKAGECONFIG[tests] = "-Dinstalled_tests=true,-Dinstalled_tests=false,"
43PACKAGECONFIG[selinux] = "-Dselinux=enabled,-Dselinux=disabled,libselinux" 46PACKAGECONFIG[selinux] = "-Dselinux=enabled,-Dselinux=disabled,libselinux"
47PACKAGECONFIG[introspection] = "-Dintrospection=enabled,-Dintrospection=disabled,gobject-introspection-native gobject-introspection glib-2.0-initial"
44 48
45EXTRA_OEMESON = "-Ddtrace=false -Dsystemtap=false" 49EXTRA_OEMESON = "-Ddtrace=false -Dsystemtap=false"
50EXTRA_OEMESON:append:class-target = " ${@'-Dgir_dir_prefix=${libdir}' if d.getVar('MULTILIBS') else ''}"
46 51
47do_configure:prepend() { 52do_configure:prepend() {
48 sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/gio/gdbus-2.0/codegen/gdbus-codegen.in 53 sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/gio/gdbus-2.0/codegen/gdbus-codegen.in
@@ -53,14 +58,16 @@ FILES:${PN} = "${libdir}/lib*${SOLIBS} \
53 ${libexecdir}/*gio-querymodules \ 58 ${libexecdir}/*gio-querymodules \
54 ${libexecdir}/*gio-launch-desktop \ 59 ${libexecdir}/*gio-launch-desktop \
55 ${datadir}/glib-2.0/dtds \ 60 ${datadir}/glib-2.0/dtds \
56 ${datadir}/glib-2.0/schemas" 61 ${datadir}/glib-2.0/schemas \
57 62 ${libdir}/girepository-*/*.typelib \
63"
58FILES:${PN}-dev += "${libdir}/glib-2.0/include \ 64FILES:${PN}-dev += "${libdir}/glib-2.0/include \
59 ${libdir}/gio/modules/lib*${SOLIBSDEV} \ 65 ${libdir}/gio/modules/lib*${SOLIBSDEV} \
60 ${libdir}/gio/modules/*.la \ 66 ${libdir}/gio/modules/*.la \
61 ${datadir}/glib-2.0/gettext/po/Makefile.in.in \ 67 ${datadir}/glib-2.0/gettext/po/Makefile.in.in \
62 ${datadir}/glib-2.0/schemas/gschema.dtd \ 68 ${datadir}/glib-2.0/schemas/gschema.dtd \
63 ${datadir}/glib-2.0/valgrind/glib.supp \ 69 ${datadir}/glib-2.0/valgrind/glib.supp \
70 ${datadir}/gir-*/*.gir ${libdir}/gir-*/*.gir \
64 ${datadir}/gettext/its" 71 ${datadir}/gettext/its"
65FILES:${PN}-dbg += "${datadir}/glib-2.0/gdb ${datadir}/gdb" 72FILES:${PN}-dbg += "${datadir}/glib-2.0/gdb ${datadir}/gdb"
66FILES:${PN}-codegen = "${datadir}/glib-2.0/codegen/*.py \ 73FILES:${PN}-codegen = "${datadir}/glib-2.0/codegen/*.py \
@@ -204,3 +211,56 @@ RDEPENDS:${PN}-ptest:append:libc-glibc = "\
204 locale-base-pl-pl.iso-8859-2 \ 211 locale-base-pl-pl.iso-8859-2 \
205 locale-base-tr-tr \ 212 locale-base-tr-tr \
206 " 213 "
214
215PE = "1"
216
217SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}"
218
219SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
220 file://run-ptest \
221 file://0001-Fix-DATADIRNAME-on-uclibc-Linux.patch \
222 file://0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch \
223 file://0001-Install-gio-querymodules-as-libexec_PROGRAM.patch \
224 file://0010-Do-not-hardcode-python-path-into-various-tools.patch \
225 file://0001-Do-not-write-bindir-into-pkg-config-files.patch \
226 file://0001-meson-Run-atomics-test-on-clang-as-well.patch \
227 file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \
228 file://skip-timeout.patch \
229 file://0001-girepository-introspection-correctly-install-.gir-fi.patch \
230 "
231SRC_URI:append:class-native = " file://relocate-modules.patch \
232 file://0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch \
233 "
234
235SRC_URI[sha256sum] = "b9cfb6f7a5bd5b31238fd5d56df226b2dda5ea37611475bf89f6a0f9400fe8bd"
236
237# Find any meson cross files in FILESPATH that are relevant for the current
238# build (using siteinfo) and add them to EXTRA_OEMESON.
239inherit siteinfo
240def find_meson_cross_files(d):
241 if bb.data.inherits_class('native', d):
242 return ""
243
244 thisdir = os.path.normpath(d.getVar("THISDIR"))
245 import collections
246 sitedata = siteinfo_data(d)
247 # filename -> found
248 files = collections.OrderedDict()
249 for path in d.getVar("FILESPATH").split(":"):
250 for element in sitedata:
251 filename = os.path.normpath(os.path.join(path, "meson.cross.d", element))
252 sanitized_path = filename.replace(thisdir, "${THISDIR}")
253 if sanitized_path == filename:
254 if os.path.exists(filename):
255 bb.error("Cannot add '%s' to --cross-file, because it's not relative to THISDIR '%s' and sstate signature would contain this full path" % (filename, thisdir))
256 continue
257 files[filename.replace(thisdir, "${THISDIR}")] = os.path.exists(filename)
258
259 items = ["--cross-file=" + k for k,v in files.items() if v]
260 d.appendVar("EXTRA_OEMESON", " " + " ".join(items))
261 items = ["%s:%s" % (k, "True" if v else "False") for k,v in files.items()]
262 d.appendVarFlag("do_configure", "file-checksums", " " + " ".join(items))
263
264python () {
265 find_meson_cross_files(d)
266}
diff --git a/meta/recipes-core/glibc/glibc-common.inc b/meta/recipes-core/glibc/glibc-common.inc
index b9516e77f0..91a3f5bcd5 100644
--- a/meta/recipes-core/glibc/glibc-common.inc
+++ b/meta/recipes-core/glibc/glibc-common.inc
@@ -2,7 +2,7 @@ SUMMARY = "GLIBC (GNU C Library)"
2DESCRIPTION = "The GNU C Library is used as the system C library in most systems with the Linux kernel." 2DESCRIPTION = "The GNU C Library is used as the system C library in most systems with the Linux kernel."
3HOMEPAGE = "http://www.gnu.org/software/libc/libc.html" 3HOMEPAGE = "http://www.gnu.org/software/libc/libc.html"
4SECTION = "libs" 4SECTION = "libs"
5LICENSE = "GPL-2.0-only & LGPL-2.1-only" 5LICENSE = "GPL-2.0-only & LGPL-2.1-or-later"
6 6
7LIC_FILES_CHKSUM ?= "file://LICENSES;md5=f77e878d320e99e94ae9a4aea7f491d1 \ 7LIC_FILES_CHKSUM ?= "file://LICENSES;md5=f77e878d320e99e94ae9a4aea7f491d1 \
8 file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ 8 file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
diff --git a/meta/recipes-core/glibc/glibc-package.inc b/meta/recipes-core/glibc/glibc-package.inc
index 1ef987be0a..0c5e3b4c3d 100644
--- a/meta/recipes-core/glibc/glibc-package.inc
+++ b/meta/recipes-core/glibc/glibc-package.inc
@@ -69,9 +69,9 @@ inherit multilib_header
69 69
70do_install() { 70do_install() {
71 oe_runmake install_root=${D} install 71 oe_runmake install_root=${D} install
72 install -Dm 0644 ${WORKDIR}/etc/ld.so.conf ${D}/${sysconfdir}/ld.so.conf 72 install -Dm 0644 ${UNPACKDIR}/etc/ld.so.conf ${D}/${sysconfdir}/ld.so.conf
73 install -d ${D}${localedir} 73 install -d ${D}${localedir}
74 make -f ${WORKDIR}/generate-supported.mk IN="${S}/localedata/SUPPORTED" OUT="${WORKDIR}/SUPPORTED" 74 make -f ${UNPACKDIR}/generate-supported.mk IN="${S}/localedata/SUPPORTED" OUT="${WORKDIR}/SUPPORTED"
75 # get rid of some broken files... 75 # get rid of some broken files...
76 for i in ${GLIBC_BROKEN_LOCALES}; do 76 for i in ${GLIBC_BROKEN_LOCALES}; do
77 sed -i "/$i/d" ${WORKDIR}/SUPPORTED 77 sed -i "/$i/d" ${WORKDIR}/SUPPORTED
@@ -101,7 +101,7 @@ do_install() {
101 install -d ${D}${localstatedir}/db/nscd 101 install -d ${D}${localstatedir}/db/nscd
102 install -m 0755 ${S}/nscd/nscd.init ${D}${sysconfdir}/init.d/nscd 102 install -m 0755 ${S}/nscd/nscd.init ${D}${sysconfdir}/init.d/nscd
103 install -m 0755 ${S}/nscd/nscd.conf ${D}${sysconfdir}/nscd.conf 103 install -m 0755 ${S}/nscd/nscd.conf ${D}${sysconfdir}/nscd.conf
104 install -m 0755 ${WORKDIR}/makedbs.sh ${D}${localstatedir}/db 104 install -m 0755 ${UNPACKDIR}/makedbs.sh ${D}${localstatedir}/db
105 sed -i "s%daemon%start-stop-daemon --start --exec%g" ${D}${sysconfdir}/init.d/nscd 105 sed -i "s%daemon%start-stop-daemon --start --exec%g" ${D}${sysconfdir}/init.d/nscd
106 sed -i "s|\(enable-cache\t\+netgroup\t\+\)yes|\1no|" ${D}${sysconfdir}/nscd.conf 106 sed -i "s|\(enable-cache\t\+netgroup\t\+\)yes|\1no|" ${D}${sysconfdir}/nscd.conf
107 107
diff --git a/meta/recipes-core/glibc/glibc-testsuite_2.39.bb b/meta/recipes-core/glibc/glibc-testsuite_2.39.bb
index 2e076f4b0f..3a2764e40b 100644
--- a/meta/recipes-core/glibc/glibc-testsuite_2.39.bb
+++ b/meta/recipes-core/glibc/glibc-testsuite_2.39.bb
@@ -18,7 +18,7 @@ TOOLCHAIN_TEST_HOST_PORT ??= "2222"
18do_check[nostamp] = "1" 18do_check[nostamp] = "1"
19do_check[network] = "1" 19do_check[network] = "1"
20do_check:append () { 20do_check:append () {
21 chmod 0755 ${WORKDIR}/check-test-wrapper 21 chmod 0755 ${UNPACKDIR}/check-test-wrapper
22 22
23 oe_runmake -i \ 23 oe_runmake -i \
24 QEMU_SYSROOT="${RECIPE_SYSROOT}" \ 24 QEMU_SYSROOT="${RECIPE_SYSROOT}" \
@@ -26,7 +26,7 @@ do_check:append () {
26 SSH_HOST="${TOOLCHAIN_TEST_HOST}" \ 26 SSH_HOST="${TOOLCHAIN_TEST_HOST}" \
27 SSH_HOST_USER="${TOOLCHAIN_TEST_HOST_USER}" \ 27 SSH_HOST_USER="${TOOLCHAIN_TEST_HOST_USER}" \
28 SSH_HOST_PORT="${TOOLCHAIN_TEST_HOST_PORT}" \ 28 SSH_HOST_PORT="${TOOLCHAIN_TEST_HOST_PORT}" \
29 test-wrapper="${WORKDIR}/check-test-wrapper ${TOOLCHAIN_TEST_TARGET}" \ 29 test-wrapper="${UNPACKDIR}/check-test-wrapper ${TOOLCHAIN_TEST_TARGET}" \
30 check 30 check
31} 31}
32 32
diff --git a/meta/recipes-core/glibc/glibc-version.inc b/meta/recipes-core/glibc/glibc-version.inc
index 618a574566..20125e4339 100644
--- a/meta/recipes-core/glibc/glibc-version.inc
+++ b/meta/recipes-core/glibc/glibc-version.inc
@@ -1,6 +1,6 @@
1SRCBRANCH ?= "release/2.39/master" 1SRCBRANCH ?= "release/2.39/master"
2PV = "2.39+git" 2PV = "2.39+git"
3SRCREV_glibc ?= "1b9c1a0047fb26a65a9b2a7b8cd977243f7d353c" 3SRCREV_glibc ?= "c7c3f5bf80ae86b34501f473f1a9fc545c911b7f"
4SRCREV_localedef ?= "fab74f31b3811df543e24b6de47efdf45b538abc" 4SRCREV_localedef ?= "fab74f31b3811df543e24b6de47efdf45b538abc"
5 5
6GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git;protocol=https" 6GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git;protocol=https"
diff --git a/meta/recipes-core/glibc/glibc-y2038-tests_2.39.bb b/meta/recipes-core/glibc/glibc-y2038-tests_2.39.bb
index be49ca4cb7..b760230aec 100644
--- a/meta/recipes-core/glibc/glibc-y2038-tests_2.39.bb
+++ b/meta/recipes-core/glibc/glibc-y2038-tests_2.39.bb
@@ -76,7 +76,7 @@ do_install_ptest_base () {
76 done 76 done
77 77
78 install -d ${D}${PTEST_PATH} 78 install -d ${D}${PTEST_PATH}
79 cp ${WORKDIR}/run-ptest ${D}${PTEST_PATH}/ 79 cp ${UNPACKDIR}/run-ptest ${D}${PTEST_PATH}/
80 80
81} 81}
82 82
diff --git a/meta/recipes-core/glibc/glibc/0016-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch b/meta/recipes-core/glibc/glibc/0016-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch
index 066c3b1ea2..9bdfa76318 100644
--- a/meta/recipes-core/glibc/glibc/0016-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch
+++ b/meta/recipes-core/glibc/glibc/0016-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch
@@ -11,16 +11,15 @@ Upstream-Status: Inappropriate [ OE-Specific ]
11 11
12Signed-off-by: Khem Raj <raj.khem@gmail.com> 12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13--- 13---
14 sysdeps/aarch64/bits/wordsize.h | 8 ++++++-- 14 sysdeps/aarch64/bits/wordsize.h | 11 +++++++++--
15 sysdeps/arm/bits/wordsize.h | 1 + 15 sysdeps/arm/bits/wordsize.h | 22 +---------------------
16 2 files changed, 7 insertions(+), 2 deletions(-) 16 2 files changed, 10 insertions(+), 23 deletions(-)
17 create mode 120000 sysdeps/arm/bits/wordsize.h
18 17
19diff --git a/sysdeps/aarch64/bits/wordsize.h b/sysdeps/aarch64/bits/wordsize.h 18diff --git a/sysdeps/aarch64/bits/wordsize.h b/sysdeps/aarch64/bits/wordsize.h
20index 118e59172d..b4b0692eb5 100644 19index 118e59172d..ff86359fe8 100644
21--- a/sysdeps/aarch64/bits/wordsize.h 20--- a/sysdeps/aarch64/bits/wordsize.h
22+++ b/sysdeps/aarch64/bits/wordsize.h 21+++ b/sysdeps/aarch64/bits/wordsize.h
23@@ -17,12 +17,16 @@ 22@@ -17,12 +17,19 @@
24 License along with the GNU C Library; if not, see 23 License along with the GNU C Library; if not, see
25 <https://www.gnu.org/licenses/>. */ 24 <https://www.gnu.org/licenses/>. */
26 25
@@ -33,12 +32,42 @@ index 118e59172d..b4b0692eb5 100644
33 # define __WORDSIZE32_SIZE_ULONG 1 32 # define __WORDSIZE32_SIZE_ULONG 1
34 # define __WORDSIZE32_PTRDIFF_LONG 1 33 # define __WORDSIZE32_PTRDIFF_LONG 1
35+#else 34+#else
36+# define __WORDSIZE 32 35+#define __WORDSIZE 32
37+# define __WORDSIZE32_SIZE_ULONG 0 36+#define __WORDSIZE_TIME64_COMPAT32 1
38+# define __WORDSIZE32_PTRDIFF_LONG 0 37+#define __WORDSIZE32_SIZE_ULONG 0
38+#define __WORDSIZE32_PTRDIFF_LONG 0
39 #endif 39 #endif
40 40
41+#ifdef __aarch64__
41 #define __WORDSIZE_TIME64_COMPAT32 0 42 #define __WORDSIZE_TIME64_COMPAT32 0
43+#endif
44diff --git a/sysdeps/arm/bits/wordsize.h b/sysdeps/arm/bits/wordsize.h
45deleted file mode 100644
46index 6ecbfe7c86..0000000000
47--- a/sysdeps/arm/bits/wordsize.h
48+++ /dev/null
49@@ -1,21 +0,0 @@
50-/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
51- This file is part of the GNU C Library.
52-
53- The GNU C Library is free software; you can redistribute it and/or
54- modify it under the terms of the GNU Lesser General Public
55- License as published by the Free Software Foundation; either
56- version 2.1 of the License, or (at your option) any later version.
57-
58- The GNU C Library is distributed in the hope that it will be useful,
59- but WITHOUT ANY WARRANTY; without even the implied warranty of
60- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
61- Lesser General Public License for more details.
62-
63- You should have received a copy of the GNU Lesser General Public
64- License along with the GNU C Library; if not, see
65- <https://www.gnu.org/licenses/>. */
66-
67-#define __WORDSIZE 32
68-#define __WORDSIZE_TIME64_COMPAT32 1
69-#define __WORDSIZE32_SIZE_ULONG 0
70-#define __WORDSIZE32_PTRDIFF_LONG 0
42diff --git a/sysdeps/arm/bits/wordsize.h b/sysdeps/arm/bits/wordsize.h 71diff --git a/sysdeps/arm/bits/wordsize.h b/sysdeps/arm/bits/wordsize.h
43new file mode 120000 72new file mode 120000
44index 0000000000..4c4a788ec2 73index 0000000000..4c4a788ec2
diff --git a/meta/recipes-core/glibc/glibc/0023-aarch64-configure-Pass-mcpu-along-with-march-to-dete.patch b/meta/recipes-core/glibc/glibc/0023-aarch64-configure-Pass-mcpu-along-with-march-to-dete.patch
deleted file mode 100644
index f6523c5498..0000000000
--- a/meta/recipes-core/glibc/glibc/0023-aarch64-configure-Pass-mcpu-along-with-march-to-dete.patch
+++ /dev/null
@@ -1,62 +0,0 @@
1From 73c26018ed0ecd9c807bb363cc2c2ab4aca66a82 Mon Sep 17 00:00:00 2001
2From: Szabolcs Nagy <szabolcs.nagy@arm.com>
3Date: Wed, 13 Mar 2024 14:34:14 +0000
4Subject: [PATCH] aarch64: fix check for SVE support in assembler
5
6Due to GCC bug 110901 -mcpu can override -march setting when compiling
7asm code and thus a compiler targetting a specific cpu can fail the
8configure check even when binutils gas supports SVE.
9
10The workaround is that explicit .arch directive overrides both -mcpu
11and -march, and since that's what the actual SVE memcpy uses the
12configure check should use that too even if the GCC issue is fixed
13independently.
14
15Upstream-Status: Backport [https://sourceware.org/git/?p=glibc.git;a=commit;h=73c26018ed0ecd9c807bb363cc2c2ab4aca66a82]
16Signed-off-by: Khem Raj <raj.khem@gmail.com>
17Reviewed-by: Florian Weimer <fweimer@redhat.com>
18---
19 sysdeps/aarch64/configure | 5 +++--
20 sysdeps/aarch64/configure.ac | 5 +++--
21 2 files changed, 6 insertions(+), 4 deletions(-)
22 mode change 100644 => 100755 sysdeps/aarch64/configure
23
24diff --git a/sysdeps/aarch64/configure b/sysdeps/aarch64/configure
25old mode 100644
26new mode 100755
27index ca57edce47..9606137e8d
28--- a/sysdeps/aarch64/configure
29+++ b/sysdeps/aarch64/configure
30@@ -325,9 +325,10 @@ then :
31 printf %s "(cached) " >&6
32 else $as_nop
33 cat > conftest.s <<\EOF
34- ptrue p0.b
35+ .arch armv8.2-a+sve
36+ ptrue p0.b
37 EOF
38-if { ac_try='${CC-cc} -c -march=armv8.2-a+sve conftest.s 1>&5'
39+if { ac_try='${CC-cc} -c conftest.s 1>&5'
40 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
41 (eval $ac_try) 2>&5
42 ac_status=$?
43diff --git a/sysdeps/aarch64/configure.ac b/sysdeps/aarch64/configure.ac
44index 27874eceb4..56d12d661d 100644
45--- a/sysdeps/aarch64/configure.ac
46+++ b/sysdeps/aarch64/configure.ac
47@@ -90,9 +90,10 @@ LIBC_CONFIG_VAR([aarch64-variant-pcs], [$libc_cv_aarch64_variant_pcs])
48 # Check if asm support armv8.2-a+sve
49 AC_CACHE_CHECK([for SVE support in assembler], [libc_cv_aarch64_sve_asm], [dnl
50 cat > conftest.s <<\EOF
51- ptrue p0.b
52+ .arch armv8.2-a+sve
53+ ptrue p0.b
54 EOF
55-if AC_TRY_COMMAND(${CC-cc} -c -march=armv8.2-a+sve conftest.s 1>&AS_MESSAGE_LOG_FD); then
56+if AC_TRY_COMMAND(${CC-cc} -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
57 libc_cv_aarch64_sve_asm=yes
58 else
59 libc_cv_aarch64_sve_asm=no
60--
612.44.0
62
diff --git a/meta/recipes-core/glibc/glibc/0023-qemu-stale-process.patch b/meta/recipes-core/glibc/glibc/0023-qemu-stale-process.patch
new file mode 100644
index 0000000000..c0a467fcec
--- /dev/null
+++ b/meta/recipes-core/glibc/glibc/0023-qemu-stale-process.patch
@@ -0,0 +1,45 @@
1glibc: Skip 2 qemu tests that can hang in oe-selftest
2
3qemumips and qemuppc were leaving stale processes behind after
4running glibc oe-selftest. During analysis, it was found that
5it was due to "tst-scm_rights" and "tst-scm_rights-time64" tests.
6Disable them so that there are no stale processes left behind.
7
8[YOCTO #15423]
9https://bugzilla.yoctoproject.org/show_bug.cgi?id=15423
10
11Upstream-Status: Inappropriate [oe-core specific]
12Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
13---
14diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile
15--- a/sysdeps/unix/sysv/linux/Makefile 2024-03-18 01:15:49.019202881 -0700
16+++ b/sysdeps/unix/sysv/linux/Makefile 2024-03-14 06:26:18.581404107 -0700
17@@ -222,7 +222,6 @@
18 tst-process_mrelease \
19 tst-quota \
20 tst-rlimit-infinity \
21- tst-scm_rights \
22 tst-sigtimedwait \
23 tst-sync_file_range \
24 tst-sysconf-iov_max \
25@@ -233,6 +232,8 @@
26 tst-timerfd \
27 tst-ttyname-direct \
28 tst-ttyname-namespace \
29+ # Skip this test to avoid stale qemu process
30+ # tst-scm_rights \
31 # tests
32
33 # process_madvise requires CAP_SYS_ADMIN.
34@@ -270,9 +271,10 @@
35 tst-ntp_gettimex-time64 \
36 tst-ppoll-time64 \
37 tst-prctl-time64 \
38- tst-scm_rights-time64 \
39 tst-sigtimedwait-time64 \
40 tst-timerfd-time64 \
41+ # Skip this test to avoid stale qemu process
42+ # tst-scm_rights-time64 \
43 # tests-time64
44
45 tests-clone-internal = \
diff --git a/meta/recipes-core/glibc/glibc_2.39.bb b/meta/recipes-core/glibc/glibc_2.39.bb
index b203060064..2484ae1cd9 100644
--- a/meta/recipes-core/glibc/glibc_2.39.bb
+++ b/meta/recipes-core/glibc/glibc_2.39.bb
@@ -16,6 +16,10 @@ CVE_STATUS[CVE-2019-1010025] = "disputed: \
16Allows for ASLR bypass so can bypass some hardening, not an exploit in itself, may allow \ 16Allows for ASLR bypass so can bypass some hardening, not an exploit in itself, may allow \
17easier access for another. 'ASLR bypass itself is not a vulnerability.'" 17easier access for another. 'ASLR bypass itself is not a vulnerability.'"
18 18
19CVE_STATUS_GROUPS += "CVE_STATUS_STABLE_BACKPORTS"
20CVE_STATUS_STABLE_BACKPORTS = "CVE-2024-2961 CVE-2024-33599 CVE-2024-33600 CVE-2024-33601 CVE-2024-33602"
21CVE_STATUS_STABLE_BACKPORTS[status] = "cpe-stable-backport: fix available in used git hash"
22
19DEPENDS += "gperf-native bison-native" 23DEPENDS += "gperf-native bison-native"
20 24
21NATIVESDKFIXES ?= "" 25NATIVESDKFIXES ?= ""
@@ -48,7 +52,7 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \
48 file://0020-tzselect.ksh-Use-bin-sh-default-shell-interpreter.patch \ 52 file://0020-tzselect.ksh-Use-bin-sh-default-shell-interpreter.patch \
49 file://0021-fix-create-thread-failed-in-unprivileged-process-BZ-.patch \ 53 file://0021-fix-create-thread-failed-in-unprivileged-process-BZ-.patch \
50 file://0022-Avoid-hardcoded-build-time-paths-in-the-output-binar.patch \ 54 file://0022-Avoid-hardcoded-build-time-paths-in-the-output-binar.patch \
51 file://0023-aarch64-configure-Pass-mcpu-along-with-march-to-dete.patch \ 55 file://0023-qemu-stale-process.patch \
52" 56"
53S = "${WORKDIR}/git" 57S = "${WORKDIR}/git"
54B = "${WORKDIR}/build-${TARGET_SYS}" 58B = "${WORKDIR}/build-${TARGET_SYS}"
diff --git a/meta/recipes-core/ifupdown/ifupdown_0.8.41.bb b/meta/recipes-core/ifupdown/ifupdown_0.8.41.bb
index 16425ea9e4..c7004ab41d 100644
--- a/meta/recipes-core/ifupdown/ifupdown_0.8.41.bb
+++ b/meta/recipes-core/ifupdown/ifupdown_0.8.41.bb
@@ -35,7 +35,7 @@ do_install () {
35 35
36 # If volatiles are used, then we'll also need /run/network there too. 36 # If volatiles are used, then we'll also need /run/network there too.
37 install -d ${D}/etc/default/volatiles 37 install -d ${D}/etc/default/volatiles
38 install -m 0644 ${WORKDIR}/99_network ${D}/etc/default/volatiles 38 install -m 0644 ${UNPACKDIR}/99_network ${D}/etc/default/volatiles
39 39
40 install -m 0755 ifup ${D}${base_sbindir}/ 40 install -m 0755 ifup ${D}${base_sbindir}/
41 ln ${D}${base_sbindir}/ifup ${D}${base_sbindir}/ifdown 41 ln ${D}${base_sbindir}/ifup ${D}${base_sbindir}/ifdown
diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
index 6e222dfaa7..e406968df2 100644
--- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
+++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
@@ -26,7 +26,7 @@ inherit core-image setuptools3 features_check
26 26
27REQUIRED_DISTRO_FEATURES += "xattr" 27REQUIRED_DISTRO_FEATURES += "xattr"
28 28
29SRCREV ?= "cf69c6843fb62ab2ebee361f3d1a1141f1a6b01a" 29SRCREV ?= "17723c6e34096a53fb186cc70cfc604bb30da8b9"
30SRC_URI = "git://git.yoctoproject.org/poky;branch=master \ 30SRC_URI = "git://git.yoctoproject.org/poky;branch=master \
31 file://Yocto_Build_Appliance.vmx \ 31 file://Yocto_Build_Appliance.vmx \
32 file://Yocto_Build_Appliance.vmxf \ 32 file://Yocto_Build_Appliance.vmxf \
@@ -44,10 +44,10 @@ IMAGE_CMD:ext4:append () {
44fakeroot do_populate_poky_src () { 44fakeroot do_populate_poky_src () {
45 # Because fetch2's git's unpack uses -s cloneflag, the unpacked git repo 45 # Because fetch2's git's unpack uses -s cloneflag, the unpacked git repo
46 # will become invalid in the target. 46 # will become invalid in the target.
47 rm -rf ${WORKDIR}/git/.git 47 rm -rf ${UNPACKDIR}/git/.git
48 rm -f ${WORKDIR}/git/.gitignore 48 rm -f ${UNPACKDIR}/git/.gitignore
49 49
50 cp -R ${WORKDIR}/git ${IMAGE_ROOTFS}/home/builder/poky 50 cp -R ${UNPACKDIR}/git ${IMAGE_ROOTFS}/home/builder/poky
51 51
52 mkdir -p ${IMAGE_ROOTFS}/home/builder/poky/build/conf 52 mkdir -p ${IMAGE_ROOTFS}/home/builder/poky/build/conf
53 mkdir -p ${IMAGE_ROOTFS}/home/builder/poky/build/downloads 53 mkdir -p ${IMAGE_ROOTFS}/home/builder/poky/build/downloads
@@ -58,10 +58,10 @@ fakeroot do_populate_poky_src () {
58 fi 58 fi
59 59
60 # Place the README_VirtualBox_Guest_Additions file in builders home folder. 60 # Place the README_VirtualBox_Guest_Additions file in builders home folder.
61 cp ${WORKDIR}/README_VirtualBox_Guest_Additions.txt ${IMAGE_ROOTFS}/home/builder/ 61 cp ${UNPACKDIR}/README_VirtualBox_Guest_Additions.txt ${IMAGE_ROOTFS}/home/builder/
62 62
63 # Place the README_VirtualBox_Toaster file in builders home folder. 63 # Place the README_VirtualBox_Toaster file in builders home folder.
64 cp ${WORKDIR}/README_VirtualBox_Toaster.txt ${IMAGE_ROOTFS}/home/builder/ 64 cp ${UNPACKDIR}/README_VirtualBox_Toaster.txt ${IMAGE_ROOTFS}/home/builder/
65 65
66 echo "INHERIT += \"rm_work\"" >> ${IMAGE_ROOTFS}/home/builder/poky/build/conf/auto.conf 66 echo "INHERIT += \"rm_work\"" >> ${IMAGE_ROOTFS}/home/builder/poky/build/conf/auto.conf
67 echo "export LC_ALL=en_US.utf8" >> ${IMAGE_ROOTFS}/home/builder/.bashrc 67 echo "export LC_ALL=en_US.utf8" >> ${IMAGE_ROOTFS}/home/builder/.bashrc
@@ -129,10 +129,15 @@ python () {
129 d.delVarFlag("do_unpack", "noexec") 129 d.delVarFlag("do_unpack", "noexec")
130} 130}
131 131
132# ${S} doesn't exist for us
133do_qa_unpack() {
134 return
135}
136
132create_bundle_files () { 137create_bundle_files () {
133 cd ${WORKDIR} 138 cd ${WORKDIR}
134 mkdir -p Yocto_Build_Appliance 139 mkdir -p Yocto_Build_Appliance
135 cp *.vmx* Yocto_Build_Appliance 140 cp ${UNPACKDIR}/*.vmx* Yocto_Build_Appliance
136 ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vmdk Yocto_Build_Appliance/Yocto_Build_Appliance.vmdk 141 ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vmdk Yocto_Build_Appliance/Yocto_Build_Appliance.vmdk
137 ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vhdx Yocto_Build_Appliance/Yocto_Build_Appliance.vhdx 142 ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vhdx Yocto_Build_Appliance/Yocto_Build_Appliance.vhdx
138 ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vhd Yocto_Build_Appliance/Yocto_Build_Appliance.vhd 143 ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vhd Yocto_Build_Appliance/Yocto_Build_Appliance.vhd
diff --git a/meta/recipes-core/init-ifupdown/init-ifupdown-1.0/interfaces b/meta/recipes-core/init-ifupdown/init-ifupdown-1.0/interfaces
index e617fcf69b..3d0f0c6768 100644
--- a/meta/recipes-core/init-ifupdown/init-ifupdown-1.0/interfaces
+++ b/meta/recipes-core/init-ifupdown/init-ifupdown-1.0/interfaces
@@ -14,10 +14,11 @@ iface wlan0 inet dhcp
14iface atml0 inet dhcp 14iface atml0 inet dhcp
15 15
16# Wired or wireless interfaces including predictable names 16# Wired or wireless interfaces including predictable names
17auto /eth0 17auto eth0
18iface eth0 inet dhcp 18iface eth0 inet dhcp
19iface eth1 inet dhcp 19iface eth1 inet dhcp
20 20
21# Busybox ifupdown won't process /en* correctly
21auto /en*=eth 22auto /en*=eth
22iface eth inet dhcp 23iface eth inet dhcp
23 24
diff --git a/meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb b/meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb
index 409b1c0403..ddf9d1b311 100644
--- a/meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb
+++ b/meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "This package provides high level tools to configure network inter
3HOMEPAGE = "http://packages.debian.org/ifupdown" 3HOMEPAGE = "http://packages.debian.org/ifupdown"
4SECTION = "base" 4SECTION = "base"
5LICENSE = "GPL-2.0-only" 5LICENSE = "GPL-2.0-only"
6LIC_FILES_CHKSUM = "file://${WORKDIR}/copyright;md5=3dd6192d306f582dee7687da3d8748ab" 6LIC_FILES_CHKSUM = "file://${S}/copyright;md5=3dd6192d306f582dee7687da3d8748ab"
7 7
8inherit update-rc.d 8inherit update-rc.d
9 9
@@ -15,7 +15,8 @@ SRC_URI = "file://copyright \
15 file://interfaces \ 15 file://interfaces \
16 file://nfsroot" 16 file://nfsroot"
17 17
18S = "${WORKDIR}" 18S = "${WORKDIR}/sources"
19UNPACKDIR = "${S}"
19 20
20do_install () { 21do_install () {
21 install -d ${D}${sysconfdir}/init.d \ 22 install -d ${D}${sysconfdir}/init.d \
@@ -23,9 +24,9 @@ do_install () {
23 ${D}${sysconfdir}/network/if-up.d \ 24 ${D}${sysconfdir}/network/if-up.d \
24 ${D}${sysconfdir}/network/if-down.d \ 25 ${D}${sysconfdir}/network/if-down.d \
25 ${D}${sysconfdir}/network/if-post-down.d 26 ${D}${sysconfdir}/network/if-post-down.d
26 install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/networking 27 install -m 0755 ${S}/init ${D}${sysconfdir}/init.d/networking
27 install -m 0644 ${WORKDIR}/interfaces ${D}${sysconfdir}/network/interfaces 28 install -m 0644 ${S}/interfaces ${D}${sysconfdir}/network/interfaces
28 install -m 0755 ${WORKDIR}/nfsroot ${D}${sysconfdir}/network/if-pre-up.d 29 install -m 0755 ${S}/nfsroot ${D}${sysconfdir}/network/if-pre-up.d
29} 30}
30 31
31do_install:append:qemuall () { 32do_install:append:qemuall () {
diff --git a/meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb
index 198459f2b2..ec3544c67a 100644
--- a/meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb
@@ -3,11 +3,11 @@ LICENSE = "MIT"
3LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" 3LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
4SRC_URI = "file://init-boot.sh" 4SRC_URI = "file://init-boot.sh"
5 5
6 6S = "${WORKDIR}/sources"
7S = "${WORKDIR}" 7UNPACKDIR = "${S}"
8 8
9do_install() { 9do_install() {
10 install -m 0755 ${WORKDIR}/init-boot.sh ${D}/init 10 install -m 0755 ${S}/init-boot.sh ${D}/init
11 11
12 # Create device nodes expected by some kernels in initramfs 12 # Create device nodes expected by some kernels in initramfs
13 # before even executing /init. 13 # before even executing /init.
diff --git a/meta/recipes-core/initrdscripts/initramfs-framework/init b/meta/recipes-core/initrdscripts/initramfs-framework/init
index 567694aff7..e3d8caa0e1 100755
--- a/meta/recipes-core/initrdscripts/initramfs-framework/init
+++ b/meta/recipes-core/initrdscripts/initramfs-framework/init
@@ -54,17 +54,20 @@ debug() {
54} 54}
55 55
56# Prints a message and start a endless loop 56# Prints a message and start a endless loop
57# Force reboot if init_fatal_reboot bootparam is set
57fatal() { 58fatal() {
58 echo $1 >/dev/console 59 echo $1 >/dev/console
59 echo >/dev/console 60 echo >/dev/console
60 61
61 if [ -n "$bootparam_init_fatal_sh" ]; then 62 if [ -n "$bootparam_init_fatal_reboot" ]; then
62 sh 63 reboot -f
63 else 64 elif [ -n "$bootparam_init_fatal_sh" ]; then
64 while [ "true" ]; do 65 sh
65 sleep 3600 66 else
66 done 67 while [ "true" ]; do
67 fi 68 sleep 3600
69 done
70 fi
68} 71}
69 72
70# Variables shared amoung modules 73# Variables shared amoung modules
diff --git a/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
index 39ea51ccbd..bb4984366d 100644
--- a/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
@@ -20,37 +20,38 @@ SRC_URI = "file://init \
20 file://overlayroot \ 20 file://overlayroot \
21 " 21 "
22 22
23S = "${WORKDIR}" 23S = "${WORKDIR}/sources"
24UNPACKDIR = "${S}"
24 25
25do_install() { 26do_install() {
26 install -d ${D}/init.d 27 install -d ${D}/init.d
27 28
28 # base 29 # base
29 install -m 0755 ${WORKDIR}/init ${D}/init 30 install -m 0755 ${S}/init ${D}/init
30 install -m 0755 ${WORKDIR}/nfsrootfs ${D}/init.d/85-nfsrootfs 31 install -m 0755 ${S}/nfsrootfs ${D}/init.d/85-nfsrootfs
31 install -m 0755 ${WORKDIR}/rootfs ${D}/init.d/90-rootfs 32 install -m 0755 ${S}/rootfs ${D}/init.d/90-rootfs
32 install -m 0755 ${WORKDIR}/finish ${D}/init.d/99-finish 33 install -m 0755 ${S}/finish ${D}/init.d/99-finish
33 34
34 # exec 35 # exec
35 install -m 0755 ${WORKDIR}/exec ${D}/init.d/89-exec 36 install -m 0755 ${S}/exec ${D}/init.d/89-exec
36 37
37 # mdev 38 # mdev
38 install -m 0755 ${WORKDIR}/mdev ${D}/init.d/01-mdev 39 install -m 0755 ${S}/mdev ${D}/init.d/01-mdev
39 40
40 # udev 41 # udev
41 install -m 0755 ${WORKDIR}/udev ${D}/init.d/01-udev 42 install -m 0755 ${S}/udev ${D}/init.d/01-udev
42 43
43 # e2fs 44 # e2fs
44 install -m 0755 ${WORKDIR}/e2fs ${D}/init.d/10-e2fs 45 install -m 0755 ${S}/e2fs ${D}/init.d/10-e2fs
45 46
46 # debug 47 # debug
47 install -m 0755 ${WORKDIR}/debug ${D}/init.d/00-debug 48 install -m 0755 ${S}/debug ${D}/init.d/00-debug
48 49
49 # lvm 50 # lvm
50 install -m 0755 ${WORKDIR}/lvm ${D}/init.d/09-lvm 51 install -m 0755 ${S}/lvm ${D}/init.d/09-lvm
51 52
52 # overlayroot needs to run after rootfs module but before finish 53 # overlayroot needs to run after rootfs module but before finish
53 install -m 0755 ${WORKDIR}/overlayroot ${D}/init.d/91-overlayroot 54 install -m 0755 ${S}/overlayroot ${D}/init.d/91-overlayroot
54 55
55 # Create device nodes expected by some kernels in initramfs 56 # Create device nodes expected by some kernels in initramfs
56 # before even executing /init. 57 # before even executing /init.
diff --git a/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb
index 847dbc0472..40046f30a7 100644
--- a/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb
@@ -5,11 +5,11 @@ DEPENDS = "virtual/kernel"
5RDEPENDS:${PN} = "busybox-mdev" 5RDEPENDS:${PN} = "busybox-mdev"
6SRC_URI = "file://init-live.sh" 6SRC_URI = "file://init-live.sh"
7 7
8 8S = "${WORKDIR}/sources"
9S = "${WORKDIR}" 9UNPACKDIR = "${S}"
10 10
11do_install() { 11do_install() {
12 install -m 0755 ${WORKDIR}/init-live.sh ${D}/init 12 install -m 0755 ${S}/init-live.sh ${D}/init
13 install -d ${D}/dev 13 install -d ${D}/dev
14 mknod -m 622 ${D}/dev/console c 5 1 14 mknod -m 622 ${D}/dev/console c 5 1
15} 15}
diff --git a/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb
index b3b991b8fd..7851cc9605 100644
--- a/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb
@@ -5,11 +5,11 @@ DEPENDS = "virtual/kernel"
5RDEPENDS:${PN} = "udev udev-extraconf" 5RDEPENDS:${PN} = "udev udev-extraconf"
6SRC_URI = "file://init-live.sh" 6SRC_URI = "file://init-live.sh"
7 7
8 8S = "${WORKDIR}/sources"
9S = "${WORKDIR}" 9UNPACKDIR = "${S}"
10 10
11do_install() { 11do_install() {
12 install -m 0755 ${WORKDIR}/init-live.sh ${D}/init 12 install -m 0755 ${S}/init-live.sh ${D}/init
13 install -d ${D}/dev 13 install -d ${D}/dev
14 mknod -m 622 ${D}/dev/console c 5 1 14 mknod -m 622 ${D}/dev/console c 5 1
15} 15}
diff --git a/meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb
index 495eccbeda..31291bcdf2 100644
--- a/meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb
@@ -5,10 +5,11 @@ SRC_URI = "file://init-install-efi-testfs.sh"
5 5
6RDEPENDS:${PN} = "parted e2fsprogs-mke2fs dosfstools" 6RDEPENDS:${PN} = "parted e2fsprogs-mke2fs dosfstools"
7 7
8S = "${WORKDIR}" 8S = "${WORKDIR}/sources"
9UNPACKDIR = "${S}"
9 10
10do_install() { 11do_install() {
11 install -m 0755 ${WORKDIR}/init-install-efi-testfs.sh ${D}/install-efi.sh 12 install -m 0755 ${S}/init-install-efi-testfs.sh ${D}/install-efi.sh
12} 13}
13 14
14INHIBIT_DEFAULT_DEPS = "1" 15INHIBIT_DEFAULT_DEPS = "1"
diff --git a/meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb
index e10faadfbe..ff3b5622db 100644
--- a/meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb
@@ -3,14 +3,14 @@ LICENSE = "MIT"
3LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" 3LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
4SRC_URI = "file://init-install-efi.sh" 4SRC_URI = "file://init-install-efi.sh"
5 5
6
7RDEPENDS:${PN} = "parted e2fsprogs-mke2fs dosfstools util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}" 6RDEPENDS:${PN} = "parted e2fsprogs-mke2fs dosfstools util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}"
8RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}" 7RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
9 8
10S = "${WORKDIR}" 9S = "${WORKDIR}/sources"
10UNPACKDIR = "${S}"
11 11
12do_install() { 12do_install() {
13 install -m 0755 ${WORKDIR}/init-install-efi.sh ${D}/install-efi.sh 13 install -m 0755 ${S}/init-install-efi.sh ${D}/install-efi.sh
14} 14}
15 15
16# While this package maybe an allarch due to it being a 16# While this package maybe an allarch due to it being a
diff --git a/meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb
index d347e323b3..19f05f9fec 100644
--- a/meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb
@@ -5,10 +5,11 @@ SRC_URI = "file://init-install-testfs.sh"
5 5
6RDEPENDS:${PN} = "grub parted e2fsprogs-mke2fs" 6RDEPENDS:${PN} = "grub parted e2fsprogs-mke2fs"
7 7
8S = "${WORKDIR}" 8S = "${WORKDIR}/sources"
9UNPACKDIR = "${S}"
9 10
10do_install() { 11do_install() {
11 install -m 0755 ${WORKDIR}/init-install-testfs.sh ${D}/install.sh 12 install -m 0755 ${S}/init-install-testfs.sh ${D}/install.sh
12} 13}
13 14
14INHIBIT_DEFAULT_DEPS = "1" 15INHIBIT_DEFAULT_DEPS = "1"
diff --git a/meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb
index 9046d06c02..1d489e2b64 100644
--- a/meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb
@@ -3,14 +3,14 @@ LICENSE = "MIT"
3LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" 3LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
4SRC_URI = "file://init-install.sh" 4SRC_URI = "file://init-install.sh"
5 5
6 6S = "${WORKDIR}/sources"
7S = "${WORKDIR}" 7UNPACKDIR = "${S}"
8 8
9RDEPENDS:${PN} = "grub parted e2fsprogs-mke2fs util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}" 9RDEPENDS:${PN} = "grub parted e2fsprogs-mke2fs util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}"
10RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}" 10RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
11 11
12do_install() { 12do_install() {
13 install -m 0755 ${WORKDIR}/init-install.sh ${D}/install.sh 13 install -m 0755 ${S}/init-install.sh ${D}/install.sh
14} 14}
15 15
16# While this package maybe an allarch due to it being a 16# While this package maybe an allarch due to it being a
diff --git a/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb
index b7499644f0..bb3f275f26 100644
--- a/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb
@@ -7,11 +7,12 @@ RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
7 7
8SRC_URI = "file://init-install-efi.sh" 8SRC_URI = "file://init-install-efi.sh"
9 9
10S = "${WORKDIR}" 10S = "${WORKDIR}/sources"
11UNPACKDIR = "${S}"
11 12
12do_install() { 13do_install() {
13 install -d ${D}/init.d 14 install -d ${D}/init.d
14 install -m 0755 ${WORKDIR}/init-install-efi.sh ${D}/init.d/install-efi.sh 15 install -m 0755 ${S}/init-install-efi.sh ${D}/init.d/install-efi.sh
15} 16}
16 17
17FILES:${PN} = "/init.d/install-efi.sh" 18FILES:${PN} = "/init.d/install-efi.sh"
diff --git a/meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb
index 11db7124af..b87e59f347 100644
--- a/meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb
@@ -12,11 +12,12 @@ COMPATIBLE_HOST:armv7ve = 'null'
12 12
13SRC_URI = "file://init-install.sh" 13SRC_URI = "file://init-install.sh"
14 14
15S = "${WORKDIR}" 15S = "${WORKDIR}/sources"
16UNPACKDIR = "${S}"
16 17
17do_install() { 18do_install() {
18 install -d ${D}/init.d 19 install -d ${D}/init.d
19 install -m 0755 ${WORKDIR}/init-install.sh ${D}/init.d/install.sh 20 install -m 0755 ${S}/init-install.sh ${D}/init.d/install.sh
20} 21}
21 22
22FILES:${PN} = "/init.d/install.sh" 23FILES:${PN} = "/init.d/install.sh"
diff --git a/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb
index 48a779e9aa..4d9ef79a63 100644
--- a/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb
@@ -9,11 +9,12 @@ inherit allarch
9FILESEXTRAPATHS:prepend := "${THISDIR}/initramfs-framework:" 9FILESEXTRAPATHS:prepend := "${THISDIR}/initramfs-framework:"
10SRC_URI = "file://setup-live" 10SRC_URI = "file://setup-live"
11 11
12S = "${WORKDIR}" 12S = "${WORKDIR}/sources"
13UNPACKDIR = "${S}"
13 14
14do_install() { 15do_install() {
15 install -d ${D}/init.d 16 install -d ${D}/init.d
16 install -m 0755 ${WORKDIR}/setup-live ${D}/init.d/80-setup-live 17 install -m 0755 ${S}/setup-live ${D}/init.d/80-setup-live
17} 18}
18 19
19FILES:${PN} = "/init.d/80-setup-live" 20FILES:${PN} = "/init.d/80-setup-live"
diff --git a/meta/recipes-core/initscripts/initscripts_1.0.bb b/meta/recipes-core/initscripts/initscripts_1.0.bb
index e61ac554f3..65f97a0af2 100644
--- a/meta/recipes-core/initscripts/initscripts_1.0.bb
+++ b/meta/recipes-core/initscripts/initscripts_1.0.bb
@@ -35,7 +35,8 @@ SRC_URI = "file://functions \
35 ${@bb.utils.contains('DISTRO_FEATURES','selinux','file://sushell','',d)} \ 35 ${@bb.utils.contains('DISTRO_FEATURES','selinux','file://sushell','',d)} \
36" 36"
37 37
38S = "${WORKDIR}" 38S = "${WORKDIR}/sources"
39UNPACKDIR = "${S}"
39 40
40SRC_URI:append:arm = " file://alignment.sh" 41SRC_URI:append:arm = " file://alignment.sh"
41SRC_URI:append:armeb = " file://alignment.sh" 42SRC_URI:append:armeb = " file://alignment.sh"
@@ -61,9 +62,9 @@ HALTARGS ?= "-d -f"
61VARLIBMOUNTARGS ?= "" 62VARLIBMOUNTARGS ?= ""
62 63
63do_configure() { 64do_configure() {
64 sed -i -e "s:SED_HALTARGS:${HALTARGS}:g" ${WORKDIR}/halt 65 sed -i -e "s:SED_HALTARGS:${HALTARGS}:g" ${S}/halt
65 sed -i -e "s:SED_HALTARGS:${HALTARGS}:g" ${WORKDIR}/reboot 66 sed -i -e "s:SED_HALTARGS:${HALTARGS}:g" ${S}/reboot
66 sed -i -e "s:SED_VARLIBMOUNTARGS:${VARLIBMOUNTARGS}:g" ${WORKDIR}/read-only-rootfs-hook.sh 67 sed -i -e "s:SED_VARLIBMOUNTARGS:${VARLIBMOUNTARGS}:g" ${S}/read-only-rootfs-hook.sh
67} 68}
68 69
69do_install () { 70do_install () {
@@ -84,27 +85,27 @@ do_install () {
84 # Holds state information pertaining to urandom 85 # Holds state information pertaining to urandom
85 install -d ${D}${localstatedir}/lib/urandom 86 install -d ${D}${localstatedir}/lib/urandom
86 87
87 install -m 0644 ${WORKDIR}/functions ${D}${sysconfdir}/init.d 88 install -m 0644 ${S}/functions ${D}${sysconfdir}/init.d
88 install -m 0755 ${WORKDIR}/bootmisc.sh ${D}${sysconfdir}/init.d 89 install -m 0755 ${S}/bootmisc.sh ${D}${sysconfdir}/init.d
89 install -m 0755 ${WORKDIR}/checkroot.sh ${D}${sysconfdir}/init.d 90 install -m 0755 ${S}/checkroot.sh ${D}${sysconfdir}/init.d
90 install -m 0755 ${WORKDIR}/halt ${D}${sysconfdir}/init.d 91 install -m 0755 ${S}/halt ${D}${sysconfdir}/init.d
91 install -m 0755 ${WORKDIR}/hostname.sh ${D}${sysconfdir}/init.d 92 install -m 0755 ${S}/hostname.sh ${D}${sysconfdir}/init.d
92 install -m 0755 ${WORKDIR}/mountall.sh ${D}${sysconfdir}/init.d 93 install -m 0755 ${S}/mountall.sh ${D}${sysconfdir}/init.d
93 install -m 0755 ${WORKDIR}/mountnfs.sh ${D}${sysconfdir}/init.d 94 install -m 0755 ${S}/mountnfs.sh ${D}${sysconfdir}/init.d
94 install -m 0755 ${WORKDIR}/reboot ${D}${sysconfdir}/init.d 95 install -m 0755 ${S}/reboot ${D}${sysconfdir}/init.d
95 install -m 0755 ${WORKDIR}/rmnologin.sh ${D}${sysconfdir}/init.d 96 install -m 0755 ${S}/rmnologin.sh ${D}${sysconfdir}/init.d
96 install -m 0755 ${WORKDIR}/sendsigs ${D}${sysconfdir}/init.d 97 install -m 0755 ${S}/sendsigs ${D}${sysconfdir}/init.d
97 install -m 0755 ${WORKDIR}/single ${D}${sysconfdir}/init.d 98 install -m 0755 ${S}/single ${D}${sysconfdir}/init.d
98 install -m 0755 ${WORKDIR}/umountnfs.sh ${D}${sysconfdir}/init.d 99 install -m 0755 ${S}/umountnfs.sh ${D}${sysconfdir}/init.d
99 install -m 0755 ${WORKDIR}/urandom ${D}${sysconfdir}/init.d 100 install -m 0755 ${S}/urandom ${D}${sysconfdir}/init.d
100 sed -i ${D}${sysconfdir}/init.d/urandom -e 's,/var/,${localstatedir}/,g;s,/etc/,${sysconfdir}/,g' 101 sed -i ${D}${sysconfdir}/init.d/urandom -e 's,/var/,${localstatedir}/,g;s,/etc/,${sysconfdir}/,g'
101 install -m 0755 ${WORKDIR}/devpts.sh ${D}${sysconfdir}/init.d 102 install -m 0755 ${S}/devpts.sh ${D}${sysconfdir}/init.d
102 install -m 0755 ${WORKDIR}/devpts ${D}${sysconfdir}/default 103 install -m 0755 ${S}/devpts ${D}${sysconfdir}/default
103 install -m 0755 ${WORKDIR}/sysfs.sh ${D}${sysconfdir}/init.d 104 install -m 0755 ${S}/sysfs.sh ${D}${sysconfdir}/init.d
104 install -m 0755 ${WORKDIR}/populate-volatile.sh ${D}${sysconfdir}/init.d 105 install -m 0755 ${S}/populate-volatile.sh ${D}${sysconfdir}/init.d
105 install -m 0755 ${WORKDIR}/read-only-rootfs-hook.sh ${D}${sysconfdir}/init.d 106 install -m 0755 ${S}/read-only-rootfs-hook.sh ${D}${sysconfdir}/init.d
106 install -m 0755 ${WORKDIR}/save-rtc.sh ${D}${sysconfdir}/init.d 107 install -m 0755 ${S}/save-rtc.sh ${D}${sysconfdir}/init.d
107 install -m 0644 ${WORKDIR}/volatiles ${D}${sysconfdir}/default/volatiles/00_core 108 install -m 0644 ${S}/volatiles ${D}${sysconfdir}/default/volatiles/00_core
108 if [ ${@ oe.types.boolean('${VOLATILE_LOG_DIR}') } = True ]; then 109 if [ ${@ oe.types.boolean('${VOLATILE_LOG_DIR}') } = True ]; then
109 sed -i -e '\@^d root root 0755 /var/volatile/log none$@ a\l root root 0755 /var/log /var/volatile/log' \ 110 sed -i -e '\@^d root root 0755 /var/volatile/log none$@ a\l root root 0755 /var/log /var/volatile/log' \
110 ${D}${sysconfdir}/default/volatiles/00_core 111 ${D}${sysconfdir}/default/volatiles/00_core
@@ -112,22 +113,22 @@ do_install () {
112 if [ "${VOLATILE_TMP_DIR}" != "yes" ]; then 113 if [ "${VOLATILE_TMP_DIR}" != "yes" ]; then
113 sed -i -e "/\<tmp\>/d" ${D}${sysconfdir}/default/volatiles/00_core 114 sed -i -e "/\<tmp\>/d" ${D}${sysconfdir}/default/volatiles/00_core
114 fi 115 fi
115 install -m 0755 ${WORKDIR}/dmesg.sh ${D}${sysconfdir}/init.d 116 install -m 0755 ${S}/dmesg.sh ${D}${sysconfdir}/init.d
116 install -m 0644 ${WORKDIR}/logrotate-dmesg.conf ${D}${sysconfdir}/ 117 install -m 0644 ${S}/logrotate-dmesg.conf ${D}${sysconfdir}/
117 118
118 if [ "${TARGET_ARCH}" = "arm" ]; then 119 if [ "${TARGET_ARCH}" = "arm" ]; then
119 install -m 0755 ${WORKDIR}/alignment.sh ${D}${sysconfdir}/init.d 120 install -m 0755 ${S}/alignment.sh ${D}${sysconfdir}/init.d
120 fi 121 fi
121 122
122 if ${@bb.utils.contains('DISTRO_FEATURES','selinux','true','false',d)}; then 123 if ${@bb.utils.contains('DISTRO_FEATURES','selinux','true','false',d)}; then
123 install -d ${D}/${base_sbindir} 124 install -d ${D}/${base_sbindir}
124 install -m 0755 ${WORKDIR}/sushell ${D}/${base_sbindir} 125 install -m 0755 ${S}/sushell ${D}/${base_sbindir}
125 fi 126 fi
126# 127#
127# Install device dependent scripts 128# Install device dependent scripts
128# 129#
129 install -m 0755 ${WORKDIR}/banner.sh ${D}${sysconfdir}/init.d/banner.sh 130 install -m 0755 ${S}/banner.sh ${D}${sysconfdir}/init.d/banner.sh
130 install -m 0755 ${WORKDIR}/umountfs ${D}${sysconfdir}/init.d/umountfs 131 install -m 0755 ${S}/umountfs ${D}${sysconfdir}/init.d/umountfs
131# 132#
132# Create runlevel links 133# Create runlevel links
133# 134#
diff --git a/meta/recipes-core/kbd/kbd/0001-Remove-non-free-Agafari-fonts.patch b/meta/recipes-core/kbd/kbd/0001-Remove-non-free-Agafari-fonts.patch
new file mode 100644
index 0000000000..de279b55f9
--- /dev/null
+++ b/meta/recipes-core/kbd/kbd/0001-Remove-non-free-Agafari-fonts.patch
@@ -0,0 +1,73 @@
1From b757e6842f9631757f0d1a6b3833aabffa9ffeee Mon Sep 17 00:00:00 2001
2From: Alexey Gladkov <legion@kernel.org>
3Date: Thu, 29 Feb 2024 17:38:37 +0100
4Subject: [PATCH] Remove non-free Agafari fonts
5
6Based on legal analysis, we are removing non-free fonts for now. If we
7can change the license of these fonts, we will return them back.
8
9From: Stanislav Brabec <sbrabec@suse.com>
10Date: Wed, 28 Feb 2024 16:47:54 +0100
11Subject: kbd: Legal problems of Agafari fonts
12
13 The data/consolefonts/README.Ethiopic contains a notice:
14 Agafari:
15 Donated by the Ethiopian Science and Technology Commission
16 <ncic@padis.gn.apc.org> or <ncic@telecom.net.et> and may be redistributed
17 for non-commercial use under Unix environments only.
18
19 According to our legal review, it makes impossible to distribute these
20 fonts as part of any commercial products, and even makes it impossible to
21 distribute kbd sources as part of any commercial product services.
22
23 Additionally, it makes the whole kbd package incompatible with GPL, so the
24 COPYING file (created during build of the tarball) cannot declare GPL
25 version 2. It also violates section 6 of GPL (no further restrictions).
26
27 That is why several GNU/Linux distributions exclude Agafari from the
28 release. To be on a safe side, SUSE even decided to repack any source
29 tarballs before putting it to their servers.
30
31 This was probably reported to the former kbd maintainer about 20 years ago,
32 but nothing changed over years.
33
34 That is why I recommend removing Agafari fonts and removing the reference
35 to them from README.Ethiopic. Alternatively, you can ask the Ethiopian
36 Science and Technology Commission for re-licensing.
37
38Signed-off-by: Alexey Gladkov <legion@kernel.org>
39
40Upstream-Status: Backport [https://github.com/legionus/kbd/commit/b757e6842f9631757f0d1a6b3833aabffa9ffeee]
41
42[do_configure prepend added to remove binary files]
43
44Signed-off-by: Peter Marko <peter.marko@siemens.com>
45---
46 data/consolefonts/Agafari-12.psfu | Bin 7989 -> 0 bytes
47 data/consolefonts/Agafari-14.psfu | Bin 9013 -> 0 bytes
48 data/consolefonts/Agafari-16.psfu | Bin 10037 -> 0 bytes
49 data/consolefonts/README.Ethiopic | 5 -----
50 4 files changed, 5 deletions(-)
51 delete mode 100644 data/consolefonts/Agafari-12.psfu
52 delete mode 100644 data/consolefonts/Agafari-14.psfu
53 delete mode 100644 data/consolefonts/Agafari-16.psfu
54
55diff --git a/data/consolefonts/README.Ethiopic b/data/consolefonts/README.Ethiopic
56index 7502722..2810797 100644
57--- a/data/consolefonts/README.Ethiopic
58+++ b/data/consolefonts/README.Ethiopic
59@@ -14,11 +14,6 @@ Ethiopic fonts:
60 restrictions below:
61
62
63-Agafari:
64- Donated by the Ethiopian Science and Technology Commission
65- <ncic@padis.gn.apc.org> or <ncic@telecom.net.et> and may be redistributed
66- for non-commercial use under Unix environments only.
67-
68 Goha and GohaClassic:
69 Donated by Yitna Firdyiwek <ybf2u@virgina.edu> of GohaTibeb Associates
70 and may be redistributed without restriction under the GNU GPL 2.0.
71--
722.30.2
73
diff --git a/meta/recipes-core/kbd/kbd_2.6.4.bb b/meta/recipes-core/kbd/kbd_2.6.4.bb
index 790055aa96..2331b51e59 100644
--- a/meta/recipes-core/kbd/kbd_2.6.4.bb
+++ b/meta/recipes-core/kbd/kbd_2.6.4.bb
@@ -1,9 +1,19 @@
1SUMMARY = "Keytable files and keyboard utilities" 1SUMMARY = "Keytable files and keyboard utilities"
2HOMEPAGE = "http://www.kbd-project.org/" 2HOMEPAGE = "http://www.kbd-project.org/"
3DESCRIPTION = "The kbd project contains tools for managing Linux console (Linux console, virtual terminals, keyboard, etc.) – mainly, what they do is loading console fonts and keyboard maps." 3DESCRIPTION = "The kbd project contains tools for managing Linux console (Linux console, virtual terminals, keyboard, etc.) – mainly, what they do is loading console fonts and keyboard maps."
4# everything minus console-fonts is GPL-2.0-or-later 4
5LICENSE = "GPL-2.0-or-later" 5# consolefonts and keymaps contain also some public domain and author notice licenses
6LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" 6LICENSE = "GPL-2.0-or-later & LGPL-2.0-or-later & GPL-3.0-or-later"
7LIC_FILES_CHKSUM = " \
8 file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
9 file://data/keymaps/pine/en.map;beginline=2;endline=15;md5=20914a59c0546a7b77ebf959bc88ad5d \
10"
11LICENSE:${PN} = "GPL-2.0-or-later & LGPL-2.0-or-later"
12LICENSE:${PN}-consolefonts = "GPL-2.0-or-later"
13LICENSE:${PN}-consoletrans = "GPL-2.0-or-later"
14LICENSE:${PN}-keymaps-pine = "GPL-3.0-or-later"
15LICENSE:${PN}-keymaps = "GPL-2.0-or-later"
16LICENSE:${PN}-unimaps = "GPL-2.0-or-later"
7 17
8inherit autotools gettext pkgconfig 18inherit autotools gettext pkgconfig
9 19
@@ -14,6 +24,7 @@ RPROVIDES:${PN} = "console-tools"
14RCONFLICTS:${PN} = "console-tools" 24RCONFLICTS:${PN} = "console-tools"
15 25
16SRC_URI = "${KERNELORG_MIRROR}/linux/utils/${BPN}/${BP}.tar.xz \ 26SRC_URI = "${KERNELORG_MIRROR}/linux/utils/${BPN}/${BP}.tar.xz \
27 file://0001-Remove-non-free-Agafari-fonts.patch \
17 " 28 "
18 29
19SRC_URI[sha256sum] = "519f8d087aecca7e0a33cd084bef92c066eb19731666653dcc70c9d71aa40926" 30SRC_URI[sha256sum] = "519f8d087aecca7e0a33cd084bef92c066eb19731666653dcc70c9d71aa40926"
@@ -24,13 +35,22 @@ PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} \
24 35
25PACKAGECONFIG[pam] = "--enable-vlock, --disable-vlock, libpam," 36PACKAGECONFIG[pam] = "--enable-vlock, --disable-vlock, libpam,"
26 37
27PACKAGES += "${PN}-consolefonts ${PN}-keymaps ${PN}-unimaps ${PN}-consoletrans" 38PACKAGES += "${PN}-consolefonts ${PN}-keymaps-pine ${PN}-keymaps ${PN}-unimaps ${PN}-consoletrans"
28 39
29FILES:${PN}-consolefonts = "${datadir}/consolefonts" 40FILES:${PN}-consolefonts = "${datadir}/consolefonts"
30FILES:${PN}-consoletrans = "${datadir}/consoletrans" 41FILES:${PN}-consoletrans = "${datadir}/consoletrans"
42FILES:${PN}-keymaps-pine = "${datadir}/keymaps/pine"
31FILES:${PN}-keymaps = "${datadir}/keymaps" 43FILES:${PN}-keymaps = "${datadir}/keymaps"
32FILES:${PN}-unimaps = "${datadir}/unimaps" 44FILES:${PN}-unimaps = "${datadir}/unimaps"
33 45
46RRECOMMENDS:${PN}-keymaps = "${PN}-keymaps-pine"
47
48# remove this when upgrading to newer version which has integrated
49# https://github.com/legionus/kbd/commit/b757e6842f9631757f0d1a6b3833aabffa9ffeee
50do_configure:prepend() {
51 rm -rf ${S}/data/consolefonts/Agafari-1*
52}
53
34do_install:append () { 54do_install:append () {
35 if [ "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'yes', 'no', d)}" = "yes" ] \ 55 if [ "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'yes', 'no', d)}" = "yes" ] \
36 && [ -f ${D}${sysconfdir}/pam.d/vlock ]; then 56 && [ -f ${D}${sysconfdir}/pam.d/vlock ]; then
diff --git a/meta/recipes-core/libcgroup/libcgroup/0001-include-Makefile-install-systemd.h-by-default.patch b/meta/recipes-core/libcgroup/libcgroup/0001-include-Makefile-install-systemd.h-by-default.patch
new file mode 100644
index 0000000000..4b743f9b33
--- /dev/null
+++ b/meta/recipes-core/libcgroup/libcgroup/0001-include-Makefile-install-systemd.h-by-default.patch
@@ -0,0 +1,37 @@
1From 592dcdcf243576bd2517d3da9bc18990de08e37e Mon Sep 17 00:00:00 2001
2From: Kamalesh Babulal <kamalesh.babulal@oracle.com>
3Date: Mon, 27 Nov 2023 20:07:33 +0530
4Subject: [PATCH 1/1] include/Makefile: install systemd.h by default
5
6Install systemd.h header file by default, as we have stub and defined
7versions of the systemd functions for both non-systemd and systemd
8enabled configurations. This will help packagers to ship package
9without systemd support (--enable-systemd=no).
10
11Signed-off-by: Kamalesh Babulal <kamalesh.babulal@oracle.com>
12Signed-off-by: Tom Hromatka <tom.hromatka@oracle.com>
13
14Upstream-Status: Backport [https://github.com/libcgroup/libcgroup/commit/592dcdcf243576bd2517d3da9bc18990de08e37e]
15
16Signed-off-by: Adriaan Schmidt <adriaan.schmidt@siemens.com>
17---
18 include/Makefile.am | 6 +-----
19 1 file changed, 1 insertion(+), 5 deletions(-)
20
21diff --git a/include/Makefile.am b/include/Makefile.am
22index 23cebaac..4cb05529 100644
23--- a/include/Makefile.am
24+++ b/include/Makefile.am
25@@ -2,8 +2,4 @@
26 nobase_include_HEADERS = libcgroup.h libcgroup/error.h libcgroup/init.h \
27 libcgroup/groups.h libcgroup/tasks.h \
28 libcgroup/iterators.h libcgroup/config.h \
29- libcgroup/log.h libcgroup/tools.h
30-
31-if WITH_SYSTEMD
32-nobase_include_HEADERS += libcgroup/systemd.h
33-endif
34+ libcgroup/log.h libcgroup/tools.h libcgroup/systemd.h
35--
362.39.2
37
diff --git a/meta/recipes-core/libcgroup/libcgroup_3.1.0.bb b/meta/recipes-core/libcgroup/libcgroup_3.1.0.bb
index 4b4f19e36f..a1d27c7e7f 100644
--- a/meta/recipes-core/libcgroup/libcgroup_3.1.0.bb
+++ b/meta/recipes-core/libcgroup/libcgroup_3.1.0.bb
@@ -13,6 +13,7 @@ DEPENDS = "bison-native flex-native"
13DEPENDS:append:libc-musl = " fts" 13DEPENDS:append:libc-musl = " fts"
14 14
15SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.gz \ 15SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.gz \
16 file://0001-include-Makefile-install-systemd.h-by-default.patch \
16" 17"
17UPSTREAM_CHECK_URI = "https://github.com/libcgroup/libcgroup/tags" 18UPSTREAM_CHECK_URI = "https://github.com/libcgroup/libcgroup/tags"
18 19
diff --git a/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.36.bb b/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.36.bb
index d5546ce9ba..30ec6a4674 100644
--- a/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.36.bb
+++ b/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.36.bb
@@ -1,5 +1,5 @@
1# 1#
2# This provides libcrypto.so.1 which contains obsolete APIs, needed for uninative in particular 2# This provides libcrypt.so.1 which contains obsolete APIs, needed for uninative in particular
3# 3#
4 4
5require libxcrypt.inc 5require libxcrypt.inc
diff --git a/meta/recipes-core/libxml/libxml2_2.12.5.bb b/meta/recipes-core/libxml/libxml2_2.12.7.bb
index 47c1a72e77..84601c282f 100644
--- a/meta/recipes-core/libxml/libxml2_2.12.5.bb
+++ b/meta/recipes-core/libxml/libxml2_2.12.7.bb
@@ -20,7 +20,7 @@ SRC_URI += "http://www.w3.org/XML/Test/xmlts20130923.tar;subdir=${BP};name=testt
20 file://install-tests.patch \ 20 file://install-tests.patch \
21 " 21 "
22 22
23SRC_URI[archive.sha256sum] = "a972796696afd38073e0f59c283c3a2f5a560b5268b4babc391b286166526b21" 23SRC_URI[archive.sha256sum] = "24ae78ff1363a973e6d8beba941a7945da2ac056e19b53956aeb6927fd6cfb56"
24SRC_URI[testtar.sha256sum] = "c6b2d42ee50b8b236e711a97d68e6c4b5c8d83e69a2be4722379f08702ea7273" 24SRC_URI[testtar.sha256sum] = "c6b2d42ee50b8b236e711a97d68e6c4b5c8d83e69a2be4722379f08702ea7273"
25 25
26# Disputed as a security issue, but fixed in d39f780 26# Disputed as a security issue, but fixed in d39f780
diff --git a/meta/recipes-core/meta/buildtools-tarball.bb b/meta/recipes-core/meta/buildtools-tarball.bb
index 6b679489fd..92fbda335d 100644
--- a/meta/recipes-core/meta/buildtools-tarball.bb
+++ b/meta/recipes-core/meta/buildtools-tarball.bb
@@ -11,8 +11,11 @@ TOOLCHAIN_HOST_TASK ?= "\
11 nativesdk-python3-git \ 11 nativesdk-python3-git \
12 nativesdk-python3-jinja2 \ 12 nativesdk-python3-jinja2 \
13 nativesdk-python3-testtools \ 13 nativesdk-python3-testtools \
14 nativesdk-python3-pip \
15 nativesdk-python3-setuptools \
14 nativesdk-python3-subunit \ 16 nativesdk-python3-subunit \
15 nativesdk-python3-pyyaml \ 17 nativesdk-python3-pyyaml \
18 nativesdk-python3-websockets \
16 nativesdk-ncurses-terminfo-base \ 19 nativesdk-ncurses-terminfo-base \
17 nativesdk-chrpath \ 20 nativesdk-chrpath \
18 nativesdk-tar \ 21 nativesdk-tar \
diff --git a/meta/recipes-core/meta/uninative-tarball.bb b/meta/recipes-core/meta/uninative-tarball.bb
index 7eebcaf11a..0fd01fdb64 100644
--- a/meta/recipes-core/meta/uninative-tarball.bb
+++ b/meta/recipes-core/meta/uninative-tarball.bb
@@ -58,6 +58,8 @@ fakeroot archive_sdk() {
58 DEST="./${SDK_ARCH}-${SDK_OS}" 58 DEST="./${SDK_ARCH}-${SDK_OS}"
59 mv sysroots/${SDK_SYS} $DEST 59 mv sysroots/${SDK_SYS} $DEST
60 rm sysroots -rf 60 rm sysroots -rf
61 # There is a check in meta/files/toolchain-shar-extract.sh -- make sure to
62 # keep that check up to date if changing the `1024`
61 patchelf --set-interpreter ${@''.join('a' for n in range(1024))} $DEST/usr/bin/patchelf 63 patchelf --set-interpreter ${@''.join('a' for n in range(1024))} $DEST/usr/bin/patchelf
62 mv $DEST/usr/bin/patchelf $DEST/usr/bin/patchelf-uninative 64 mv $DEST/usr/bin/patchelf $DEST/usr/bin/patchelf-uninative
63 ${SDK_ARCHIVE_CMD} 65 ${SDK_ARCHIVE_CMD}
diff --git a/meta/recipes-core/musl/bsd-headers.bb b/meta/recipes-core/musl/bsd-headers.bb
index 887a816031..7d0bdee870 100644
--- a/meta/recipes-core/musl/bsd-headers.bb
+++ b/meta/recipes-core/musl/bsd-headers.bb
@@ -15,7 +15,8 @@ do_compile[noexec] = "1"
15 15
16INHIBIT_DEFAULT_DEPS = "1" 16INHIBIT_DEFAULT_DEPS = "1"
17 17
18S = "${WORKDIR}" 18S = "${WORKDIR}/sources"
19UNPACKDIR = "${S}"
19 20
20do_install() { 21do_install() {
21 install -Dm 0644 ${S}/sys-queue.h ${D}${includedir}/sys/queue.h 22 install -Dm 0644 ${S}/sys-queue.h ${D}${includedir}/sys/queue.h
diff --git a/meta/recipes-core/musl/libc-test_git.bb b/meta/recipes-core/musl/libc-test_git.bb
index 619a959fd2..f55a125a89 100644
--- a/meta/recipes-core/musl/libc-test_git.bb
+++ b/meta/recipes-core/musl/libc-test_git.bb
@@ -50,7 +50,7 @@ do_install () {
50} 50}
51 51
52do_install_ptest_base:append() { 52do_install_ptest_base:append() {
53 install -Dm 0755 ${WORKDIR}/run-libc-ptests ${D}${PTEST_PATH}/run-libc-ptests 53 install -Dm 0755 ${UNPACKDIR}/run-libc-ptests ${D}${PTEST_PATH}/run-libc-ptests
54} 54}
55 55
56COMPATIBLE_HOST = "null" 56COMPATIBLE_HOST = "null"
diff --git a/meta/recipes-core/musl/libssp-nonshared.bb b/meta/recipes-core/musl/libssp-nonshared.bb
index 3faf8f00c3..e9f652fc3e 100644
--- a/meta/recipes-core/musl/libssp-nonshared.bb
+++ b/meta/recipes-core/musl/libssp-nonshared.bb
@@ -17,7 +17,8 @@ DEPENDS = "virtual/${TARGET_PREFIX}binutils \
17 17
18do_configure[noexec] = "1" 18do_configure[noexec] = "1"
19 19
20S = "${WORKDIR}" 20S = "${WORKDIR}/sources"
21UNPACKDIR = "${S}"
21 22
22do_compile() { 23do_compile() {
23 ${CC} ${CPPFLAGS} ${CFLAGS} -fPIE -c stack_chk.c -o stack_chk.o 24 ${CC} ${CPPFLAGS} ${CFLAGS} -fPIE -c stack_chk.c -o stack_chk.o
diff --git a/meta/recipes-core/musl/musl-legacy-error.bb b/meta/recipes-core/musl/musl-legacy-error.bb
index 5ce5a233ab..11a838a6e8 100644
--- a/meta/recipes-core/musl/musl-legacy-error.bb
+++ b/meta/recipes-core/musl/musl-legacy-error.bb
@@ -13,7 +13,8 @@ do_compile[noexec] = "1"
13 13
14INHIBIT_DEFAULT_DEPS = "1" 14INHIBIT_DEFAULT_DEPS = "1"
15 15
16S = "${WORKDIR}" 16S = "${WORKDIR}/sources"
17UNPACKDIR = "${S}"
17 18
18do_install() { 19do_install() {
19 install -Dm 0644 ${S}/error.h -t ${D}${includedir} 20 install -Dm 0644 ${S}/error.h -t ${D}${includedir}
diff --git a/meta/recipes-core/ncurses/files/0001-Fix-CVE-2023-29491.patch b/meta/recipes-core/ncurses/files/0001-Fix-CVE-2023-29491.patch
deleted file mode 100644
index 1232c8c2a8..0000000000
--- a/meta/recipes-core/ncurses/files/0001-Fix-CVE-2023-29491.patch
+++ /dev/null
@@ -1,462 +0,0 @@
1From 3d54a41f12e9aa059f06e66e72d872f2283395b6 Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Sun, 30 Jul 2023 21:14:00 -0700
4Subject: [PATCH] Fix CVE-2023-29491
5
6CVE: CVE-2023-29491
7
8Upstream-Status: Backport [http://ncurses.scripts.mit.edu/?p=ncurses.git;a=commitdiff;h=eb51b1ea1f75a0ec17c9c5937cb28df1e8eeec56]
9
10Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
11---
12 ncurses/tinfo/lib_tgoto.c | 10 +++-
13 ncurses/tinfo/lib_tparm.c | 116 ++++++++++++++++++++++++++++++++-----
14 ncurses/tinfo/read_entry.c | 3 +
15 progs/tic.c | 6 ++
16 progs/tparm_type.c | 9 +++
17 progs/tparm_type.h | 2 +
18 progs/tput.c | 61 ++++++++++++++++---
19 7 files changed, 185 insertions(+), 22 deletions(-)
20
21diff --git a/ncurses/tinfo/lib_tgoto.c b/ncurses/tinfo/lib_tgoto.c
22index 9cf5e100..c50ed4df 100644
23--- a/ncurses/tinfo/lib_tgoto.c
24+++ b/ncurses/tinfo/lib_tgoto.c
25@@ -207,6 +207,14 @@ tgoto(const char *string, int x, int y)
26 result = tgoto_internal(string, x, y);
27 else
28 #endif
29- result = TIPARM_2(string, y, x);
30+ if ((result = TIPARM_2(string, y, x)) == NULL) {
31+ /*
32+ * Because termcap did not provide a more general solution such as
33+ * tparm(), it was necessary to handle single-parameter capabilities
34+ * using tgoto(). The internal _nc_tiparm() function returns a NULL
35+ * for that case; retry for the single-parameter case.
36+ */
37+ result = TIPARM_1(string, y);
38+ }
39 returnPtr(result);
40 }
41diff --git a/ncurses/tinfo/lib_tparm.c b/ncurses/tinfo/lib_tparm.c
42index d9bdfd8f..a10a3877 100644
43--- a/ncurses/tinfo/lib_tparm.c
44+++ b/ncurses/tinfo/lib_tparm.c
45@@ -1086,6 +1086,64 @@ tparam_internal(TPARM_STATE *tps, const char *string, TPARM_DATA *data)
46 return (TPS(out_buff));
47 }
48
49+#ifdef CUR
50+/*
51+ * Only a few standard capabilities accept string parameters. The others that
52+ * are parameterized accept only numeric parameters.
53+ */
54+static bool
55+check_string_caps(TPARM_DATA *data, const char *string)
56+{
57+ bool result = FALSE;
58+
59+#define CHECK_CAP(name) (VALID_STRING(name) && !strcmp(name, string))
60+
61+ /*
62+ * Disallow string parameters unless we can check them against a terminal
63+ * description.
64+ */
65+ if (cur_term != NULL) {
66+ int want_type = 0;
67+
68+ if (CHECK_CAP(pkey_key))
69+ want_type = 2; /* function key #1, type string #2 */
70+ else if (CHECK_CAP(pkey_local))
71+ want_type = 2; /* function key #1, execute string #2 */
72+ else if (CHECK_CAP(pkey_xmit))
73+ want_type = 2; /* function key #1, transmit string #2 */
74+ else if (CHECK_CAP(plab_norm))
75+ want_type = 2; /* label #1, show string #2 */
76+ else if (CHECK_CAP(pkey_plab))
77+ want_type = 6; /* function key #1, type string #2, show string #3 */
78+#if NCURSES_XNAMES
79+ else {
80+ char *check;
81+
82+ check = tigetstr("Cs");
83+ if (CHECK_CAP(check))
84+ want_type = 1; /* style #1 */
85+
86+ check = tigetstr("Ms");
87+ if (CHECK_CAP(check))
88+ want_type = 3; /* storage unit #1, content #2 */
89+ }
90+#endif
91+
92+ if (want_type == data->tparm_type) {
93+ result = TRUE;
94+ } else {
95+ T(("unexpected string-parameter"));
96+ }
97+ }
98+ return result;
99+}
100+
101+#define ValidCap() (myData.tparm_type == 0 || \
102+ check_string_caps(&myData, string))
103+#else
104+#define ValidCap() 1
105+#endif
106+
107 #if NCURSES_TPARM_VARARGS
108
109 NCURSES_EXPORT(char *)
110@@ -1100,7 +1158,7 @@ tparm(const char *string, ...)
111 tps->tname = "tparm";
112 #endif /* TRACE */
113
114- if (tparm_setup(cur_term, string, &myData) == OK) {
115+ if (tparm_setup(cur_term, string, &myData) == OK && ValidCap()) {
116 va_list ap;
117
118 va_start(ap, string);
119@@ -1135,7 +1193,7 @@ tparm(const char *string,
120 tps->tname = "tparm";
121 #endif /* TRACE */
122
123- if (tparm_setup(cur_term, string, &myData) == OK) {
124+ if (tparm_setup(cur_term, string, &myData) == OK && ValidCap()) {
125
126 myData.param[0] = a1;
127 myData.param[1] = a2;
128@@ -1166,7 +1224,7 @@ tiparm(const char *string, ...)
129 tps->tname = "tiparm";
130 #endif /* TRACE */
131
132- if (tparm_setup(cur_term, string, &myData) == OK) {
133+ if (tparm_setup(cur_term, string, &myData) == OK && ValidCap()) {
134 va_list ap;
135
136 va_start(ap, string);
137@@ -1179,7 +1237,25 @@ tiparm(const char *string, ...)
138 }
139
140 /*
141- * The internal-use flavor ensures that the parameters are numbers, not strings
142+ * The internal-use flavor ensures that parameters are numbers, not strings.
143+ * In addition to ensuring that they are numbers, it ensures that the parameter
144+ * count is consistent with intended usage.
145+ *
146+ * Unlike the general-purpose tparm/tiparm, these internal calls are fairly
147+ * well defined:
148+ *
149+ * expected == 0 - not applicable
150+ * expected == 1 - set color, or vertical/horizontal addressing
151+ * expected == 2 - cursor addressing
152+ * expected == 4 - initialize color or color pair
153+ * expected == 9 - set attributes
154+ *
155+ * Only for the last case (set attributes) should a parameter be optional.
156+ * Also, a capability which calls for more parameters than expected should be
157+ * ignored.
158+ *
159+ * Return a null if the parameter-checks fail. Otherwise, return a pointer to
160+ * the formatted capability string.
161 */
162 NCURSES_EXPORT(char *)
163 _nc_tiparm(int expected, const char *string, ...)
164@@ -1189,22 +1265,36 @@ _nc_tiparm(int expected, const char *string, ...)
165 char *result = NULL;
166
167 _nc_tparm_err = 0;
168+ T((T_CALLED("_nc_tiparm(%d, %s, ...)"), expected, _nc_visbuf(string)));
169 #ifdef TRACE
170 tps->tname = "_nc_tiparm";
171 #endif /* TRACE */
172
173- if (tparm_setup(cur_term, string, &myData) == OK
174- && myData.num_actual <= expected
175- && myData.tparm_type == 0) {
176- va_list ap;
177+ if (tparm_setup(cur_term, string, &myData) == OK && ValidCap()) {
178+ if (myData.num_actual == 0) {
179+ T(("missing parameter%s, expected %s%d",
180+ expected > 1 ? "s" : "",
181+ expected == 9 ? "up to " : "",
182+ expected));
183+ } else if (myData.num_actual > expected) {
184+ T(("too many parameters, have %d, expected %d",
185+ myData.num_actual,
186+ expected));
187+ } else if (expected != 9 && myData.num_actual != expected) {
188+ T(("expected %d parameters, have %d",
189+ myData.num_actual,
190+ expected));
191+ } else {
192+ va_list ap;
193
194- va_start(ap, string);
195- tparm_copy_valist(&myData, FALSE, ap);
196- va_end(ap);
197+ va_start(ap, string);
198+ tparm_copy_valist(&myData, FALSE, ap);
199+ va_end(ap);
200
201- result = tparam_internal(tps, string, &myData);
202+ result = tparam_internal(tps, string, &myData);
203+ }
204 }
205- return result;
206+ returnPtr(result);
207 }
208
209 /*
210diff --git a/ncurses/tinfo/read_entry.c b/ncurses/tinfo/read_entry.c
211index 2b1875ed..341337d2 100644
212--- a/ncurses/tinfo/read_entry.c
213+++ b/ncurses/tinfo/read_entry.c
214@@ -323,6 +323,9 @@ _nc_read_termtype(TERMTYPE2 *ptr, char *buffer, int limit)
215 || bool_count < 0
216 || num_count < 0
217 || str_count < 0
218+ || bool_count > BOOLCOUNT
219+ || num_count > NUMCOUNT
220+ || str_count > STRCOUNT
221 || str_size < 0) {
222 returnDB(TGETENT_NO);
223 }
224diff --git a/progs/tic.c b/progs/tic.c
225index 93a0b491..888927e2 100644
226--- a/progs/tic.c
227+++ b/progs/tic.c
228@@ -2270,9 +2270,15 @@ check_1_infotocap(const char *name, NCURSES_CONST char *value, int count)
229
230 _nc_reset_tparm(NULL);
231 switch (actual) {
232+ case Str:
233+ result = TPARM_1(value, strings[1]);
234+ break;
235 case Num_Str:
236 result = TPARM_2(value, numbers[1], strings[2]);
237 break;
238+ case Str_Str:
239+ result = TPARM_2(value, strings[1], strings[2]);
240+ break;
241 case Num_Str_Str:
242 result = TPARM_3(value, numbers[1], strings[2], strings[3]);
243 break;
244diff --git a/progs/tparm_type.c b/progs/tparm_type.c
245index 3da4a077..644aa62a 100644
246--- a/progs/tparm_type.c
247+++ b/progs/tparm_type.c
248@@ -47,6 +47,7 @@ tparm_type(const char *name)
249 {code, {longname} }, \
250 {code, {ti} }, \
251 {code, {tc} }
252+#define XD(code, onlyname) TD(code, onlyname, onlyname, onlyname)
253 TParams result = Numbers;
254 /* *INDENT-OFF* */
255 static const struct {
256@@ -58,6 +59,10 @@ tparm_type(const char *name)
257 TD(Num_Str, "pkey_xmit", "pfx", "px"),
258 TD(Num_Str, "plab_norm", "pln", "pn"),
259 TD(Num_Str_Str, "pkey_plab", "pfxl", "xl"),
260+#if NCURSES_XNAMES
261+ XD(Str, "Cs"),
262+ XD(Str_Str, "Ms"),
263+#endif
264 };
265 /* *INDENT-ON* */
266
267@@ -80,12 +85,16 @@ guess_tparm_type(int nparam, char **p_is_s)
268 case 1:
269 if (!p_is_s[0])
270 result = Numbers;
271+ if (p_is_s[0])
272+ result = Str;
273 break;
274 case 2:
275 if (!p_is_s[0] && !p_is_s[1])
276 result = Numbers;
277 if (!p_is_s[0] && p_is_s[1])
278 result = Num_Str;
279+ if (p_is_s[0] && p_is_s[1])
280+ result = Str_Str;
281 break;
282 case 3:
283 if (!p_is_s[0] && !p_is_s[1] && !p_is_s[2])
284diff --git a/progs/tparm_type.h b/progs/tparm_type.h
285index 7c102a30..af5bcf0f 100644
286--- a/progs/tparm_type.h
287+++ b/progs/tparm_type.h
288@@ -45,8 +45,10 @@
289 typedef enum {
290 Other = -1
291 ,Numbers = 0
292+ ,Str
293 ,Num_Str
294 ,Num_Str_Str
295+ ,Str_Str
296 } TParams;
297
298 extern TParams tparm_type(const char *name);
299diff --git a/progs/tput.c b/progs/tput.c
300index 4cd0c5ba..41508b72 100644
301--- a/progs/tput.c
302+++ b/progs/tput.c
303@@ -1,5 +1,5 @@
304 /****************************************************************************
305- * Copyright 2018-2021,2022 Thomas E. Dickey *
306+ * Copyright 2018-2022,2023 Thomas E. Dickey *
307 * Copyright 1998-2016,2017 Free Software Foundation, Inc. *
308 * *
309 * Permission is hereby granted, free of charge, to any person obtaining a *
310@@ -47,12 +47,15 @@
311 #include <transform.h>
312 #include <tty_settings.h>
313
314-MODULE_ID("$Id: tput.c,v 1.99 2022/02/26 23:19:31 tom Exp $")
315+MODULE_ID("$Id: tput.c,v 1.102 2023/04/08 16:26:36 tom Exp $")
316
317 #define PUTS(s) fputs(s, stdout)
318
319 const char *_nc_progname = "tput";
320
321+static bool opt_v = FALSE; /* quiet, do not show warnings */
322+static bool opt_x = FALSE; /* clear scrollback if possible */
323+
324 static bool is_init = FALSE;
325 static bool is_reset = FALSE;
326 static bool is_clear = FALSE;
327@@ -81,6 +84,7 @@ usage(const char *optstring)
328 KEEP(" -S << read commands from standard input")
329 KEEP(" -T TERM use this instead of $TERM")
330 KEEP(" -V print curses-version")
331+ KEEP(" -v verbose, show warnings")
332 KEEP(" -x do not try to clear scrollback")
333 KEEP("")
334 KEEP("Commands:")
335@@ -148,7 +152,7 @@ exit_code(int token, int value)
336 * Returns nonzero on error.
337 */
338 static int
339-tput_cmd(int fd, TTY * settings, bool opt_x, int argc, char **argv, int *used)
340+tput_cmd(int fd, TTY * settings, int argc, char **argv, int *used)
341 {
342 NCURSES_CONST char *name;
343 char *s;
344@@ -231,7 +235,9 @@ tput_cmd(int fd, TTY * settings, bool opt_x, int argc, char **argv, int *used)
345 } else if (VALID_STRING(s)) {
346 if (argc > 1) {
347 int k;
348+ int narg;
349 int analyzed;
350+ int provided;
351 int popcount;
352 long numbers[1 + NUM_PARM];
353 char *strings[1 + NUM_PARM];
354@@ -271,14 +277,45 @@ tput_cmd(int fd, TTY * settings, bool opt_x, int argc, char **argv, int *used)
355
356 popcount = 0;
357 _nc_reset_tparm(NULL);
358+ /*
359+ * Count the number of numeric parameters which are provided.
360+ */
361+ provided = 0;
362+ for (narg = 1; narg < argc; ++narg) {
363+ char *ending = NULL;
364+ long check = strtol(argv[narg], &ending, 10);
365+ if (check < 0 || ending == argv[narg] || *ending != '\0')
366+ break;
367+ provided = narg;
368+ }
369 switch (paramType) {
370+ case Str:
371+ s = TPARM_1(s, strings[1]);
372+ analyzed = 1;
373+ if (provided == 0 && argc >= 1)
374+ provided++;
375+ break;
376+ case Str_Str:
377+ s = TPARM_2(s, strings[1], strings[2]);
378+ analyzed = 2;
379+ if (provided == 0 && argc >= 1)
380+ provided++;
381+ if (provided == 1 && argc >= 2)
382+ provided++;
383+ break;
384 case Num_Str:
385 s = TPARM_2(s, numbers[1], strings[2]);
386 analyzed = 2;
387+ if (provided == 1 && argc >= 2)
388+ provided++;
389 break;
390 case Num_Str_Str:
391 s = TPARM_3(s, numbers[1], strings[2], strings[3]);
392 analyzed = 3;
393+ if (provided == 1 && argc >= 2)
394+ provided++;
395+ if (provided == 2 && argc >= 3)
396+ provided++;
397 break;
398 case Numbers:
399 analyzed = _nc_tparm_analyze(NULL, s, p_is_s, &popcount);
400@@ -316,7 +353,13 @@ tput_cmd(int fd, TTY * settings, bool opt_x, int argc, char **argv, int *used)
401 if (analyzed < popcount) {
402 analyzed = popcount;
403 }
404- *used += analyzed;
405+ if (opt_v && (analyzed != provided)) {
406+ fprintf(stderr, "%s: %s parameters for \"%s\"\n",
407+ _nc_progname,
408+ (analyzed < provided ? "extra" : "missing"),
409+ argv[0]);
410+ }
411+ *used += provided;
412 }
413
414 /* use putp() in order to perform padding */
415@@ -339,7 +382,6 @@ main(int argc, char **argv)
416 int used;
417 TTY old_settings;
418 TTY tty_settings;
419- bool opt_x = FALSE; /* clear scrollback if possible */
420 bool is_alias;
421 bool need_tty;
422
423@@ -348,7 +390,7 @@ main(int argc, char **argv)
424
425 term = getenv("TERM");
426
427- while ((c = getopt(argc, argv, is_alias ? "T:Vx" : "ST:Vx")) != -1) {
428+ while ((c = getopt(argc, argv, is_alias ? "T:Vvx" : "ST:Vvx")) != -1) {
429 switch (c) {
430 case 'S':
431 cmdline = FALSE;
432@@ -361,6 +403,9 @@ main(int argc, char **argv)
433 case 'V':
434 puts(curses_version());
435 ExitProgram(EXIT_SUCCESS);
436+ case 'v': /* verbose */
437+ opt_v = TRUE;
438+ break;
439 case 'x': /* do not try to clear scrollback */
440 opt_x = TRUE;
441 break;
442@@ -404,7 +449,7 @@ main(int argc, char **argv)
443 usage(NULL);
444 while (argc > 0) {
445 tty_settings = old_settings;
446- code = tput_cmd(fd, &tty_settings, opt_x, argc, argv, &used);
447+ code = tput_cmd(fd, &tty_settings, argc, argv, &used);
448 if (code != 0)
449 break;
450 argc -= used;
451@@ -439,7 +484,7 @@ main(int argc, char **argv)
452 while (argnum > 0) {
453 int code;
454 tty_settings = old_settings;
455- code = tput_cmd(fd, &tty_settings, opt_x, argnum, argnow, &used);
456+ code = tput_cmd(fd, &tty_settings, argnum, argnow, &used);
457 if (code != 0) {
458 if (result == 0)
459 result = ErrSystem(0); /* will return value >4 */
460--
4612.40.0
462
diff --git a/meta/recipes-core/ncurses/files/0001-Updating-reset-code-ncurses-6.4-patch-20231104.patch b/meta/recipes-core/ncurses/files/0001-Updating-reset-code-ncurses-6.4-patch-20231104.patch
deleted file mode 100644
index 121db6bffe..0000000000
--- a/meta/recipes-core/ncurses/files/0001-Updating-reset-code-ncurses-6.4-patch-20231104.patch
+++ /dev/null
@@ -1,499 +0,0 @@
1From 135d37072755704b8d018e5de74e62ff3f28c930 Mon Sep 17 00:00:00 2001
2From: Thomas E. Dickey <dickey@invisible-island.net>
3Date: Sun, 5 Nov 2023 05:54:54 +0530
4Subject: [PATCH] Updating reset code - ncurses 6.4 - patch 20231104
5
6+ modify reset command to avoid altering clocal if the terminal uses a
7 modem (prompted by discussion with Werner Fink, Michal Suchanek,
8 OpenSUSE #1201384, Debian #60377).
9+ build-fixes for --with-caps variations.
10+ correct a couple of section-references in INSTALL.
11
12Signed-off-by: Thomas E. Dickey <dickey@invisible-island.net>
13
14Upstream-Status: Backport [https://ncurses.scripts.mit.edu/?p=ncurses.git;a=commitdiff;h=135d37072755704b8d018e5de74e62ff3f28c930]
15
16Signed-off-by: Soumya Sambu <soumya.sambu@windriver.com>
17---
18 INSTALL | 8 +-
19 include/curses.events | 2 +-
20 ncurses/tinfo/lib_tparm.c | 2 +
21 progs/reset_cmd.c | 281 +++++++++++++++++++++-----------------
22 progs/tabs.c | 10 +-
23 progs/tic.c | 4 +
24 6 files changed, 176 insertions(+), 131 deletions(-)
25
26diff --git a/INSTALL b/INSTALL
27index d9c1dd12..d0a39af0 100644
28--- a/INSTALL
29+++ b/INSTALL
30@@ -47,7 +47,7 @@ If you are converting from BSD curses and do not have root access, be sure
31 to read the BSD CONVERSION NOTES section below.
32
33 If you are trying to build applications using gpm with ncurses,
34-read the USING NCURSES WITH GPM section below.
35+read the USING GPM section below.
36
37 If you are cross-compiling, see the note below on BUILDING WITH A CROSS-COMPILER.
38
39@@ -79,7 +79,7 @@ INSTALLATION PROCEDURE:
40 The --prefix option to configure changes the root directory for installing
41 ncurses. The default is normally in subdirectories of /usr/local, except
42 for systems where ncurses is normally installed as a system library (see
43- "IF YOU ARE A SYSTEM INTEGRATOR"). Use --prefix=/usr to replace your
44+ "FOR SYSTEM INTEGRATORS"). Use --prefix=/usr to replace your
45 default curses distribution.
46
47 The package gets installed beneath the --prefix directory as follows:
48@@ -176,7 +176,7 @@ INSTALLATION PROCEDURE:
49 You can make curses and terminfo fall back to an existing file of termcap
50 definitions by configuring with --enable-termcap. If you do this, the
51 library will search /etc/termcap before the terminfo database, and will
52- also interpret the contents of the TERM environment variable. See the
53+ also interpret the contents of the $TERM environment variable. See the
54 section BSD CONVERSION NOTES below.
55
56 3. Type `make'. Ignore any warnings, no error messages should be produced.
57@@ -1231,7 +1231,7 @@ CONFIGURE OPTIONS:
58 Specify a search-list of terminfo directories which will be compiled
59 into the ncurses library (default: DATADIR/terminfo)
60
61- This is a colon-separated list, like the TERMINFO_DIRS environment
62+ This is a colon-separated list, like the $TERMINFO_DIRS environment
63 variable.
64
65 --with-termlib[=XXX]
66diff --git a/include/curses.events b/include/curses.events
67index 25a2583f..468bde18 100644
68--- a/include/curses.events
69+++ b/include/curses.events
70@@ -50,6 +50,6 @@ typedef struct
71 extern NCURSES_EXPORT(int) wgetch_events (WINDOW *, _nc_eventlist *) GCC_DEPRECATED(experimental option); /* experimental */
72 extern NCURSES_EXPORT(int) wgetnstr_events (WINDOW *,char *,int,_nc_eventlist *) GCC_DEPRECATED(experimental option); /* experimental */
73
74-#define KEY_EVENT 0633 /* We were interrupted by an event */
75+#define KEY_EVENT 0634 /* We were interrupted by an event */
76
77 #endif /* NCURSES_WGETCH_EVENTS */
78diff --git a/ncurses/tinfo/lib_tparm.c b/ncurses/tinfo/lib_tparm.c
79index a10a3877..cd972c0f 100644
80--- a/ncurses/tinfo/lib_tparm.c
81+++ b/ncurses/tinfo/lib_tparm.c
82@@ -1113,8 +1113,10 @@ check_string_caps(TPARM_DATA *data, const char *string)
83 want_type = 2; /* function key #1, transmit string #2 */
84 else if (CHECK_CAP(plab_norm))
85 want_type = 2; /* label #1, show string #2 */
86+#ifdef pkey_plab
87 else if (CHECK_CAP(pkey_plab))
88 want_type = 6; /* function key #1, type string #2, show string #3 */
89+#endif
90 #if NCURSES_XNAMES
91 else {
92 char *check;
93diff --git a/progs/reset_cmd.c b/progs/reset_cmd.c
94index eff3af72..aec4b077 100644
95--- a/progs/reset_cmd.c
96+++ b/progs/reset_cmd.c
97@@ -75,6 +75,9 @@ MODULE_ID("$Id: reset_cmd.c,v 1.28 2021/10/02 18:08:44 tom Exp $")
98 # endif
99 #endif
100
101+#define set_flags(target, mask) target |= mask
102+#define clear_flags(target, mask) target &= ~((unsigned)(mask))
103+
104 static FILE *my_file;
105
106 static bool use_reset = FALSE; /* invoked as reset */
107@@ -188,6 +191,79 @@ out_char(int c)
108 #define reset_char(item, value) \
109 tty_settings->c_cc[item] = CHK(tty_settings->c_cc[item], value)
110
111+/*
112+ * Simplify ifdefs
113+ */
114+#ifndef BSDLY
115+#define BSDLY 0
116+#endif
117+#ifndef CRDLY
118+#define CRDLY 0
119+#endif
120+#ifndef ECHOCTL
121+#define ECHOCTL 0
122+#endif
123+#ifndef ECHOKE
124+#define ECHOKE 0
125+#endif
126+#ifndef ECHOPRT
127+#define ECHOPRT 0
128+#endif
129+#ifndef FFDLY
130+#define FFDLY 0
131+#endif
132+#ifndef IMAXBEL
133+#define IMAXBEL 0
134+#endif
135+#ifndef IUCLC
136+#define IUCLC 0
137+#endif
138+#ifndef IXANY
139+#define IXANY 0
140+#endif
141+#ifndef NLDLY
142+#define NLDLY 0
143+#endif
144+#ifndef OCRNL
145+#define OCRNL 0
146+#endif
147+#ifndef OFDEL
148+#define OFDEL 0
149+#endif
150+#ifndef OFILL
151+#define OFILL 0
152+#endif
153+#ifndef OLCUC
154+#define OLCUC 0
155+#endif
156+#ifndef ONLCR
157+#define ONLCR 0
158+#endif
159+#ifndef ONLRET
160+#define ONLRET 0
161+#endif
162+#ifndef ONOCR
163+#define ONOCR 0
164+#endif
165+#ifndef OXTABS
166+#define OXTABS 0
167+#endif
168+#ifndef TAB3
169+#define TAB3 0
170+#endif
171+#ifndef TABDLY
172+#define TABDLY 0
173+#endif
174+#ifndef TOSTOP
175+#define TOSTOP 0
176+#endif
177+#ifndef VTDLY
178+#define VTDLY 0
179+#endif
180+#ifndef XCASE
181+#define XCASE 0
182+#endif
183+
184 /*
185 * Reset the terminal mode bits to a sensible state. Very useful after
186 * a child program dies in raw mode.
187@@ -195,6 +271,10 @@ out_char(int c)
188 void
189 reset_tty_settings(int fd, TTY * tty_settings, int noset)
190 {
191+ unsigned mask;
192+#ifdef TIOCMGET
193+ int modem_bits;
194+#endif
195 GET_TTY(fd, tty_settings);
196
197 #ifdef TERMIOS
198@@ -228,106 +308,65 @@ reset_tty_settings(int fd, TTY * tty_settings, int noset)
199 reset_char(VWERASE, CWERASE);
200 #endif
201
202- tty_settings->c_iflag &= ~((unsigned) (IGNBRK
203- | PARMRK
204- | INPCK
205- | ISTRIP
206- | INLCR
207- | IGNCR
208-#ifdef IUCLC
209- | IUCLC
210-#endif
211-#ifdef IXANY
212- | IXANY
213-#endif
214- | IXOFF));
215-
216- tty_settings->c_iflag |= (BRKINT
217- | IGNPAR
218- | ICRNL
219- | IXON
220-#ifdef IMAXBEL
221- | IMAXBEL
222-#endif
223- );
224-
225- tty_settings->c_oflag &= ~((unsigned) (0
226-#ifdef OLCUC
227- | OLCUC
228-#endif
229-#ifdef OCRNL
230- | OCRNL
231-#endif
232-#ifdef ONOCR
233- | ONOCR
234-#endif
235-#ifdef ONLRET
236- | ONLRET
237-#endif
238-#ifdef OFILL
239- | OFILL
240-#endif
241-#ifdef OFDEL
242- | OFDEL
243-#endif
244-#ifdef NLDLY
245- | NLDLY
246-#endif
247-#ifdef CRDLY
248- | CRDLY
249-#endif
250-#ifdef TABDLY
251- | TABDLY
252-#endif
253-#ifdef BSDLY
254- | BSDLY
255-#endif
256-#ifdef VTDLY
257- | VTDLY
258-#endif
259-#ifdef FFDLY
260- | FFDLY
261-#endif
262- ));
263-
264- tty_settings->c_oflag |= (OPOST
265-#ifdef ONLCR
266- | ONLCR
267-#endif
268- );
269-
270- tty_settings->c_cflag &= ~((unsigned) (CSIZE
271- | CSTOPB
272- | PARENB
273- | PARODD
274- | CLOCAL));
275- tty_settings->c_cflag |= (CS8 | CREAD);
276- tty_settings->c_lflag &= ~((unsigned) (ECHONL
277- | NOFLSH
278-#ifdef TOSTOP
279- | TOSTOP
280-#endif
281-#ifdef ECHOPTR
282- | ECHOPRT
283-#endif
284-#ifdef XCASE
285- | XCASE
286-#endif
287- ));
288-
289- tty_settings->c_lflag |= (ISIG
290- | ICANON
291- | ECHO
292- | ECHOE
293- | ECHOK
294-#ifdef ECHOCTL
295- | ECHOCTL
296-#endif
297-#ifdef ECHOKE
298- | ECHOKE
299-#endif
300- );
301-#endif
302+ clear_flags(tty_settings->c_iflag, (IGNBRK
303+ | PARMRK
304+ | INPCK
305+ | ISTRIP
306+ | INLCR
307+ | IGNCR
308+ | IUCLC
309+ | IXANY
310+ | IXOFF));
311+
312+ set_flags(tty_settings->c_iflag, (BRKINT
313+ | IGNPAR
314+ | ICRNL
315+ | IXON
316+ | IMAXBEL));
317+
318+ clear_flags(tty_settings->c_oflag, (0
319+ | OLCUC
320+ | OCRNL
321+ | ONOCR
322+ | ONLRET
323+ | OFILL
324+ | OFDEL
325+ | NLDLY
326+ | CRDLY
327+ | TABDLY
328+ | BSDLY
329+ | VTDLY
330+ | FFDLY));
331+
332+ set_flags(tty_settings->c_oflag, (OPOST
333+ | ONLCR));
334+
335+ mask = (CSIZE | CSTOPB | PARENB | PARODD);
336+#ifdef TIOCMGET
337+ /* leave clocal alone if this appears to use a modem */
338+ if (ioctl(fd, TIOCMGET, &modem_bits) == -1)
339+ mask |= CLOCAL;
340+#else
341+ /* cannot check - use the behavior from tset */
342+ mask |= CLOCAL;
343+#endif
344+ clear_flags(tty_settings->c_cflag, mask);
345+
346+ set_flags(tty_settings->c_cflag, (CS8 | CREAD));
347+ clear_flags(tty_settings->c_lflag, (ECHONL
348+ | NOFLSH
349+ | TOSTOP
350+ | ECHOPRT
351+ | XCASE));
352+
353+ set_flags(tty_settings->c_lflag, (ISIG
354+ | ICANON
355+ | ECHO
356+ | ECHOE
357+ | ECHOK
358+ | ECHOCTL
359+ | ECHOKE));
360+#endif /* TERMIOS */
361
362 if (!noset) {
363 SET_TTY(fd, tty_settings);
364@@ -402,29 +441,23 @@ set_conversions(TTY * tty_settings)
365 #if defined(EXP_WIN32_DRIVER)
366 /* FIXME */
367 #else
368-#ifdef ONLCR
369- tty_settings->c_oflag |= ONLCR;
370-#endif
371- tty_settings->c_iflag |= ICRNL;
372- tty_settings->c_lflag |= ECHO;
373-#ifdef OXTABS
374- tty_settings->c_oflag |= OXTABS;
375-#endif /* OXTABS */
376+ set_flags(tty_settings->c_oflag, ONLCR);
377+ set_flags(tty_settings->c_iflag, ICRNL);
378+ set_flags(tty_settings->c_lflag, ECHO);
379+ set_flags(tty_settings->c_oflag, OXTABS);
380
381 /* test used to be tgetflag("NL") */
382 if (VALID_STRING(newline) && newline[0] == '\n' && !newline[1]) {
383 /* Newline, not linefeed. */
384-#ifdef ONLCR
385- tty_settings->c_oflag &= ~((unsigned) ONLCR);
386-#endif
387- tty_settings->c_iflag &= ~((unsigned) ICRNL);
388+ clear_flags(tty_settings->c_oflag, ONLCR);
389+ clear_flags(tty_settings->c_iflag, ICRNL);
390 }
391-#ifdef OXTABS
392+#if OXTABS
393 /* test used to be tgetflag("pt") */
394 if (VALID_STRING(set_tab) && VALID_STRING(clear_all_tabs))
395- tty_settings->c_oflag &= ~OXTABS;
396+ clear_flags(tty_settings->c_oflag, OXTABS);
397 #endif /* OXTABS */
398- tty_settings->c_lflag |= (ECHOE | ECHOK);
399+ set_flags(tty_settings->c_lflag, (ECHOE | ECHOK));
400 #endif
401 }
402
403@@ -490,7 +523,7 @@ send_init_strings(int fd GCC_UNUSED, TTY * old_settings)
404 bool need_flush = FALSE;
405
406 (void) old_settings;
407-#ifdef TAB3
408+#if TAB3
409 if (old_settings != 0 &&
410 old_settings->c_oflag & (TAB3 | ONLCR | OCRNL | ONLRET)) {
411 old_settings->c_oflag &= (TAB3 | ONLCR | OCRNL | ONLRET);
412@@ -512,22 +545,22 @@ send_init_strings(int fd GCC_UNUSED, TTY * old_settings)
413
414 if (VALID_STRING(clear_margins)) {
415 need_flush |= sent_string(clear_margins);
416- } else
417+ }
418 #if defined(set_lr_margin)
419- if (VALID_STRING(set_lr_margin)) {
420+ else if (VALID_STRING(set_lr_margin)) {
421 need_flush |= sent_string(TIPARM_2(set_lr_margin, 0, columns - 1));
422- } else
423+ }
424 #endif
425 #if defined(set_left_margin_parm) && defined(set_right_margin_parm)
426- if (VALID_STRING(set_left_margin_parm)
427- && VALID_STRING(set_right_margin_parm)) {
428+ else if (VALID_STRING(set_left_margin_parm)
429+ && VALID_STRING(set_right_margin_parm)) {
430 need_flush |= sent_string(TIPARM_1(set_left_margin_parm, 0));
431 need_flush |= sent_string(TIPARM_1(set_right_margin_parm,
432 columns - 1));
433- } else
434+ }
435 #endif
436- if (VALID_STRING(set_left_margin)
437- && VALID_STRING(set_right_margin)) {
438+ else if (VALID_STRING(set_left_margin)
439+ && VALID_STRING(set_right_margin)) {
440 need_flush |= to_left_margin();
441 need_flush |= sent_string(set_left_margin);
442 if (VALID_STRING(parm_right_cursor)) {
443diff --git a/progs/tabs.c b/progs/tabs.c
444index 7378d116..d904330b 100644
445--- a/progs/tabs.c
446+++ b/progs/tabs.c
447@@ -370,7 +370,9 @@ do_set_margin(int margin, bool no_op)
448 }
449 tputs(set_left_margin, 1, putch);
450 }
451- } else if (VALID_STRING(set_left_margin_parm)) {
452+ }
453+#if defined(set_left_margin_parm) && defined(set_right_margin_parm)
454+ else if (VALID_STRING(set_left_margin_parm)) {
455 result = TRUE;
456 if (!no_op) {
457 if (VALID_STRING(set_right_margin_parm)) {
458@@ -379,12 +381,16 @@ do_set_margin(int margin, bool no_op)
459 tputs(TIPARM_2(set_left_margin_parm, margin, max_cols), 1, putch);
460 }
461 }
462- } else if (VALID_STRING(set_lr_margin)) {
463+ }
464+#endif
465+#if defined(set_lr_margin)
466+ else if (VALID_STRING(set_lr_margin)) {
467 result = TRUE;
468 if (!no_op) {
469 tputs(TIPARM_2(set_lr_margin, margin, max_cols), 1, putch);
470 }
471 }
472+#endif
473 return result;
474 }
475
476diff --git a/progs/tic.c b/progs/tic.c
477index 888927e2..78b568fa 100644
478--- a/progs/tic.c
479+++ b/progs/tic.c
480@@ -3142,6 +3142,7 @@ guess_ANSI_VTxx(TERMTYPE2 *tp)
481 * In particular, any ECMA-48 terminal should support these, though the details
482 * for u9 are implementation dependent.
483 */
484+#if defined(user6) && defined(user7) && defined(user8) && defined(user9)
485 static void
486 check_user_6789(TERMTYPE2 *tp)
487 {
488@@ -3177,6 +3178,9 @@ check_user_6789(TERMTYPE2 *tp)
489 break;
490 }
491 }
492+#else
493+#define check_user_6789(tp) /* nothing */
494+#endif
495
496 /* other sanity-checks (things that we don't want in the normal
497 * logic that reads a terminfo entry)
498--
4992.40.0
diff --git a/meta/recipes-core/ncurses/files/0001-tic-hang.patch b/meta/recipes-core/ncurses/files/0001-tic-hang.patch
index f98a943e5c..8cb92a3939 100644
--- a/meta/recipes-core/ncurses/files/0001-tic-hang.patch
+++ b/meta/recipes-core/ncurses/files/0001-tic-hang.patch
@@ -1,7 +1,7 @@
1From 168ba7a681be73ac024438e33e14fde1d5aea97d Mon Sep 17 00:00:00 2001 1From a51a53f0eecfd4d083aba8dfcd47c65e93978ff1 Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com> 2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Fri, 30 Mar 2018 10:02:24 +0800 3Date: Fri, 30 Mar 2018 10:02:24 +0800
4Subject: [PATCH 1/2] tic hang 4Subject: [PATCH] tic hang
5 5
6Upstream-Status: Inappropriate [configuration] 6Upstream-Status: Inappropriate [configuration]
7 7
@@ -17,10 +17,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
17 1 file changed, 5 insertions(+), 6 deletions(-) 17 1 file changed, 5 insertions(+), 6 deletions(-)
18 18
19diff --git a/misc/terminfo.src b/misc/terminfo.src 19diff --git a/misc/terminfo.src b/misc/terminfo.src
20index 84f4810..6b385ec 100644 20index 5d575b8e..f9cc6880 100644
21--- a/misc/terminfo.src 21--- a/misc/terminfo.src
22+++ b/misc/terminfo.src 22+++ b/misc/terminfo.src
23@@ -5562,12 +5562,11 @@ konsole-xf3x|KDE console window with keyboard for XFree86 3.x xterm, 23@@ -6518,12 +6518,11 @@ konsole-xf3x|KDE console window with keyboard for XFree86 3.x xterm,
24 # The value for kbs (see konsole-vt100) reflects local customization rather 24 # The value for kbs (see konsole-vt100) reflects local customization rather
25 # than the settings used for XFree86 xterm. 25 # than the settings used for XFree86 xterm.
26 konsole-xf4x|KDE console window with keyboard for XFree86 4.x xterm, 26 konsole-xf4x|KDE console window with keyboard for XFree86 4.x xterm,
@@ -38,6 +38,3 @@ index 84f4810..6b385ec 100644
38 38
39 # Obsolete: vt100.keymap 39 # Obsolete: vt100.keymap
40 # KDE's "vt100" keyboard has no relationship to any terminal that DEC made, but 40 # KDE's "vt100" keyboard has no relationship to any terminal that DEC made, but
41--
421.8.3.1
43
diff --git a/meta/recipes-core/ncurses/files/0002-configure-reproducible.patch b/meta/recipes-core/ncurses/files/0002-configure-reproducible.patch
index 66f26c06ab..11ca66c8e8 100644
--- a/meta/recipes-core/ncurses/files/0002-configure-reproducible.patch
+++ b/meta/recipes-core/ncurses/files/0002-configure-reproducible.patch
@@ -1,4 +1,4 @@
1From ec87e53066a9942e9aaba817d71268342f5e83b9 Mon Sep 17 00:00:00 2001 1From 63cf58044f4ab3297c5a2d0e132e87ebfa80c753 Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com> 2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Wed, 16 Aug 2017 14:45:27 +0800 3Date: Wed, 16 Aug 2017 14:45:27 +0800
4Subject: [PATCH] configure: reproducible 4Subject: [PATCH] configure: reproducible
@@ -13,16 +13,15 @@ Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
13Rebase to 6.1 13Rebase to 6.1
14 14
15Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 15Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
16
17--- 16---
18 configure | 2 +- 17 configure | 2 +-
19 1 file changed, 1 insertion(+), 1 deletion(-) 18 1 file changed, 1 insertion(+), 1 deletion(-)
20 19
21diff --git a/configure b/configure 20diff --git a/configure b/configure
22index 421cf859..a1b7840d 100755 21index 488d93fc..005d44e2 100755
23--- a/configure 22--- a/configure
24+++ b/configure 23+++ b/configure
25@@ -5072,7 +5072,7 @@ else 24@@ -5129,7 +5129,7 @@ else
26 ;; 25 ;;
27 (*) 26 (*)
28 cf_cv_ar_flags=unknown 27 cf_cv_ar_flags=unknown
diff --git a/meta/recipes-core/ncurses/files/0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch b/meta/recipes-core/ncurses/files/0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch
index a15694d4d4..d89399bbe5 100644
--- a/meta/recipes-core/ncurses/files/0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch
+++ b/meta/recipes-core/ncurses/files/0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch
@@ -1,4 +1,4 @@
1From 10cd0c12a6e14fb4f0498c299c1dd32720b710da Mon Sep 17 00:00:00 2001 1From 5962a5ee2885f67a396f7e8955ac1bbd7f15d4aa Mon Sep 17 00:00:00 2001
2From: Nathan Rossi <nathan@nathanrossi.com> 2From: Nathan Rossi <nathan@nathanrossi.com>
3Date: Mon, 14 Dec 2020 13:39:02 +1000 3Date: Mon, 14 Dec 2020 13:39:02 +1000
4Subject: [PATCH] gen-pkgconfig.in: Do not include LDFLAGS in generated pc 4Subject: [PATCH] gen-pkgconfig.in: Do not include LDFLAGS in generated pc
@@ -10,13 +10,12 @@ includes build host specific paths and options (e.g. uninative and
10 10
11Upstream-Status: Inappropriate [OE Specific] 11Upstream-Status: Inappropriate [OE Specific]
12Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> 12Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
13
14--- 13---
15 misc/gen-pkgconfig.in | 2 +- 14 misc/gen-pkgconfig.in | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-) 15 1 file changed, 1 insertion(+), 1 deletion(-)
17 16
18diff --git a/misc/gen-pkgconfig.in b/misc/gen-pkgconfig.in 17diff --git a/misc/gen-pkgconfig.in b/misc/gen-pkgconfig.in
19index a45dd54f..85273054 100644 18index 89a5cd4a..07d94d17 100644
20--- a/misc/gen-pkgconfig.in 19--- a/misc/gen-pkgconfig.in
21+++ b/misc/gen-pkgconfig.in 20+++ b/misc/gen-pkgconfig.in
22@@ -83,7 +83,7 @@ if [ "$includedir" != "/usr/include" ]; then 21@@ -83,7 +83,7 @@ if [ "$includedir" != "/usr/include" ]; then
diff --git a/meta/recipes-core/ncurses/files/exit_prototype.patch b/meta/recipes-core/ncurses/files/exit_prototype.patch
index fd961512e0..299852d2c0 100644
--- a/meta/recipes-core/ncurses/files/exit_prototype.patch
+++ b/meta/recipes-core/ncurses/files/exit_prototype.patch
@@ -1,28 +1,27 @@
1From 4a769a441d7e57a23017c3037cde3e53fb9f35fe Mon Sep 17 00:00:00 2001 1From af798dceafec8a9ea3f83fc250d784511ca0a29c Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 30 Aug 2022 15:58:32 -0700 3Date: Tue, 30 Aug 2022 15:58:32 -0700
4Subject: [PATCH] Add needed headers for including mbstate_t and exit() 4Subject: [PATCH] Add needed headers for including mbstate_t and exit()
5 5
6Upstream-Status: Inappropriate [Reconfigure will solve it] 6Upstream-Status: Inappropriate [Reconfigure will solve it]
7Signed-off-by: Khem Raj <raj.khem@gmail.com> 7Signed-off-by: Khem Raj <raj.khem@gmail.com>
8
9--- 8---
10 configure | 2 ++ 9 configure | 2 ++
11 1 file changed, 2 insertions(+) 10 1 file changed, 2 insertions(+)
12 11
13diff --git a/configure b/configure 12diff --git a/configure b/configure
14index f377f551..163f8899 100755 13index 005d44e2..72fa6c23 100755
15--- a/configure 14--- a/configure
16+++ b/configure 15+++ b/configure
17@@ -3423,6 +3423,7 @@ rm -f "conftest.$ac_objext" "conftest.$ac_ext" 16@@ -3462,6 +3462,7 @@ rm -f "conftest.$ac_objext" "conftest.$ac_ext"
18 cat >"conftest.$ac_ext" <<_ACEOF 17 cat >"conftest.$ac_ext" <<_ACEOF
19 #line 3424 "configure" 18 #line 3463 "configure"
20 #include "confdefs.h" 19 #include "confdefs.h"
21+#include <stdlib.h> 20+#include <stdlib.h>
22 $ac_declaration 21 $ac_declaration
23 int 22 int
24 main (void) 23 main (void)
25@@ -13111,6 +13112,7 @@ cat >"conftest.$ac_ext" <<_ACEOF 24@@ -13533,6 +13534,7 @@ cat >"conftest.$ac_ext" <<_ACEOF
26 #include <stdlib.h> 25 #include <stdlib.h>
27 #include <stdarg.h> 26 #include <stdarg.h>
28 #include <stdio.h> 27 #include <stdio.h>
diff --git a/meta/recipes-core/ncurses/ncurses.inc b/meta/recipes-core/ncurses/ncurses.inc
index 761b6a3d31..f5e37b94da 100644
--- a/meta/recipes-core/ncurses/ncurses.inc
+++ b/meta/recipes-core/ncurses/ncurses.inc
@@ -2,7 +2,7 @@ SUMMARY = "The New Curses library"
2DESCRIPTION = "SVr4 and XSI-Curses compatible curses library and terminfo tools including tic, infocmp, captoinfo. Supports color, multiple highlights, forms-drawing characters, and automatic recognition of keypad and function-key sequences. Extensions include resizable windows and mouse support on both xterm and Linux console using the gpm library." 2DESCRIPTION = "SVr4 and XSI-Curses compatible curses library and terminfo tools including tic, infocmp, captoinfo. Supports color, multiple highlights, forms-drawing characters, and automatic recognition of keypad and function-key sequences. Extensions include resizable windows and mouse support on both xterm and Linux console using the gpm library."
3HOMEPAGE = "http://www.gnu.org/software/ncurses/ncurses.html" 3HOMEPAGE = "http://www.gnu.org/software/ncurses/ncurses.html"
4LICENSE = "MIT" 4LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://COPYING;md5=c5a4600fdef86384c41ca33ecc70a4b8;endline=27" 5LIC_FILES_CHKSUM = "file://COPYING;md5=6f291ee54551d9d8d992ecd623fe4bc7;endline=27"
6SECTION = "libs" 6SECTION = "libs"
7DEPENDS = "ncurses-native" 7DEPENDS = "ncurses-native"
8DEPENDS:class-native = "" 8DEPENDS:class-native = ""
@@ -13,15 +13,13 @@ BINCONFIG = "${bindir}/ncurses5-config ${bindir}/ncursesw5-config \
13inherit autotools binconfig-disabled multilib_header pkgconfig 13inherit autotools binconfig-disabled multilib_header pkgconfig
14 14
15# Upstream has useful patches at times at ftp://invisible-island.net/ncurses/ 15# Upstream has useful patches at times at ftp://invisible-island.net/ncurses/
16SRC_URI = "git://github.com/mirror/ncurses.git;protocol=https;branch=master" 16SRC_URI = "git://github.com/ThomasDickey/ncurses-snapshots.git;protocol=https;branch=master"
17 17
18EXTRA_AUTORECONF = "-I m4" 18EXTRA_AUTORECONF = "-I m4"
19 19
20CACHED_CONFIGUREVARS = "cf_cv_func_nanosleep=yes" 20CACHED_CONFIGUREVARS = "cf_cv_func_nanosleep=yes"
21CACHED_CONFIGUREVARS:append:linux = " cf_cv_working_poll=yes" 21CACHED_CONFIGUREVARS:append:linux = " cf_cv_working_poll=yes"
22 22
23EXTRASITECONFIG = "CFLAGS='${CFLAGS} -I${SYSROOT_DESTDIR}${includedir}'"
24
25# Whether to enable separate widec libraries; must be 'true' or 'false' 23# Whether to enable separate widec libraries; must be 'true' or 'false'
26# 24#
27# TODO: remove this variable when widec is supported in every setup? 25# TODO: remove this variable when widec is supported in every setup?
diff --git a/meta/recipes-core/ncurses/ncurses_6.4.bb b/meta/recipes-core/ncurses/ncurses_6.5.bb
index 2c621525f9..2e3ee337ea 100644
--- a/meta/recipes-core/ncurses/ncurses_6.4.bb
+++ b/meta/recipes-core/ncurses/ncurses_6.5.bb
@@ -4,14 +4,12 @@ SRC_URI += "file://0001-tic-hang.patch \
4 file://0002-configure-reproducible.patch \ 4 file://0002-configure-reproducible.patch \
5 file://0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch \ 5 file://0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch \
6 file://exit_prototype.patch \ 6 file://exit_prototype.patch \
7 file://0001-Fix-CVE-2023-29491.patch \
8 file://0001-Updating-reset-code-ncurses-6.4-patch-20231104.patch \
9 " 7 "
10# commit id corresponds to the revision in package version 8# commit id corresponds to the revision in package version
11SRCREV = "79b9071f2be20a24c7be031655a5638f6032f29f" 9SRCREV = "1c55d64d9d3e00399a21f04e9cac1e472ab5f70a"
12S = "${WORKDIR}/git" 10S = "${WORKDIR}/git"
13EXTRA_OECONF += "--with-abi-version=5" 11EXTRA_OECONF += "--with-abi-version=5"
14UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)$" 12UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+_\d+)$"
15 13
16# This is needed when using patchlevel versions like 6.1+20181013 14# This is needed when using patchlevel versions like 6.1+20181013
17#CVE_VERSION = "${@d.getVar("PV").split('+')[0]}.${@d.getVar("PV").split('+')[1]}" 15#CVE_VERSION = "${@d.getVar("PV").split('+')[0]}.${@d.getVar("PV").split('+')[1]}"
diff --git a/meta/recipes-core/ncurses/site_config/headers b/meta/recipes-core/ncurses/site_config/headers
deleted file mode 100644
index 087b7bfd5e..0000000000
--- a/meta/recipes-core/ncurses/site_config/headers
+++ /dev/null
@@ -1,5 +0,0 @@
1curses.h
2ncurses/curses.h
3ncurses.h
4ncurses/termcap.h
5
diff --git a/meta/recipes-core/newlib/libgloss_git.bb b/meta/recipes-core/newlib/libgloss_git.bb
index 7e34e33c7a..3c97a7f296 100644
--- a/meta/recipes-core/newlib/libgloss_git.bb
+++ b/meta/recipes-core/newlib/libgloss_git.bb
@@ -6,7 +6,6 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/libgloss:"
6 6
7SRC_URI:append = " file://libgloss-build-without-nostdinc.patch" 7SRC_URI:append = " file://libgloss-build-without-nostdinc.patch"
8SRC_URI:append:powerpc = " file://fix-rs6000-crt0.patch" 8SRC_URI:append:powerpc = " file://fix-rs6000-crt0.patch"
9SRC_URI:append:powerpc = " file://fix-rs6000-cflags.patch"
10 9
11do_configure() { 10do_configure() {
12 ${S}/libgloss/configure ${EXTRA_OECONF} 11 ${S}/libgloss/configure ${EXTRA_OECONF}
diff --git a/meta/recipes-core/newlib/newlib.inc b/meta/recipes-core/newlib/newlib.inc
index 6113f5e831..34b0f3f747 100644
--- a/meta/recipes-core/newlib/newlib.inc
+++ b/meta/recipes-core/newlib/newlib.inc
@@ -28,6 +28,14 @@ B = "${WORKDIR}/build"
28## disable stdlib 28## disable stdlib
29TARGET_CC_ARCH:append = " -nostdlib" 29TARGET_CC_ARCH:append = " -nostdlib"
30 30
31# Both the C library and the application should share the same mcmodel.
32# Use the medium-any code model for the RISC-V 64 bit implementation,
33# since medlow can only access addresses below 0x80000000 and RAM
34# starts at 0x80000000 on RISC-V 64
35# Keep RISC-V 32 using -mcmodel=medlow (symbols lie between -2GB:2GB)
36TARGET_CFLAGS:append:qemuriscv64 = " -mcmodel=medany"
37
38
31EXTRA_OECONF = " \ 39EXTRA_OECONF = " \
32 --build=${BUILD_SYS} \ 40 --build=${BUILD_SYS} \
33 --target=${TARGET_SYS} \ 41 --target=${TARGET_SYS} \
diff --git a/meta/recipes-core/ovmf/ovmf_git.bb b/meta/recipes-core/ovmf/ovmf_git.bb
index 3dc031d3b6..35ca8d1834 100644
--- a/meta/recipes-core/ovmf/ovmf_git.bb
+++ b/meta/recipes-core/ovmf/ovmf_git.bb
@@ -26,10 +26,24 @@ SRC_URI = "gitsm://github.com/tianocore/edk2.git;branch=master;protocol=https \
26 file://0004-reproducible.patch \ 26 file://0004-reproducible.patch \
27 " 27 "
28 28
29PV = "edk2-stable202308" 29PV = "edk2-stable202402"
30SRCREV = "819cfc6b42a68790a23509e4fcc58ceb70e1965e" 30SRCREV = "edc6681206c1a8791981a2f911d2fb8b3d2f5768"
31UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>edk2-stable.*)" 31UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>edk2-stable.*)"
32 32
33CVE_PRODUCT = "edk2"
34CVE_VERSION = "${@d.getVar('PV').split('stable')[1]}"
35
36CVE_STATUS[CVE-2014-8271] = "fixed-version: Fixed in svn_16280, which is an unusual versioning breaking version comparison."
37CVE_STATUS[CVE-2014-4859] = "fixed-version: The CPE in the NVD database doesn't reflect correctly the vulnerable versions."
38CVE_STATUS[CVE-2014-4860] = "fixed-version: The CPE in the NVD database doesn't reflect correctly the vulnerable versions."
39CVE_STATUS[CVE-2019-14553] = "fixed-version: The CPE in the NVD database doesn't reflect correctly the vulnerable versions."
40CVE_STATUS[CVE-2019-14559] = "fixed-version: The CPE in the NVD database doesn't reflect correctly the vulnerable versions."
41CVE_STATUS[CVE-2019-14562] = "fixed-version: The CPE in the NVD database doesn't reflect correctly the vulnerable versions."
42CVE_STATUS[CVE-2019-14563] = "fixed-version: The CPE in the NVD database doesn't reflect correctly the vulnerable versions."
43CVE_STATUS[CVE-2019-14575] = "fixed-version: The CPE in the NVD database doesn't reflect correctly the vulnerable versions."
44CVE_STATUS[CVE-2019-14586] = "fixed-version: The CPE in the NVD database doesn't reflect correctly the vulnerable versions."
45CVE_STATUS[CVE-2019-14587] = "fixed-version: The CPE in the NVD database doesn't reflect correctly the vulnerable versions."
46
33inherit deploy 47inherit deploy
34 48
35PARALLEL_MAKE = "" 49PARALLEL_MAKE = ""
diff --git a/meta/recipes-core/packagegroups/packagegroup-core-boot.bb b/meta/recipes-core/packagegroups/packagegroup-core-boot.bb
index d96d2f5fff..fecc3334ea 100644
--- a/meta/recipes-core/packagegroups/packagegroup-core-boot.bb
+++ b/meta/recipes-core/packagegroups/packagegroup-core-boot.bb
@@ -37,4 +37,6 @@ RDEPENDS:${PN} = "\
37RRECOMMENDS:${PN} = "\ 37RRECOMMENDS:${PN} = "\
38 ${VIRTUAL-RUNTIME_base-utils-syslog} \ 38 ${VIRTUAL-RUNTIME_base-utils-syslog} \
39 ${MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS} \ 39 ${MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS} \
40 ${@bb.utils.contains("DISTRO_FEATURES", "sysvinit", "init-ifupdown", "", d)}" 40 ${@bb.utils.contains("DISTRO_FEATURES", "sysvinit", "init-ifupdown", "", d)} \
41 ${@bb.utils.contains("DISTRO_FEATURES", "sysvinit pni-names", "ifupdown", "", d)} \
42 "
diff --git a/meta/recipes-core/psplash/psplash_git.bb b/meta/recipes-core/psplash/psplash_git.bb
index 40937098e6..30cf61a2cb 100644
--- a/meta/recipes-core/psplash/psplash_git.bb
+++ b/meta/recipes-core/psplash/psplash_git.bb
@@ -80,7 +80,7 @@ python do_compile () {
80 import subprocess 80 import subprocess
81 81
82 # Build a separate executable for each splash image 82 # Build a separate executable for each splash image
83 workdir = d.getVar('WORKDIR') 83 workdir = d.getVar('UNPACKDIR')
84 convertscript = "%s/make-image-header.sh" % d.getVar('S') 84 convertscript = "%s/make-image-header.sh" % d.getVar('S')
85 destfile = "%s/psplash-poky-img.h" % d.getVar('B') 85 destfile = "%s/psplash-poky-img.h" % d.getVar('B')
86 localfiles = d.getVar('SPLASH_LOCALPATHS').split() 86 localfiles = d.getVar('SPLASH_LOCALPATHS').split()
@@ -103,7 +103,7 @@ python do_compile () {
103do_install:append() { 103do_install:append() {
104 if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then 104 if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
105 install -d ${D}${sysconfdir}/init.d/ 105 install -d ${D}${sysconfdir}/init.d/
106 install -m 0755 ${WORKDIR}/psplash-init ${D}${sysconfdir}/init.d/psplash.sh 106 install -m 0755 ${UNPACKDIR}/psplash-init ${D}${sysconfdir}/init.d/psplash.sh
107 107
108 # make fifo for psplash 108 # make fifo for psplash
109 install -d ${D}/mnt 109 install -d ${D}/mnt
@@ -112,8 +112,8 @@ do_install:append() {
112 112
113 if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then 113 if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
114 install -d ${D}${systemd_system_unitdir} 114 install -d ${D}${systemd_system_unitdir}
115 install -m 644 ${WORKDIR}/psplash-start.service ${D}/${systemd_system_unitdir} 115 install -m 644 ${UNPACKDIR}/psplash-start.service ${D}/${systemd_system_unitdir}
116 install -m 644 ${WORKDIR}/psplash-systemd.service ${D}/${systemd_system_unitdir} 116 install -m 644 ${UNPACKDIR}/psplash-systemd.service ${D}/${systemd_system_unitdir}
117 fi 117 fi
118 118
119 install -d ${D}${bindir} 119 install -d ${D}${bindir}
diff --git a/meta/recipes-core/readline/readline.inc b/meta/recipes-core/readline/readline.inc
index 4aefc5636d..555bd0876f 100644
--- a/meta/recipes-core/readline/readline.inc
+++ b/meta/recipes-core/readline/readline.inc
@@ -38,7 +38,7 @@ do_install:append () {
38 rmdir ${D}${datadir}/${BPN} || true 38 rmdir ${D}${datadir}/${BPN} || true
39 39
40 install -m 0755 -d ${D}${sysconfdir} 40 install -m 0755 -d ${D}${sysconfdir}
41 install -m 0644 ${WORKDIR}/inputrc ${D}${sysconfdir}/inputrc 41 install -m 0644 ${UNPACKDIR}/inputrc ${D}${sysconfdir}/inputrc
42} 42}
43 43
44BBCLASSEXTEND = "native nativesdk" 44BBCLASSEXTEND = "native nativesdk"
@@ -54,4 +54,4 @@ ALTERNATIVE_LINK_NAME[history.3] = "${mandir}/man3/history.3"
54# OpenSuse injects versions into libreadline leading to conficits between our native one and theirs 54# OpenSuse injects versions into libreadline leading to conficits between our native one and theirs
55# see their spec file for where this is injected. Extra versioning is harmless so we just do the same. 55# see their spec file for where this is injected. Extra versioning is harmless so we just do the same.
56SRC_URI:append:class-native = " file://rl-native.map" 56SRC_URI:append:class-native = " file://rl-native.map"
57LDFLAGS:append:class-native = " -Wl,--version-script=${WORKDIR}/rl-native.map" 57LDFLAGS:append:class-native = " -Wl,--version-script=${UNPACKDIR}/rl-native.map"
diff --git a/meta/recipes-core/readline/readline/readline82-001.patch b/meta/recipes-core/readline/readline/readline82-001.patch
new file mode 100644
index 0000000000..4e9839db9c
--- /dev/null
+++ b/meta/recipes-core/readline/readline/readline82-001.patch
@@ -0,0 +1,45 @@
1 READLINE PATCH REPORT
2 =====================
3
4Readline-Release: 8.2
5Patch-ID: readline82-001
6
7Bug-Reported-by: Kan-Ru Chen <koster@debian.org>
8Bug-Reference-ID:
9Bug-Reference-URL: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1021109
10
11Bug-Description:
12
13Starting a readline application with an invalid locale specification for
14LC_ALL/LANG/LC_CTYPE can cause it crash on the first call to readline.
15
16Patch (apply with `patch -p0'):
17
18Upstream-Status: Submitted [https://ftp.gnu.org/gnu/readline/readline-8.2-patches/]
19Signed-off-by: Khem Raj <raj.khem@gmail.com>
20
21*** ../readline-8.2-patched/nls.c 2022-08-15 09:38:51.000000000 -0400
22--- nls.c 2022-10-05 09:23:22.000000000 -0400
23***************
24*** 142,145 ****
25--- 142,149 ----
26 lspec = "";
27 ret = setlocale (LC_CTYPE, lspec); /* ok, since it does not change locale */
28+ if (ret == 0 || *ret == 0)
29+ ret = setlocale (LC_CTYPE, (char *)NULL);
30+ if (ret == 0 || *ret == 0)
31+ ret = RL_DEFAULT_LOCALE;
32 #else
33 ret = (lspec == 0 || *lspec == 0) ? RL_DEFAULT_LOCALE : lspec;
34
35*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
36--- patchlevel 2014-03-21 08:28:40.000000000 -0400
37***************
38*** 1,3 ****
39 # Do not edit -- exists only for use by patch
40
41! 0
42--- 1,3 ----
43 # Do not edit -- exists only for use by patch
44
45! 1
diff --git a/meta/recipes-core/readline/readline/readline82-002.patch b/meta/recipes-core/readline/readline/readline82-002.patch
new file mode 100644
index 0000000000..5629685dc1
--- /dev/null
+++ b/meta/recipes-core/readline/readline/readline82-002.patch
@@ -0,0 +1,51 @@
1 READLINE PATCH REPORT
2 =====================
3
4Readline-Release: 8.2
5Patch-ID: readline82-002
6
7Bug-Reported-by: srobertson@peratonlabs.com
8Bug-Reference-ID:
9Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2022-09/msg00049.html
10
11Bug-Description:
12
13It's possible for readline to try to zero out a line that's not null-
14terminated, leading to a memory fault.
15
16Patch (apply with `patch -p0'):
17
18Upstream-Status: Submitted [https://ftp.gnu.org/gnu/readline/readline-8.2-patches/]
19Signed-off-by: Khem Raj <raj.khem@gmail.com>
20
21*** ../readline-8.2-patched/display.c 2022-04-05 10:47:31.000000000 -0400
22--- display.c 2022-12-13 13:11:22.000000000 -0500
23***************
24*** 2684,2692 ****
25
26 if (visible_line)
27! {
28! temp = visible_line;
29! while (*temp)
30! *temp++ = '\0';
31! }
32 rl_on_new_line ();
33 forced_display++;
34--- 2735,2740 ----
35
36 if (visible_line)
37! memset (visible_line, 0, line_size);
38!
39 rl_on_new_line ();
40 forced_display++;
41*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
42--- patchlevel 2014-03-21 08:28:40.000000000 -0400
43***************
44*** 1,3 ****
45 # Do not edit -- exists only for use by patch
46
47! 1
48--- 1,3 ----
49 # Do not edit -- exists only for use by patch
50
51! 2
diff --git a/meta/recipes-core/readline/readline/readline82-003.patch b/meta/recipes-core/readline/readline/readline82-003.patch
new file mode 100644
index 0000000000..61570bf4f4
--- /dev/null
+++ b/meta/recipes-core/readline/readline/readline82-003.patch
@@ -0,0 +1,46 @@
1 READLINE PATCH REPORT
2 =====================
3
4Readline-Release: 8.2
5Patch-ID: readline82-003
6
7Bug-Reported-by: Stefan Klinger <readline-gnu.org@stefan-klinger.de>
8Bug-Reference-ID:
9Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2023-08/msg00018.html
10
11Bug-Description:
12
13Patch (apply with `patch -p0'):
14
15The custom color prefix that readline uses to color possible completions
16must have a leading `.'.
17
18Upstream-Status: Submitted [https://ftp.gnu.org/gnu/readline/readline-8.2-patches/]
19Signed-off-by: Khem Raj <raj.khem@gmail.com>
20
21*** ../readline-8.2-patched/colors.c 2021-12-08 11:38:25.000000000 -0500
22--- colors.c 2023-08-28 16:40:04.000000000 -0400
23***************
24*** 74,78 ****
25 static void restore_default_color (void);
26
27! #define RL_COLOR_PREFIX_EXTENSION "readline-colored-completion-prefix"
28
29 COLOR_EXT_TYPE *_rl_color_ext_list = 0;
30--- 74,78 ----
31 static void restore_default_color (void);
32
33! #define RL_COLOR_PREFIX_EXTENSION ".readline-colored-completion-prefix"
34
35 COLOR_EXT_TYPE *_rl_color_ext_list = 0;
36*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
37--- patchlevel 2014-03-21 08:28:40.000000000 -0400
38***************
39*** 1,3 ****
40 # Do not edit -- exists only for use by patch
41
42! 2
43--- 1,3 ----
44 # Do not edit -- exists only for use by patch
45
46! 3
diff --git a/meta/recipes-core/readline/readline/readline82-004.patch b/meta/recipes-core/readline/readline/readline82-004.patch
new file mode 100644
index 0000000000..cedc3d0fe4
--- /dev/null
+++ b/meta/recipes-core/readline/readline/readline82-004.patch
@@ -0,0 +1,68 @@
1 READLINE PATCH REPORT
2 =====================
3
4Readline-Release: 8.2
5Patch-ID: readline82-004
6
7Bug-Reported-by: Henry Bent <henry.r.bent@gmail.com>
8Bug-Reference-ID:
9Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2022-11/msg00044.html
10
11Bug-Description:
12
13Patch (apply with `patch -p0'):
14
15There are systems that supply one of select or pselect, but not both.
16
17Upstream-Status: Submitted [https://ftp.gnu.org/gnu/readline/readline-8.2-patches/]
18Signed-off-by: Khem Raj <raj.khem@gmail.com>
19
20*** ../readline-8.2-patched/input.c 2022-04-08 15:43:24.000000000 -0400
21--- input.c 2022-11-28 09:41:08.000000000 -0500
22***************
23*** 152,156 ****
24--- 152,158 ----
25 int _rl_timeout_init (void);
26 int _rl_timeout_sigalrm_handler (void);
27+ #if defined (RL_TIMEOUT_USE_SELECT)
28 int _rl_timeout_select (int, fd_set *, fd_set *, fd_set *, const struct timeval *, const sigset_t *);
29+ #endif
30
31 static void _rl_timeout_handle (void);
32***************
33*** 249,253 ****
34 int chars_avail, k;
35 char input;
36! #if defined(HAVE_SELECT)
37 fd_set readfds, exceptfds;
38 struct timeval timeout;
39--- 251,255 ----
40 int chars_avail, k;
41 char input;
42! #if defined (HAVE_PSELECT) || defined (HAVE_SELECT)
43 fd_set readfds, exceptfds;
44 struct timeval timeout;
45***************
46*** 806,810 ****
47 unsigned char c;
48 int fd;
49! #if defined (HAVE_PSELECT)
50 sigset_t empty_set;
51 fd_set readfds;
52--- 815,819 ----
53 unsigned char c;
54 int fd;
55! #if defined (HAVE_PSELECT) || defined (HAVE_SELECT)
56 sigset_t empty_set;
57 fd_set readfds;
58*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
59--- patchlevel 2014-03-21 08:28:40.000000000 -0400
60***************
61*** 1,3 ****
62 # Do not edit -- exists only for use by patch
63
64! 3
65--- 1,3 ----
66 # Do not edit -- exists only for use by patch
67
68! 4
diff --git a/meta/recipes-core/readline/readline/readline82-005.patch b/meta/recipes-core/readline/readline/readline82-005.patch
new file mode 100644
index 0000000000..69c2e4f77a
--- /dev/null
+++ b/meta/recipes-core/readline/readline/readline82-005.patch
@@ -0,0 +1,53 @@
1 READLINE PATCH REPORT
2 =====================
3
4Readline-Release: 8.2
5Patch-ID: readline82-005
6
7Bug-Reported-by: Simon Marchi <simon.marchi@polymtl.ca>
8Bug-Reference-ID:
9Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2022-09/msg00005.html
10
11Bug-Description:
12
13If an application is using readline in callback mode, and a signal arrives
14after readline checks for it in rl_callback_read_char() but before it
15restores the application's signal handlers, it won't get processed until the
16next time the application calls rl_callback_read_char(). Readline needs to
17check for and resend any pending signals after restoring the application's
18signal handlers.
19
20Patch (apply with `patch -p0'):
21
22Upstream-Status: Submitted [https://ftp.gnu.org/gnu/readline/readline-8.2-patches/]
23Signed-off-by: Khem Raj <raj.khem@gmail.com>
24
25*** ../readline-8.2-patched/callback.c 2022-04-29 12:02:56.000000000 -0400
26--- callback.c 2022-10-11 10:59:06.000000000 -0400
27***************
28*** 116,120 ****
29 do { \
30 if (rl_persistent_signal_handlers == 0) \
31! rl_clear_signals (); \
32 return; \
33 } while (0)
34--- 116,123 ----
35 do { \
36 if (rl_persistent_signal_handlers == 0) \
37! { \
38! rl_clear_signals (); \
39! if (_rl_caught_signal) _rl_signal_handler (_rl_caught_signal); \
40! } \
41 return; \
42 } while (0)
43*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
44--- patchlevel 2014-03-21 08:28:40.000000000 -0400
45***************
46*** 1,3 ****
47 # Do not edit -- exists only for use by patch
48
49! 4
50--- 1,3 ----
51 # Do not edit -- exists only for use by patch
52
53! 5
diff --git a/meta/recipes-core/readline/readline/readline82-006.patch b/meta/recipes-core/readline/readline/readline82-006.patch
new file mode 100644
index 0000000000..d66afe82c9
--- /dev/null
+++ b/meta/recipes-core/readline/readline/readline82-006.patch
@@ -0,0 +1,102 @@
1 READLINE PATCH REPORT
2 =====================
3
4Readline-Release: 8.2
5Patch-ID: readline82-006
6
7Bug-Reported-by: Tom de Vries <tdevries@suse.de>
8Bug-Reference-ID:
9Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2022-09/msg00001.html
10
11Bug-Description:
12
13This is a variant of the same issue as the one fixed by patch 5. In this
14case, the signal arrives and is pending before readline calls rl_getc().
15When this happens, the pending signal will be handled by the loop, but may
16alter or destroy some state that the callback uses. Readline needs to treat
17this case the same way it would if a signal interrupts pselect/select, so
18compound operations like searches and reading numeric arguments get cleaned
19up properly.
20
21Patch (apply with `patch -p0'):
22
23Upstream-Status: Submitted [https://ftp.gnu.org/gnu/readline/readline-8.2-patches/]
24Signed-off-by: Khem Raj <raj.khem@gmail.com>
25
26*** ../readline-8.2-patched/input.c 2022-12-22 16:15:48.000000000 -0500
27--- input.c 2023-01-10 11:53:45.000000000 -0500
28***************
29*** 812,816 ****
30 rl_getc (FILE *stream)
31 {
32! int result;
33 unsigned char c;
34 int fd;
35--- 812,816 ----
36 rl_getc (FILE *stream)
37 {
38! int result, ostate, osig;
39 unsigned char c;
40 int fd;
41***************
42*** 823,828 ****
43--- 823,842 ----
44 while (1)
45 {
46+ osig = _rl_caught_signal;
47+ ostate = rl_readline_state;
48+
49 RL_CHECK_SIGNALS ();
50
51+ #if defined (READLINE_CALLBACKS)
52+ /* Do signal handling post-processing here, but just in callback mode
53+ for right now because the signal cleanup can change some of the
54+ callback state, and we need to either let the application have a
55+ chance to react or abort some current operation that gets cleaned
56+ up by rl_callback_sigcleanup(). If not, we'll just run through the
57+ loop again. */
58+ if (osig != 0 && (ostate & RL_STATE_CALLBACK))
59+ goto postproc_signal;
60+ #endif
61+
62 /* We know at this point that _rl_caught_signal == 0 */
63
64***************
65*** 888,891 ****
66--- 902,908 ----
67
68 handle_error:
69+ osig = _rl_caught_signal;
70+ ostate = rl_readline_state;
71+
72 /* If the error that we received was EINTR, then try again,
73 this is simply an interrupted system call to read (). We allow
74***************
75*** 928,933 ****
76--- 945,959 ----
77 #endif /* SIGALRM */
78
79+ postproc_signal:
80+ /* POSIX says read(2)/pselect(2)/select(2) don't return EINTR for any
81+ reason other than being interrupted by a signal, so we can safely
82+ call the application's signal event hook. */
83 if (rl_signal_event_hook)
84 (*rl_signal_event_hook) ();
85+ #if defined (READLINE_CALLBACKS)
86+ else if (osig == SIGINT && (ostate & RL_STATE_CALLBACK) && (ostate & (RL_STATE_ISEARCH|RL_STATE_NSEARCH|RL_STATE_NUMERICARG)))
87+ /* just these cases for now */
88+ _rl_abort_internal ();
89+ #endif
90 }
91 }
92*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
93--- patchlevel 2014-03-21 08:28:40.000000000 -0400
94***************
95*** 1,3 ****
96 # Do not edit -- exists only for use by patch
97
98! 5
99--- 1,3 ----
100 # Do not edit -- exists only for use by patch
101
102! 6
diff --git a/meta/recipes-core/readline/readline/readline82-007.patch b/meta/recipes-core/readline/readline/readline82-007.patch
new file mode 100644
index 0000000000..9fa1ccb552
--- /dev/null
+++ b/meta/recipes-core/readline/readline/readline82-007.patch
@@ -0,0 +1,51 @@
1 READLINE PATCH REPORT
2 =====================
3
4Readline-Release: 8.2
5Patch-ID: readline82-007
6
7Bug-Reported-by: Kevin Pulo <kev@pulo.com.au>
8Bug-Reference-ID:
9Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2022-11/msg00002.html
10
11Bug-Description:
12
13If readline is called with no prompt, it should display a newline if return
14is typed on an empty line. It should still suppress the final newline if
15return is typed on the last (empty) line of a multi-line command.
16
17Patch (apply with `patch -p0'):
18
19Upstream-Status: Submitted [https://ftp.gnu.org/gnu/readline/readline-8.2-patches/]
20Signed-off-by: Khem Raj <raj.khem@gmail.com>
21
22*** ../readline-8.2-patched/display.c 2022-04-05 10:47:31.000000000 -0400
23--- display.c 2022-12-13 13:11:22.000000000 -0500
24***************
25*** 3342,3348 ****
26 &last_face[_rl_screenwidth - 1 + woff], 1);
27 }
28! _rl_vis_botlin = 0;
29! if (botline_length > 0 || _rl_last_c_pos > 0)
30 rl_crlf ();
31 fflush (rl_outstream);
32 rl_display_fixed++;
33--- 3394,3400 ----
34 &last_face[_rl_screenwidth - 1 + woff], 1);
35 }
36! if ((_rl_vis_botlin == 0 && botline_length == 0) || botline_length > 0 || _rl_last_c_pos > 0)
37 rl_crlf ();
38+ _rl_vis_botlin = 0;
39 fflush (rl_outstream);
40 rl_display_fixed++;
41*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
42--- patchlevel 2014-03-21 08:28:40.000000000 -0400
43***************
44*** 1,3 ****
45 # Do not edit -- exists only for use by patch
46
47! 6
48--- 1,3 ----
49 # Do not edit -- exists only for use by patch
50
51! 7
diff --git a/meta/recipes-core/readline/readline/readline82-008.patch b/meta/recipes-core/readline/readline/readline82-008.patch
new file mode 100644
index 0000000000..660cb1e00b
--- /dev/null
+++ b/meta/recipes-core/readline/readline/readline82-008.patch
@@ -0,0 +1,80 @@
1 READLINE PATCH REPORT
2 =====================
3
4Readline-Release: 8.2
5Patch-ID: readline82-008
6
7Bug-Reported-by:
8Bug-Reference-ID:
9Bug-Reference-URL:
10
11Bug-Description:
12
13Add missing prototypes for several function declarations.
14
15Patch (apply with `patch -p0'):
16
17Upstream-Status: Submitted [https://ftp.gnu.org/gnu/readline/readline-8.2-patches/]
18Signed-off-by: Khem Raj <raj.khem@gmail.com>
19
20*** ../readline-8.2-patched/text.c Wed Oct 27 11:03:59 2021
21--- text.c Thu Nov 16 16:24:58 2023
22***************
23*** 1765,1770 ****
24 #if defined (READLINE_CALLBACKS)
25 static int
26! _rl_char_search_callback (data)
27! _rl_callback_generic_arg *data;
28 {
29 _rl_callback_func = 0;
30--- 1765,1769 ----
31 #if defined (READLINE_CALLBACKS)
32 static int
33! _rl_char_search_callback (_rl_callback_generic_arg *data)
34 {
35 _rl_callback_func = 0;
36*** ../readline-8.2-patched/bind.c Wed Feb 9 11:02:22 2022
37--- bind.c Thu Nov 16 16:25:17 2023
38***************
39*** 1168,1174 ****
40
41 static int
42! parse_comparison_op (s, indp)
43! const char *s;
44! int *indp;
45 {
46 int i, peekc, op;
47--- 1168,1172 ----
48
49 static int
50! parse_comparison_op (const char *s, int *indp)
51 {
52 int i, peekc, op;
53*** ../readline-8.2-patched/rltty.c Fri Feb 18 11:14:22 2022
54--- rltty.c Thu Nov 16 16:25:36 2023
55***************
56*** 81,86 ****
57 to get the tty settings. */
58 static void
59! set_winsize (tty)
60! int tty;
61 {
62 #if defined (TIOCGWINSZ)
63--- 81,85 ----
64 to get the tty settings. */
65 static void
66! set_winsize (int tty)
67 {
68 #if defined (TIOCGWINSZ)
69
70*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
71--- patchlevel 2014-03-21 08:28:40.000000000 -0400
72***************
73*** 1,3 ****
74 # Do not edit -- exists only for use by patch
75
76! 7
77--- 1,3 ----
78 # Do not edit -- exists only for use by patch
79
80! 8
diff --git a/meta/recipes-core/readline/readline/readline82-009.patch b/meta/recipes-core/readline/readline/readline82-009.patch
new file mode 100644
index 0000000000..1fcf7b3535
--- /dev/null
+++ b/meta/recipes-core/readline/readline/readline82-009.patch
@@ -0,0 +1,76 @@
1 READLINE PATCH REPORT
2 =====================
3
4Readline-Release: 8.2
5Patch-ID: readline82-009
6
7Bug-Reported-by: Stefan H. Holek <stefan@epy.co.at>
8Bug-Reference-ID: <50F8DA45-B7F3-4DE1-AB94-19AE42649CDC@epy.co.at>
9Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2022-10/msg00021.html
10
11Bug-Description:
12
13Fix issue where the directory name portion of the word to be completed (the
14part that is passed to opendir()) requires both tilde expansion and dequoting.
15Readline only performed tilde expansion in this case, so filename completion
16would fail.
17
18Patch (apply with `patch -p0'):
19
20Upstream-Status: Submitted [https://ftp.gnu.org/gnu/readline/readline-8.2-patches/]
21Signed-off-by: Khem Raj <raj.khem@gmail.com>
22
23*** ../readline-8.2-patched/complete.c 2022-04-05 10:47:06.000000000 -0400
24--- complete.c 2022-10-26 15:08:51.000000000 -0400
25***************
26*** 2527,2531 ****
27 xfree (dirname);
28 dirname = temp;
29! tilde_dirname = 1;
30 }
31
32--- 2527,2532 ----
33 xfree (dirname);
34 dirname = temp;
35! if (*dirname != '~')
36! tilde_dirname = 1; /* indicate successful tilde expansion */
37 }
38
39***************
40*** 2546,2554 ****
41 users_dirname = savestring (dirname);
42 }
43! else if (tilde_dirname == 0 && rl_completion_found_quote && rl_filename_dequoting_function)
44 {
45! /* delete single and double quotes */
46 xfree (dirname);
47! dirname = savestring (users_dirname);
48 }
49 directory = opendir (dirname);
50--- 2547,2560 ----
51 users_dirname = savestring (dirname);
52 }
53! else if (rl_completion_found_quote && rl_filename_dequoting_function)
54 {
55! /* We already ran users_dirname through the dequoting function.
56! If tilde_dirname == 1, we successfully performed tilde expansion
57! on dirname. Now we need to reconcile those results. We either
58! just copy the already-dequoted users_dirname or tilde expand it
59! if we tilde-expanded dirname. */
60! temp = tilde_dirname ? tilde_expand (users_dirname) : savestring (users_dirname);
61 xfree (dirname);
62! dirname = temp;
63 }
64 directory = opendir (dirname);
65
66*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
67--- patchlevel 2014-03-21 08:28:40.000000000 -0400
68***************
69*** 1,3 ****
70 # Do not edit -- exists only for use by patch
71
72! 8
73--- 1,3 ----
74 # Do not edit -- exists only for use by patch
75
76! 9
diff --git a/meta/recipes-core/readline/readline/readline82-010.patch b/meta/recipes-core/readline/readline/readline82-010.patch
new file mode 100644
index 0000000000..6152953e91
--- /dev/null
+++ b/meta/recipes-core/readline/readline/readline82-010.patch
@@ -0,0 +1,70 @@
1 READLINE PATCH REPORT
2 =====================
3
4Readline-Release: 8.2
5Patch-ID: readline82-010
6
7Bug-Reported-by: Martin Castillo <castilma@uni-bremen.de>
8Bug-Reference-ID: <2d42153b-cf65-caba-dff1-cd3bc6268c7e@uni-bremen.de>
9Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2023-01/msg00000.html
10
11Bug-Description:
12
13Fix the case where text to be completed from the line buffer (quoted) is
14compared to the common prefix of the possible matches (unquoted) and the
15quoting makes the former appear to be longer than the latter. Readline
16assumes the match doesn't add any characters to the word and doesn't display
17multiple matches.
18
19Patch (apply with `patch -p0'):
20
21Upstream-Status: Submitted [https://ftp.gnu.org/gnu/readline/readline-8.2-patches/]
22Signed-off-by: Khem Raj <raj.khem@gmail.com>
23
24*** ../readline-8.2-patched/complete.c Tue Apr 5 10:47:06 2022
25--- complete.c Sat Jan 7 14:19:45 2023
26***************
27*** 2032,2038 ****
28 text = rl_copy_text (start, end);
29 matches = gen_completion_matches (text, start, end, our_func, found_quote, quote_char);
30 /* nontrivial_lcd is set if the common prefix adds something to the word
31 being completed. */
32! nontrivial_lcd = matches && compare_match (text, matches[0]) != 0;
33 if (what_to_do == '!' || what_to_do == '@')
34 tlen = strlen (text);
35--- 2038,2060 ----
36 text = rl_copy_text (start, end);
37 matches = gen_completion_matches (text, start, end, our_func, found_quote, quote_char);
38+ /* If TEXT contains quote characters, it will be dequoted as part of
39+ generating the matches, and the matches will not contain any quote
40+ characters. We need to dequote TEXT before performing the comparison.
41+ Since compare_match performs the dequoting, and we only want to do it
42+ once, we don't call compare_matches after dequoting TEXT; we call
43+ strcmp directly. */
44 /* nontrivial_lcd is set if the common prefix adds something to the word
45 being completed. */
46! if (rl_filename_completion_desired && rl_filename_quoting_desired &&
47! rl_completion_found_quote && rl_filename_dequoting_function)
48! {
49! char *t;
50! t = (*rl_filename_dequoting_function) (text, rl_completion_quote_character);
51! xfree (text);
52! text = t;
53! nontrivial_lcd = matches && strcmp (text, matches[0]) != 0;
54! }
55! else
56! nontrivial_lcd = matches && strcmp (text, matches[0]) != 0;
57 if (what_to_do == '!' || what_to_do == '@')
58 tlen = strlen (text);
59
60*** ../readline-8.2/patchlevel 2013-11-15 08:11:11.000000000 -0500
61--- patchlevel 2014-03-21 08:28:40.000000000 -0400
62***************
63*** 1,3 ****
64 # Do not edit -- exists only for use by patch
65
66! 9
67--- 1,3 ----
68 # Do not edit -- exists only for use by patch
69
70! 10
diff --git a/meta/recipes-core/readline/readline_8.2.bb b/meta/recipes-core/readline/readline_8.2.bb
index 3a47297fe1..f0dba31251 100644
--- a/meta/recipes-core/readline/readline_8.2.bb
+++ b/meta/recipes-core/readline/readline_8.2.bb
@@ -2,4 +2,16 @@ require readline.inc
2 2
3SRC_URI += " file://norpath.patch" 3SRC_URI += " file://norpath.patch"
4 4
5SRC_URI += "file://readline82-001.patch;striplevel=0 \
6 file://readline82-002.patch;striplevel=0 \
7 file://readline82-003.patch;striplevel=0 \
8 file://readline82-004.patch;striplevel=0 \
9 file://readline82-005.patch;striplevel=0 \
10 file://readline82-006.patch;striplevel=0 \
11 file://readline82-007.patch;striplevel=0 \
12 file://readline82-008.patch;striplevel=0 \
13 file://readline82-009.patch;striplevel=0 \
14 file://readline82-010.patch;striplevel=0 \
15 "
16
5SRC_URI[archive.sha256sum] = "3feb7171f16a84ee82ca18a36d7b9be109a52c04f492a053331d7d1095007c35" 17SRC_URI[archive.sha256sum] = "3feb7171f16a84ee82ca18a36d7b9be109a52c04f492a053331d7d1095007c35"
diff --git a/meta/recipes-core/seatd/seatd_0.8.0.bb b/meta/recipes-core/seatd/seatd_0.8.0.bb
index 14c5b1b7ae..df5fe35f98 100644
--- a/meta/recipes-core/seatd/seatd_0.8.0.bb
+++ b/meta/recipes-core/seatd/seatd_0.8.0.bb
@@ -26,7 +26,7 @@ PACKAGECONFIG[systemd] = ",,systemd"
26 26
27do_install:append() { 27do_install:append() {
28 if [ "${VIRTUAL-RUNTIME_init_manager}" != "systemd" ]; then 28 if [ "${VIRTUAL-RUNTIME_init_manager}" != "systemd" ]; then
29 install -Dm755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/seatd 29 install -Dm755 ${UNPACKDIR}/init ${D}/${sysconfdir}/init.d/seatd
30 fi 30 fi
31} 31}
32 32
diff --git a/meta/recipes-core/systemd/systemd-boot-native_255.4.bb b/meta/recipes-core/systemd/systemd-boot-native_255.6.bb
index 73db59b14e..73db59b14e 100644
--- a/meta/recipes-core/systemd/systemd-boot-native_255.4.bb
+++ b/meta/recipes-core/systemd/systemd-boot-native_255.6.bb
diff --git a/meta/recipes-core/systemd/systemd-boot_255.4.bb b/meta/recipes-core/systemd/systemd-boot_255.6.bb
index 4ee25ee72f..4ee25ee72f 100644
--- a/meta/recipes-core/systemd/systemd-boot_255.4.bb
+++ b/meta/recipes-core/systemd/systemd-boot_255.6.bb
diff --git a/meta/recipes-core/systemd/systemd-bootconf_1.00.bb b/meta/recipes-core/systemd/systemd-bootconf_1.00.bb
index 19637546a9..0ec49365d0 100644
--- a/meta/recipes-core/systemd/systemd-bootconf_1.00.bb
+++ b/meta/recipes-core/systemd/systemd-bootconf_1.00.bb
@@ -7,7 +7,8 @@ PACKAGE_ARCH = "${MACHINE_ARCH}"
7 7
8inherit systemd-boot-cfg 8inherit systemd-boot-cfg
9 9
10S = "${WORKDIR}" 10S = "${WORKDIR}/sources"
11UNPACKDIR = "${S}"
11 12
12LABELS = "boot" 13LABELS = "boot"
13 14
diff --git a/meta/recipes-core/systemd/systemd-compat-units.bb b/meta/recipes-core/systemd/systemd-compat-units.bb
index c03d97f9c9..b929545823 100644
--- a/meta/recipes-core/systemd/systemd-compat-units.bb
+++ b/meta/recipes-core/systemd/systemd-compat-units.bb
@@ -5,7 +5,8 @@ LICENSE = "MIT"
5 5
6PACKAGE_WRITE_DEPS += "systemd-systemctl-native" 6PACKAGE_WRITE_DEPS += "systemd-systemctl-native"
7 7
8S = "${WORKDIR}" 8S = "${WORKDIR}/sources"
9UNPACKDIR = "${S}"
9 10
10inherit features_check 11inherit features_check
11 12
diff --git a/meta/recipes-core/systemd/systemd-conf_1.0.bb b/meta/recipes-core/systemd/systemd-conf_1.0.bb
index 2355936631..b8bea0c25b 100644
--- a/meta/recipes-core/systemd/systemd-conf_1.0.bb
+++ b/meta/recipes-core/systemd/systemd-conf_1.0.bb
@@ -21,19 +21,22 @@ SRC_URI = "\
21 file://wired.network \ 21 file://wired.network \
22" 22"
23 23
24S = "${WORKDIR}/sources"
25UNPACKDIR = "${S}"
26
24do_install() { 27do_install() {
25 install -D -m0644 ${WORKDIR}/journald.conf ${D}${systemd_unitdir}/journald.conf.d/00-${PN}.conf 28 install -D -m0644 ${S}/journald.conf ${D}${systemd_unitdir}/journald.conf.d/00-${PN}.conf
26 install -D -m0644 ${WORKDIR}/logind.conf ${D}${systemd_unitdir}/logind.conf.d/00-${PN}.conf 29 install -D -m0644 ${S}/logind.conf ${D}${systemd_unitdir}/logind.conf.d/00-${PN}.conf
27 install -D -m0644 ${WORKDIR}/system.conf ${D}${systemd_unitdir}/system.conf.d/00-${PN}.conf 30 install -D -m0644 ${S}/system.conf ${D}${systemd_unitdir}/system.conf.d/00-${PN}.conf
28 31
29 if ${@bb.utils.contains('PACKAGECONFIG', 'dhcp-ethernet', 'true', 'false', d)}; then 32 if ${@bb.utils.contains('PACKAGECONFIG', 'dhcp-ethernet', 'true', 'false', d)}; then
30 install -D -m0644 ${WORKDIR}/wired.network ${D}${systemd_unitdir}/network/80-wired.network 33 install -D -m0644 ${S}/wired.network ${D}${systemd_unitdir}/network/80-wired.network
31 fi 34 fi
32} 35}
33 36
34# Based on change from YP bug 8141, OE commit 5196d7bacaef1076c361adaa2867be31759c1b52 37# Based on change from YP bug 8141, OE commit 5196d7bacaef1076c361adaa2867be31759c1b52
35do_install:append:qemuall() { 38do_install:append:qemuall() {
36 install -D -m0644 ${WORKDIR}/system.conf-qemuall ${D}${systemd_unitdir}/system.conf.d/01-${PN}.conf 39 install -D -m0644 ${S}/system.conf-qemuall ${D}${systemd_unitdir}/system.conf.d/01-${PN}.conf
37} 40}
38 41
39PACKAGE_ARCH = "${MACHINE_ARCH}" 42PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/meta/recipes-core/systemd/systemd-serialgetty.bb b/meta/recipes-core/systemd/systemd-serialgetty.bb
index 44a93ac684..9035b8c335 100644
--- a/meta/recipes-core/systemd/systemd-serialgetty.bb
+++ b/meta/recipes-core/systemd/systemd-serialgetty.bb
@@ -9,7 +9,8 @@ SERIAL_TERM ?= "linux"
9 9
10SRC_URI = "file://serial-getty@.service" 10SRC_URI = "file://serial-getty@.service"
11 11
12S = "${WORKDIR}" 12S = "${WORKDIR}/sources"
13UNPACKDIR = "${S}"
13 14
14# As this package is tied to systemd, only build it when we're also building systemd. 15# As this package is tied to systemd, only build it when we're also building systemd.
15inherit features_check 16inherit features_check
@@ -21,7 +22,7 @@ do_install() {
21 default_baudrate=`echo "${SERIAL_CONSOLES}" | sed 's/\;.*//'` 22 default_baudrate=`echo "${SERIAL_CONSOLES}" | sed 's/\;.*//'`
22 install -d ${D}${systemd_system_unitdir}/ 23 install -d ${D}${systemd_system_unitdir}/
23 install -d ${D}${sysconfdir}/systemd/system/getty.target.wants/ 24 install -d ${D}${sysconfdir}/systemd/system/getty.target.wants/
24 install -m 0644 ${WORKDIR}/serial-getty@.service ${D}${systemd_system_unitdir}/ 25 install -m 0644 ${S}/serial-getty@.service ${D}${systemd_system_unitdir}/
25 sed -i -e "s/\@BAUDRATE\@/$default_baudrate/g" ${D}${systemd_system_unitdir}/serial-getty@.service 26 sed -i -e "s/\@BAUDRATE\@/$default_baudrate/g" ${D}${systemd_system_unitdir}/serial-getty@.service
26 sed -i -e "s/\@TERM\@/${SERIAL_TERM}/g" ${D}${systemd_system_unitdir}/serial-getty@.service 27 sed -i -e "s/\@TERM\@/${SERIAL_TERM}/g" ${D}${systemd_system_unitdir}/serial-getty@.service
27 28
@@ -35,7 +36,7 @@ do_install() {
35 ${D}${sysconfdir}/systemd/system/getty.target.wants/serial-getty@$ttydev.service 36 ${D}${sysconfdir}/systemd/system/getty.target.wants/serial-getty@$ttydev.service
36 else 37 else
37 # install custom service file for the non-default baudrate 38 # install custom service file for the non-default baudrate
38 install -m 0644 ${WORKDIR}/serial-getty@.service ${D}${systemd_system_unitdir}/serial-getty$baudrate@.service 39 install -m 0644 ${S}/serial-getty@.service ${D}${systemd_system_unitdir}/serial-getty$baudrate@.service
39 sed -i -e "s/\@BAUDRATE\@/$baudrate/g" ${D}${systemd_system_unitdir}/serial-getty$baudrate@.service 40 sed -i -e "s/\@BAUDRATE\@/$baudrate/g" ${D}${systemd_system_unitdir}/serial-getty$baudrate@.service
40 # enable the service 41 # enable the service
41 ln -sf ${systemd_system_unitdir}/serial-getty$baudrate@.service \ 42 ln -sf ${systemd_system_unitdir}/serial-getty$baudrate@.service \
diff --git a/meta/recipes-core/systemd/systemd-systemctl-native.bb b/meta/recipes-core/systemd/systemd-systemctl-native.bb
index 54283bcba1..ffa024caef 100644
--- a/meta/recipes-core/systemd/systemd-systemctl-native.bb
+++ b/meta/recipes-core/systemd/systemd-systemctl-native.bb
@@ -8,9 +8,10 @@ inherit native
8 8
9SRC_URI = "file://systemctl" 9SRC_URI = "file://systemctl"
10 10
11S = "${WORKDIR}" 11S = "${WORKDIR}/sources"
12UNPACKDIR = "${S}"
12 13
13do_install() { 14do_install() {
14 install -d ${D}${bindir} 15 install -d ${D}${bindir}
15 install -m 0755 ${WORKDIR}/systemctl ${D}${bindir} 16 install -m 0755 ${S}/systemctl ${D}${bindir}
16} 17}
diff --git a/meta/recipes-core/systemd/systemd.inc b/meta/recipes-core/systemd/systemd.inc
index a35db5091e..8bda47dd38 100644
--- a/meta/recipes-core/systemd/systemd.inc
+++ b/meta/recipes-core/systemd/systemd.inc
@@ -15,7 +15,7 @@ LICENSE:libsystemd = "LGPL-2.1-or-later"
15LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \ 15LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \
16 file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c" 16 file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c"
17 17
18SRCREV = "387a14a7b67b8b76adaed4175e14bb7e39b2f738" 18SRCREV = "5810c25792d4268282dd3892af1a253b690423c9"
19SRCBRANCH = "v255-stable" 19SRCBRANCH = "v255-stable"
20SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=https;branch=${SRCBRANCH}" 20SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=https;branch=${SRCBRANCH}"
21 21
diff --git a/meta/recipes-core/systemd/systemd/0001-NamePolicy.patch b/meta/recipes-core/systemd/systemd/0001-NamePolicy.patch
deleted file mode 100644
index 46955cbcbb..0000000000
--- a/meta/recipes-core/systemd/systemd/0001-NamePolicy.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1From 9bb09886320eb286108fb370b2634a66b3e3b9ff Mon Sep 17 00:00:00 2001
2From: Joe Slater <joe.slater@windriver.com>
3Date: Thu, 21 Mar 2024 16:28:31 +0000
4Subject: [PATCH] systemd: enable mac based names in NamePolicy
5
6The default NamePolicy for network interface names does not
7include names based on mac addresses. Some BSPs, though, do
8not provide information to compute other names, so we enable
9mac names as a last resort.
10
11Upstream-Status: Inappropriate [enable feature]
12
13Signed-off-by: Joe Slater <joe.slater@windriver.com>
14---
15 network/99-default.link | 4 ++--
16 1 file changed, 2 insertions(+), 2 deletions(-)
17
18diff --git a/network/99-default.link b/network/99-default.link
19index 429ac31e80..543ce54661 100644
20--- a/network/99-default.link
21+++ b/network/99-default.link
22@@ -15,6 +15,6 @@
23 OriginalName=*
24
25 [Link]
26-NamePolicy=keep kernel database onboard slot path
27-AlternativeNamesPolicy=database onboard slot path
28+NamePolicy=keep kernel database onboard slot path mac
29+AlternativeNamesPolicy=database onboard slot path mac
30 MACAddressPolicy=persistent
31--
322.35.5
33
diff --git a/meta/recipes-core/systemd/systemd/0001-missing_type.h-add-comparison_fn_t.patch b/meta/recipes-core/systemd/systemd/0001-missing_type.h-add-comparison_fn_t.patch
index 2aa5dee6b5..49871d16a8 100644
--- a/meta/recipes-core/systemd/systemd/0001-missing_type.h-add-comparison_fn_t.patch
+++ b/meta/recipes-core/systemd/systemd/0001-missing_type.h-add-comparison_fn_t.patch
@@ -1,7 +1,7 @@
1From 01195eb9f7d59139fb45df506ac6b3968c14a57f Mon Sep 17 00:00:00 2001 1From d4b0bb9c7651017985fdd75469f37c34ce2f2c50 Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com> 2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Mon, 25 Feb 2019 13:55:12 +0800 3Date: Mon, 25 Feb 2019 13:55:12 +0800
4Subject: [PATCH 01/22] missing_type.h: add comparison_fn_t 4Subject: [PATCH] missing_type.h: add comparison_fn_t
5 5
6Make it work with musl where comparison_fn_t and is not provided. 6Make it work with musl where comparison_fn_t and is not provided.
7 7
@@ -56,6 +56,3 @@ index ae91534198..7f67eea38b 100644
56 56
57 const char * const catalog_file_dirs[] = { 57 const char * const catalog_file_dirs[] = {
58 "/usr/local/lib/systemd/catalog/", 58 "/usr/local/lib/systemd/catalog/",
59--
602.34.1
61
diff --git a/meta/recipes-core/systemd/systemd/0002-add-fallback-parse_printf_format-implementation.patch b/meta/recipes-core/systemd/systemd/0002-add-fallback-parse_printf_format-implementation.patch
index 900a931632..593d6261e1 100644
--- a/meta/recipes-core/systemd/systemd/0002-add-fallback-parse_printf_format-implementation.patch
+++ b/meta/recipes-core/systemd/systemd/0002-add-fallback-parse_printf_format-implementation.patch
@@ -1,7 +1,7 @@
1From 872b72739e62123867ce6c4f82aa37de24cc3f75 Mon Sep 17 00:00:00 2001 1From 776913624aaf696a3b2920b8d7506b3aae042bf1 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Sat, 22 May 2021 20:26:24 +0200 3Date: Sat, 22 May 2021 20:26:24 +0200
4Subject: [PATCH 02/22] add fallback parse_printf_format implementation 4Subject: [PATCH] add fallback parse_printf_format implementation
5 5
6Upstream-Status: Inappropriate [musl specific] 6Upstream-Status: Inappropriate [musl specific]
7 7
@@ -22,10 +22,10 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
22 create mode 100644 src/basic/parse-printf-format.h 22 create mode 100644 src/basic/parse-printf-format.h
23 23
24diff --git a/meson.build b/meson.build 24diff --git a/meson.build b/meson.build
25index 7419e2b0b0..01fd3ffc19 100644 25index 187e7b216d..c4694a9ddc 100644
26--- a/meson.build 26--- a/meson.build
27+++ b/meson.build 27+++ b/meson.build
28@@ -725,6 +725,7 @@ endif 28@@ -727,6 +727,7 @@ endif
29 foreach header : ['crypt.h', 29 foreach header : ['crypt.h',
30 'linux/memfd.h', 30 'linux/memfd.h',
31 'linux/vm_sockets.h', 31 'linux/vm_sockets.h',
@@ -34,7 +34,7 @@ index 7419e2b0b0..01fd3ffc19 100644
34 'threads.h', 34 'threads.h',
35 'valgrind/memcheck.h', 35 'valgrind/memcheck.h',
36diff --git a/src/basic/meson.build b/src/basic/meson.build 36diff --git a/src/basic/meson.build b/src/basic/meson.build
37index d7450d8b44..c3e3daf4bd 100644 37index 111253e3a5..bdaa2fc5e4 100644
38--- a/src/basic/meson.build 38--- a/src/basic/meson.build
39+++ b/src/basic/meson.build 39+++ b/src/basic/meson.build
40@@ -183,6 +183,11 @@ endforeach 40@@ -183,6 +183,11 @@ endforeach
@@ -429,6 +429,3 @@ index be23b2fe75..69a2eb6404 100644
429 429
430 #define SNDBUF_SIZE (8*1024*1024) 430 #define SNDBUF_SIZE (8*1024*1024)
431 431
432--
4332.34.1
434
diff --git a/meta/recipes-core/systemd/systemd/0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch b/meta/recipes-core/systemd/systemd/0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch
index be231cf6b2..4c73c924ef 100644
--- a/meta/recipes-core/systemd/systemd/0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch
+++ b/meta/recipes-core/systemd/systemd/0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch
@@ -1,8 +1,8 @@
1From 29a58009a172e369ad7166e16dab2f4945c6b0d2 Mon Sep 17 00:00:00 2001 1From 661a34c3de30d4ff4a2a62c9a0573c6ce55424e4 Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com> 2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Thu, 21 Feb 2019 16:23:24 +0800 3Date: Thu, 21 Feb 2019 16:23:24 +0800
4Subject: [PATCH 1/2] binfmt: Don't install dependency links at install time 4Subject: [PATCH] binfmt: Don't install dependency links at install time for
5 for the binfmt services 5 the binfmt services
6 6
7use [Install] blocks so that they get created when the service is enabled 7use [Install] blocks so that they get created when the service is enabled
8like a traditional service. 8like a traditional service.
@@ -74,6 +74,3 @@ index 6861c76674..531e9fbd90 100644
74+ 74+
75+[Install] 75+[Install]
76+WantedBy=sysinit.target 76+WantedBy=sysinit.target
77--
782.34.1
79
diff --git a/meta/recipes-core/systemd/systemd/0003-src-basic-missing.h-check-for-missing-strndupa.patch b/meta/recipes-core/systemd/systemd/0003-src-basic-missing.h-check-for-missing-strndupa.patch
index 5595b5bc23..f09f2114d3 100644
--- a/meta/recipes-core/systemd/systemd/0003-src-basic-missing.h-check-for-missing-strndupa.patch
+++ b/meta/recipes-core/systemd/systemd/0003-src-basic-missing.h-check-for-missing-strndupa.patch
@@ -1,7 +1,7 @@
1From 87f1d38f40c5fe9cadf2b2de442473e4e5605788 Mon Sep 17 00:00:00 2001 1From 843c6c94bf6a29eaceeefafa420cd86a32e844d2 Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com> 2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Mon, 25 Feb 2019 14:18:21 +0800 3Date: Mon, 25 Feb 2019 14:18:21 +0800
4Subject: [PATCH 03/22] src/basic/missing.h: check for missing strndupa 4Subject: [PATCH] src/basic/missing.h: check for missing strndupa
5 5
6include missing.h for definition of strndupa 6include missing.h for definition of strndupa
7 7
@@ -75,10 +75,10 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
75 51 files changed, 62 insertions(+) 75 51 files changed, 62 insertions(+)
76 76
77diff --git a/meson.build b/meson.build 77diff --git a/meson.build b/meson.build
78index 01fd3ffc19..61a872b753 100644 78index c4694a9ddc..d376b76afa 100644
79--- a/meson.build 79--- a/meson.build
80+++ b/meson.build 80+++ b/meson.build
81@@ -567,6 +567,7 @@ foreach ident : ['secure_getenv', '__secure_getenv'] 81@@ -569,6 +569,7 @@ foreach ident : ['secure_getenv', '__secure_getenv']
82 endforeach 82 endforeach
83 83
84 foreach ident : [ 84 foreach ident : [
@@ -87,7 +87,7 @@ index 01fd3ffc19..61a872b753 100644
87 ['gettid', '''#include <sys/types.h> 87 ['gettid', '''#include <sys/types.h>
88 #include <unistd.h>'''], 88 #include <unistd.h>'''],
89diff --git a/src/backlight/backlight.c b/src/backlight/backlight.c 89diff --git a/src/backlight/backlight.c b/src/backlight/backlight.c
90index 5ac9f904a9..99d5122dd7 100644 90index b2032adaa5..ee9201826d 100644
91--- a/src/backlight/backlight.c 91--- a/src/backlight/backlight.c
92+++ b/src/backlight/backlight.c 92+++ b/src/backlight/backlight.c
93@@ -20,6 +20,7 @@ 93@@ -20,6 +20,7 @@
@@ -111,7 +111,7 @@ index 18b16ecc0e..d2be79622f 100644
111 static int cg_enumerate_items(const char *controller, const char *path, FILE **ret, const char *item) { 111 static int cg_enumerate_items(const char *controller, const char *path, FILE **ret, const char *item) {
112 _cleanup_free_ char *fs = NULL; 112 _cleanup_free_ char *fs = NULL;
113diff --git a/src/basic/env-util.c b/src/basic/env-util.c 113diff --git a/src/basic/env-util.c b/src/basic/env-util.c
114index d3bf73385f..16b17358ca 100644 114index a97651d7af..09fa601250 100644
115--- a/src/basic/env-util.c 115--- a/src/basic/env-util.c
116+++ b/src/basic/env-util.c 116+++ b/src/basic/env-util.c
117@@ -19,6 +19,7 @@ 117@@ -19,6 +19,7 @@
@@ -123,7 +123,7 @@ index d3bf73385f..16b17358ca 100644
123 /* We follow bash for the character set. Different shells have different rules. */ 123 /* We follow bash for the character set. Different shells have different rules. */
124 #define VALID_BASH_ENV_NAME_CHARS \ 124 #define VALID_BASH_ENV_NAME_CHARS \
125diff --git a/src/basic/log.c b/src/basic/log.c 125diff --git a/src/basic/log.c b/src/basic/log.c
126index 1470611a75..9924ec2b9a 100644 126index 7a443005f6..eed69a48ee 100644
127--- a/src/basic/log.c 127--- a/src/basic/log.c
128+++ b/src/basic/log.c 128+++ b/src/basic/log.c
129@@ -40,6 +40,7 @@ 129@@ -40,6 +40,7 @@
@@ -251,7 +251,7 @@ index f9014dc560..1d7840a5b5 100644
251 static clockid_t map_clock_id(clockid_t c) { 251 static clockid_t map_clock_id(clockid_t c) {
252 252
253diff --git a/src/boot/bless-boot.c b/src/boot/bless-boot.c 253diff --git a/src/boot/bless-boot.c b/src/boot/bless-boot.c
254index 0c0b4f23c7..68fe5ca509 100644 254index 12dfdf76fa..e66332519a 100644
255--- a/src/boot/bless-boot.c 255--- a/src/boot/bless-boot.c
256+++ b/src/boot/bless-boot.c 256+++ b/src/boot/bless-boot.c
257@@ -22,6 +22,7 @@ 257@@ -22,6 +22,7 @@
@@ -263,7 +263,7 @@ index 0c0b4f23c7..68fe5ca509 100644
263 static char **arg_path = NULL; 263 static char **arg_path = NULL;
264 264
265diff --git a/src/core/dbus-cgroup.c b/src/core/dbus-cgroup.c 265diff --git a/src/core/dbus-cgroup.c b/src/core/dbus-cgroup.c
266index 4237e694c0..05f9d9d9a9 100644 266index 8a9570fd21..ac4202e5ce 100644
267--- a/src/core/dbus-cgroup.c 267--- a/src/core/dbus-cgroup.c
268+++ b/src/core/dbus-cgroup.c 268+++ b/src/core/dbus-cgroup.c
269@@ -25,6 +25,7 @@ 269@@ -25,6 +25,7 @@
@@ -275,7 +275,7 @@ index 4237e694c0..05f9d9d9a9 100644
275 275
276 BUS_DEFINE_PROPERTY_GET(bus_property_get_tasks_max, "t", CGroupTasksMax, cgroup_tasks_max_resolve); 276 BUS_DEFINE_PROPERTY_GET(bus_property_get_tasks_max, "t", CGroupTasksMax, cgroup_tasks_max_resolve);
277diff --git a/src/core/dbus-execute.c b/src/core/dbus-execute.c 277diff --git a/src/core/dbus-execute.c b/src/core/dbus-execute.c
278index 4daa1cefd3..2c77901471 100644 278index 2d05ba7e1d..61a7de0037 100644
279--- a/src/core/dbus-execute.c 279--- a/src/core/dbus-execute.c
280+++ b/src/core/dbus-execute.c 280+++ b/src/core/dbus-execute.c
281@@ -42,6 +42,7 @@ 281@@ -42,6 +42,7 @@
@@ -287,10 +287,10 @@ index 4daa1cefd3..2c77901471 100644
287 BUS_DEFINE_PROPERTY_GET_ENUM(bus_property_get_exec_output, exec_output, ExecOutput); 287 BUS_DEFINE_PROPERTY_GET_ENUM(bus_property_get_exec_output, exec_output, ExecOutput);
288 static BUS_DEFINE_PROPERTY_GET_ENUM(property_get_exec_input, exec_input, ExecInput); 288 static BUS_DEFINE_PROPERTY_GET_ENUM(property_get_exec_input, exec_input, ExecInput);
289diff --git a/src/core/dbus-util.c b/src/core/dbus-util.c 289diff --git a/src/core/dbus-util.c b/src/core/dbus-util.c
290index d680a64268..e59f48103e 100644 290index 7bb026af48..a86128e40c 100644
291--- a/src/core/dbus-util.c 291--- a/src/core/dbus-util.c
292+++ b/src/core/dbus-util.c 292+++ b/src/core/dbus-util.c
293@@ -9,6 +9,7 @@ 293@@ -10,6 +10,7 @@
294 #include "unit-printf.h" 294 #include "unit-printf.h"
295 #include "user-util.h" 295 #include "user-util.h"
296 #include "unit.h" 296 #include "unit.h"
@@ -299,7 +299,7 @@ index d680a64268..e59f48103e 100644
299 int bus_property_get_triggered_unit( 299 int bus_property_get_triggered_unit(
300 sd_bus *bus, 300 sd_bus *bus,
301diff --git a/src/core/execute.c b/src/core/execute.c 301diff --git a/src/core/execute.c b/src/core/execute.c
302index ef0bf88687..bd3da0c401 100644 302index 8dbdfcf369..531bec4c92 100644
303--- a/src/core/execute.c 303--- a/src/core/execute.c
304+++ b/src/core/execute.c 304+++ b/src/core/execute.c
305@@ -72,6 +72,7 @@ 305@@ -72,6 +72,7 @@
@@ -323,7 +323,7 @@ index b8e3f7aadd..8ce8ca68d8 100644
323 #if HAVE_KMOD 323 #if HAVE_KMOD
324 #include "module-util.h" 324 #include "module-util.h"
325diff --git a/src/core/service.c b/src/core/service.c 325diff --git a/src/core/service.c b/src/core/service.c
326index b9eb40c555..268fe7573b 100644 326index 42fffbbd67..80a8d05a19 100644
327--- a/src/core/service.c 327--- a/src/core/service.c
328+++ b/src/core/service.c 328+++ b/src/core/service.c
329@@ -45,6 +45,7 @@ 329@@ -45,6 +45,7 @@
@@ -359,7 +359,7 @@ index 016f3baa7f..b1def81313 100644
359 typedef enum MountPointFlags { 359 typedef enum MountPointFlags {
360 MOUNT_NOAUTO = 1 << 0, 360 MOUNT_NOAUTO = 1 << 0,
361diff --git a/src/journal-remote/journal-remote-main.c b/src/journal-remote/journal-remote-main.c 361diff --git a/src/journal-remote/journal-remote-main.c b/src/journal-remote/journal-remote-main.c
362index da0f20d3ce..f22ce41908 100644 362index 2d380bc7a7..d3f5612728 100644
363--- a/src/journal-remote/journal-remote-main.c 363--- a/src/journal-remote/journal-remote-main.c
364+++ b/src/journal-remote/journal-remote-main.c 364+++ b/src/journal-remote/journal-remote-main.c
365@@ -27,6 +27,7 @@ 365@@ -27,6 +27,7 @@
@@ -371,7 +371,7 @@ index da0f20d3ce..f22ce41908 100644
371 #define PRIV_KEY_FILE CERTIFICATE_ROOT "/private/journal-remote.pem" 371 #define PRIV_KEY_FILE CERTIFICATE_ROOT "/private/journal-remote.pem"
372 #define CERT_FILE CERTIFICATE_ROOT "/certs/journal-remote.pem" 372 #define CERT_FILE CERTIFICATE_ROOT "/certs/journal-remote.pem"
373diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c 373diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c
374index 7f3dcd56a4..41b7cbaaf1 100644 374index 87e2f28841..58275f41f1 100644
375--- a/src/journal/journalctl.c 375--- a/src/journal/journalctl.c
376+++ b/src/journal/journalctl.c 376+++ b/src/journal/journalctl.c
377@@ -77,6 +77,7 @@ 377@@ -77,6 +77,7 @@
@@ -383,7 +383,7 @@ index 7f3dcd56a4..41b7cbaaf1 100644
383 #define DEFAULT_FSS_INTERVAL_USEC (15*USEC_PER_MINUTE) 383 #define DEFAULT_FSS_INTERVAL_USEC (15*USEC_PER_MINUTE)
384 #define PROCESS_INOTIFY_INTERVAL 1024 /* Every 1,024 messages processed */ 384 #define PROCESS_INOTIFY_INTERVAL 1024 /* Every 1,024 messages processed */
385diff --git a/src/libsystemd/sd-bus/bus-message.c b/src/libsystemd/sd-bus/bus-message.c 385diff --git a/src/libsystemd/sd-bus/bus-message.c b/src/libsystemd/sd-bus/bus-message.c
386index ff0228081f..9066fcb133 100644 386index ab8b06896d..43f9131205 100644
387--- a/src/libsystemd/sd-bus/bus-message.c 387--- a/src/libsystemd/sd-bus/bus-message.c
388+++ b/src/libsystemd/sd-bus/bus-message.c 388+++ b/src/libsystemd/sd-bus/bus-message.c
389@@ -19,6 +19,7 @@ 389@@ -19,6 +19,7 @@
@@ -407,7 +407,7 @@ index c25c40ff37..57a5da704f 100644
407 static int node_vtable_get_userdata( 407 static int node_vtable_get_userdata(
408 sd_bus *bus, 408 sd_bus *bus,
409diff --git a/src/libsystemd/sd-bus/bus-socket.c b/src/libsystemd/sd-bus/bus-socket.c 409diff --git a/src/libsystemd/sd-bus/bus-socket.c b/src/libsystemd/sd-bus/bus-socket.c
410index 3c59d0d615..746922d46f 100644 410index 5ade8e99aa..7553cf319d 100644
411--- a/src/libsystemd/sd-bus/bus-socket.c 411--- a/src/libsystemd/sd-bus/bus-socket.c
412+++ b/src/libsystemd/sd-bus/bus-socket.c 412+++ b/src/libsystemd/sd-bus/bus-socket.c
413@@ -29,6 +29,7 @@ 413@@ -29,6 +29,7 @@
@@ -419,7 +419,7 @@ index 3c59d0d615..746922d46f 100644
419 #define SNDBUF_SIZE (8*1024*1024) 419 #define SNDBUF_SIZE (8*1024*1024)
420 420
421diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c 421diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c
422index 4a0259f8bb..aaa90d2223 100644 422index 8befc97460..6ee4d4f595 100644
423--- a/src/libsystemd/sd-bus/sd-bus.c 423--- a/src/libsystemd/sd-bus/sd-bus.c
424+++ b/src/libsystemd/sd-bus/sd-bus.c 424+++ b/src/libsystemd/sd-bus/sd-bus.c
425@@ -46,6 +46,7 @@ 425@@ -46,6 +46,7 @@
@@ -443,7 +443,7 @@ index d988588de0..458df8df9a 100644
443 #define MAX_SIZE (2*1024*1024) 443 #define MAX_SIZE (2*1024*1024)
444 444
445diff --git a/src/libsystemd/sd-journal/sd-journal.c b/src/libsystemd/sd-journal/sd-journal.c 445diff --git a/src/libsystemd/sd-journal/sd-journal.c b/src/libsystemd/sd-journal/sd-journal.c
446index 6b9ff0a4ed..4a5027ad0f 100644 446index 7a1dd2569f..d187baad47 100644
447--- a/src/libsystemd/sd-journal/sd-journal.c 447--- a/src/libsystemd/sd-journal/sd-journal.c
448+++ b/src/libsystemd/sd-journal/sd-journal.c 448+++ b/src/libsystemd/sd-journal/sd-journal.c
449@@ -44,6 +44,7 @@ 449@@ -44,6 +44,7 @@
@@ -455,7 +455,7 @@ index 6b9ff0a4ed..4a5027ad0f 100644
455 #define JOURNAL_FILES_RECHECK_USEC (2 * USEC_PER_SEC) 455 #define JOURNAL_FILES_RECHECK_USEC (2 * USEC_PER_SEC)
456 456
457diff --git a/src/login/pam_systemd.c b/src/login/pam_systemd.c 457diff --git a/src/login/pam_systemd.c b/src/login/pam_systemd.c
458index b8da266e27..4bb8dd9496 100644 458index bf45974ca5..2cb7e930c0 100644
459--- a/src/login/pam_systemd.c 459--- a/src/login/pam_systemd.c
460+++ b/src/login/pam_systemd.c 460+++ b/src/login/pam_systemd.c
461@@ -35,6 +35,7 @@ 461@@ -35,6 +35,7 @@
@@ -503,10 +503,10 @@ index c64e79bdff..eda26b0b9a 100644
503 static void setup_logging_once(void) { 503 static void setup_logging_once(void) {
504 static pthread_once_t once = PTHREAD_ONCE_INIT; 504 static pthread_once_t once = PTHREAD_ONCE_INIT;
505diff --git a/src/portable/portable.c b/src/portable/portable.c 505diff --git a/src/portable/portable.c b/src/portable/portable.c
506index d4b448a627..bb26623565 100644 506index 3b2a37912f..835a3fdeaa 100644
507--- a/src/portable/portable.c 507--- a/src/portable/portable.c
508+++ b/src/portable/portable.c 508+++ b/src/portable/portable.c
509@@ -40,6 +40,7 @@ 509@@ -42,6 +42,7 @@
510 #include "strv.h" 510 #include "strv.h"
511 #include "tmpfile-util.h" 511 #include "tmpfile-util.h"
512 #include "user-util.h" 512 #include "user-util.h"
@@ -551,7 +551,7 @@ index 8b462b5627..183ce1c18e 100644
551 struct CGroupInfo { 551 struct CGroupInfo {
552 char *cgroup_path; 552 char *cgroup_path;
553diff --git a/src/shared/bus-unit-util.c b/src/shared/bus-unit-util.c 553diff --git a/src/shared/bus-unit-util.c b/src/shared/bus-unit-util.c
554index 4ee9706847..30c8084847 100644 554index 50de98941f..d47beccb0b 100644
555--- a/src/shared/bus-unit-util.c 555--- a/src/shared/bus-unit-util.c
556+++ b/src/shared/bus-unit-util.c 556+++ b/src/shared/bus-unit-util.c
557@@ -50,6 +50,7 @@ 557@@ -50,6 +50,7 @@
@@ -599,7 +599,7 @@ index 83e9834bbf..74eaae6f5e 100644
599 enum { 599 enum {
600 IMPORTER_STATE_LINE = 0, /* waiting to read, or reading line */ 600 IMPORTER_STATE_LINE = 0, /* waiting to read, or reading line */
601diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c 601diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c
602index a5d04003bd..10392c132d 100644 602index 0a31be382f..92d629e7e0 100644
603--- a/src/shared/logs-show.c 603--- a/src/shared/logs-show.c
604+++ b/src/shared/logs-show.c 604+++ b/src/shared/logs-show.c
605@@ -41,6 +41,7 @@ 605@@ -41,6 +41,7 @@
@@ -683,7 +683,7 @@ index ed22c8b679..19ebe20237 100644
683 UdevEvent *udev_event_new(sd_device *dev, usec_t exec_delay_usec, sd_netlink *rtnl, int log_level) { 683 UdevEvent *udev_event_new(sd_device *dev, usec_t exec_delay_usec, sd_netlink *rtnl, int log_level) {
684 UdevEvent *event; 684 UdevEvent *event;
685diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c 685diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c
686index 5f12002394..febe345b4c 100644 686index c242549654..e5b8df5c2d 100644
687--- a/src/udev/udev-rules.c 687--- a/src/udev/udev-rules.c
688+++ b/src/udev/udev-rules.c 688+++ b/src/udev/udev-rules.c
689@@ -41,6 +41,7 @@ 689@@ -41,6 +41,7 @@
@@ -694,6 +694,3 @@ index 5f12002394..febe345b4c 100644
694 694
695 #define RULES_DIRS ((const char* const*) CONF_PATHS_STRV("udev/rules.d")) 695 #define RULES_DIRS ((const char* const*) CONF_PATHS_STRV("udev/rules.d"))
696 696
697--
6982.34.1
699
diff --git a/meta/recipes-core/systemd/systemd/0004-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch b/meta/recipes-core/systemd/systemd/0004-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
index 15877bea88..15d25e9f19 100644
--- a/meta/recipes-core/systemd/systemd/0004-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
+++ b/meta/recipes-core/systemd/systemd/0004-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
@@ -1,8 +1,7 @@
1From 5325ab5813617f35f03806ec420829dde7104387 Mon Sep 17 00:00:00 2001 1From 2903e42c7cd727a2374d21b78950308de792ebe8 Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com> 2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Mon, 25 Feb 2019 14:56:21 +0800 3Date: Mon, 25 Feb 2019 14:56:21 +0800
4Subject: [PATCH 04/22] don't fail if GLOB_BRACE and GLOB_ALTDIRFUNC is not 4Subject: [PATCH] don't fail if GLOB_BRACE and GLOB_ALTDIRFUNC is not defined
5 defined
6 5
7If the standard library doesn't provide brace 6If the standard library doesn't provide brace
8expansion users just won't get it. 7expansion users just won't get it.
@@ -115,7 +114,7 @@ index 9b3e73cce0..3790ba3be5 100644
115 114
116 (void) rm_rf(template, REMOVE_ROOT|REMOVE_PHYSICAL); 115 (void) rm_rf(template, REMOVE_ROOT|REMOVE_PHYSICAL);
117diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c 116diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c
118index 230ec09b97..2cc5f391d7 100644 117index 6a1c7725a1..138b3ac561 100644
119--- a/src/tmpfiles/tmpfiles.c 118--- a/src/tmpfiles/tmpfiles.c
120+++ b/src/tmpfiles/tmpfiles.c 119+++ b/src/tmpfiles/tmpfiles.c
121@@ -73,6 +73,12 @@ 120@@ -73,6 +73,12 @@
@@ -131,7 +130,7 @@ index 230ec09b97..2cc5f391d7 100644
131 /* This reads all files listed in /etc/tmpfiles.d/?*.conf and creates 130 /* This reads all files listed in /etc/tmpfiles.d/?*.conf and creates
132 * them in the file system. This is intended to be used to create 131 * them in the file system. This is intended to be used to create
133 * properly owned directories beneath /tmp, /var/tmp, /run, which are 132 * properly owned directories beneath /tmp, /var/tmp, /run, which are
134@@ -2434,7 +2440,9 @@ finish: 133@@ -2426,7 +2432,9 @@ finish:
135 134
136 static int glob_item(Context *c, Item *i, action_t action) { 135 static int glob_item(Context *c, Item *i, action_t action) {
137 _cleanup_globfree_ glob_t g = { 136 _cleanup_globfree_ glob_t g = {
@@ -141,7 +140,7 @@ index 230ec09b97..2cc5f391d7 100644
141 }; 140 };
142 int r = 0, k; 141 int r = 0, k;
143 142
144@@ -2461,7 +2469,9 @@ static int glob_item_recursively( 143@@ -2453,7 +2461,9 @@ static int glob_item_recursively(
145 fdaction_t action) { 144 fdaction_t action) {
146 145
147 _cleanup_globfree_ glob_t g = { 146 _cleanup_globfree_ glob_t g = {
@@ -151,6 +150,3 @@ index 230ec09b97..2cc5f391d7 100644
151 }; 150 };
152 int r = 0, k; 151 int r = 0, k;
153 152
154--
1552.34.1
156
diff --git a/meta/recipes-core/systemd/systemd/0005-add-missing-FTW_-macros-for-musl.patch b/meta/recipes-core/systemd/systemd/0005-add-missing-FTW_-macros-for-musl.patch
index a1dfca22cd..deb0e83b6d 100644
--- a/meta/recipes-core/systemd/systemd/0005-add-missing-FTW_-macros-for-musl.patch
+++ b/meta/recipes-core/systemd/systemd/0005-add-missing-FTW_-macros-for-musl.patch
@@ -1,7 +1,7 @@
1From dad7f897c0de654fa5592fda3e90f874639849f9 Mon Sep 17 00:00:00 2001 1From dcd9639657e4122b7665b01a067219f990ee3ace Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com> 2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Mon, 25 Feb 2019 15:00:06 +0800 3Date: Mon, 25 Feb 2019 15:00:06 +0800
4Subject: [PATCH 05/22] add missing FTW_ macros for musl 4Subject: [PATCH] add missing FTW_ macros for musl
5 5
6This is to avoid build failures like below for musl. 6This is to avoid build failures like below for musl.
7 7
@@ -39,6 +39,3 @@ index 8684d064ec..70fc2b5376 100644
39 39
40 static char **list_nftw = NULL; 40 static char **list_nftw = NULL;
41 41
42--
432.34.1
44
diff --git a/meta/recipes-core/systemd/systemd/0006-Use-uintmax_t-for-handling-rlim_t.patch b/meta/recipes-core/systemd/systemd/0006-Use-uintmax_t-for-handling-rlim_t.patch
index 4be14b72ec..f02675604d 100644
--- a/meta/recipes-core/systemd/systemd/0006-Use-uintmax_t-for-handling-rlim_t.patch
+++ b/meta/recipes-core/systemd/systemd/0006-Use-uintmax_t-for-handling-rlim_t.patch
@@ -1,7 +1,7 @@
1From 96e975a2412a20e5f80bd3ab144057d275eb8597 Mon Sep 17 00:00:00 2001 1From c58933386caa8e45b5e814ec4ff210b18ab401da Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com> 2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Mon, 25 Feb 2019 15:12:41 +0800 3Date: Mon, 25 Feb 2019 15:12:41 +0800
4Subject: [PATCH 06/22] Use uintmax_t for handling rlim_t 4Subject: [PATCH] Use uintmax_t for handling rlim_t
5 5
6PRIu{32,64} is not right format to represent rlim_t type 6PRIu{32,64} is not right format to represent rlim_t type
7therefore use %ju and typecast the rlim_t variables to 7therefore use %ju and typecast the rlim_t variables to
@@ -86,10 +86,10 @@ index c1f0b2b974..61c5412582 100644
86 return 1; 86 return 1;
87 } 87 }
88diff --git a/src/core/execute.c b/src/core/execute.c 88diff --git a/src/core/execute.c b/src/core/execute.c
89index bd3da0c401..df1870fd2f 100644 89index 531bec4c92..602a95f674 100644
90--- a/src/core/execute.c 90--- a/src/core/execute.c
91+++ b/src/core/execute.c 91+++ b/src/core/execute.c
92@@ -1045,9 +1045,9 @@ void exec_context_dump(const ExecContext *c, FILE* f, const char *prefix) { 92@@ -1041,9 +1041,9 @@ void exec_context_dump(const ExecContext *c, FILE* f, const char *prefix) {
93 for (unsigned i = 0; i < RLIM_NLIMITS; i++) 93 for (unsigned i = 0; i < RLIM_NLIMITS; i++)
94 if (c->rlimit[i]) { 94 if (c->rlimit[i]) {
95 fprintf(f, "%sLimit%s: " RLIM_FMT "\n", 95 fprintf(f, "%sLimit%s: " RLIM_FMT "\n",
@@ -101,6 +101,3 @@ index bd3da0c401..df1870fd2f 100644
101 } 101 }
102 102
103 if (c->ioprio_set) { 103 if (c->ioprio_set) {
104--
1052.34.1
106
diff --git a/meta/recipes-core/systemd/systemd/0007-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch b/meta/recipes-core/systemd/systemd/0007-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
index 8d6084239e..1d4ce33712 100644
--- a/meta/recipes-core/systemd/systemd/0007-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
+++ b/meta/recipes-core/systemd/systemd/0007-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
@@ -1,7 +1,7 @@
1From 4842cff4f1329f0b5034b529d56f8ad1f234ac4c Mon Sep 17 00:00:00 2001 1From 5bf8235bc5c802908aa5d95740350927d87e953a Mon Sep 17 00:00:00 2001
2From: Andre McCurdy <armccurdy@gmail.com> 2From: Andre McCurdy <armccurdy@gmail.com>
3Date: Tue, 10 Oct 2017 14:33:30 -0700 3Date: Tue, 10 Oct 2017 14:33:30 -0700
4Subject: [PATCH 07/22] don't pass AT_SYMLINK_NOFOLLOW flag to faccessat() 4Subject: [PATCH] don't pass AT_SYMLINK_NOFOLLOW flag to faccessat()
5 5
6Avoid using AT_SYMLINK_NOFOLLOW flag. It doesn't seem like the right 6Avoid using AT_SYMLINK_NOFOLLOW flag. It doesn't seem like the right
7thing to do and it's not portable (not supported by musl). See: 7thing to do and it's not portable (not supported by musl). See:
@@ -31,7 +31,7 @@ Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
31 2 files changed, 23 insertions(+), 4 deletions(-) 31 2 files changed, 23 insertions(+), 4 deletions(-)
32 32
33diff --git a/src/basic/fs-util.h b/src/basic/fs-util.h 33diff --git a/src/basic/fs-util.h b/src/basic/fs-util.h
34index 1023ab73ca..c78ff6f27f 100644 34index 6a1e2e76d1..c3f7235e09 100644
35--- a/src/basic/fs-util.h 35--- a/src/basic/fs-util.h
36+++ b/src/basic/fs-util.h 36+++ b/src/basic/fs-util.h
37@@ -49,8 +49,27 @@ int futimens_opath(int fd, const struct timespec ts[2]); 37@@ -49,8 +49,27 @@ int futimens_opath(int fd, const struct timespec ts[2]);
@@ -64,7 +64,7 @@ index 1023ab73ca..c78ff6f27f 100644
64 int touch_file(const char *path, bool parents, usec_t stamp, uid_t uid, gid_t gid, mode_t mode); 64 int touch_file(const char *path, bool parents, usec_t stamp, uid_t uid, gid_t gid, mode_t mode);
65 65
66diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c 66diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c
67index 569ef466c3..7ae921a113 100644 67index a4e2dae245..67aa8ea1f2 100644
68--- a/src/shared/base-filesystem.c 68--- a/src/shared/base-filesystem.c
69+++ b/src/shared/base-filesystem.c 69+++ b/src/shared/base-filesystem.c
70@@ -145,7 +145,7 @@ int base_filesystem_create_fd(int fd, const char *root, uid_t uid, gid_t gid) { 70@@ -145,7 +145,7 @@ int base_filesystem_create_fd(int fd, const char *root, uid_t uid, gid_t gid) {
@@ -94,6 +94,3 @@ index 569ef466c3..7ae921a113 100644
94 continue; 94 continue;
95 } 95 }
96 96
97--
982.34.1
99
diff --git a/meta/recipes-core/systemd/systemd/0008-Define-glibc-compatible-basename-for-non-glibc-syste.patch b/meta/recipes-core/systemd/systemd/0008-Define-glibc-compatible-basename-for-non-glibc-syste.patch
index c1a8bb19fe..1ab23553f9 100644
--- a/meta/recipes-core/systemd/systemd/0008-Define-glibc-compatible-basename-for-non-glibc-syste.patch
+++ b/meta/recipes-core/systemd/systemd/0008-Define-glibc-compatible-basename-for-non-glibc-syste.patch
@@ -1,8 +1,7 @@
1From bab07e779ff23d5593bb118efaaa31b60a6dce87 Mon Sep 17 00:00:00 2001 1From d98f6bd4d8acdc4c1a5bff4c699f5004a6ebccce Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 27 May 2018 08:36:44 -0700 3Date: Sun, 27 May 2018 08:36:44 -0700
4Subject: [PATCH 08/22] Define glibc compatible basename() for non-glibc 4Subject: [PATCH] Define glibc compatible basename() for non-glibc systems
5 systems
6 5
7Fixes builds with musl, even though systemd is adamant about 6Fixes builds with musl, even though systemd is adamant about
8using non-posix basename implementation, we have a way out 7using non-posix basename implementation, we have a way out
@@ -29,6 +28,3 @@ index b6d8be3083..0a29036c4c 100644
29 static inline char* strstr_ptr(const char *haystack, const char *needle) { 28 static inline char* strstr_ptr(const char *haystack, const char *needle) {
30 if (!haystack || !needle) 29 if (!haystack || !needle)
31 return NULL; 30 return NULL;
32--
332.34.1
34
diff --git a/meta/recipes-core/systemd/systemd/0008-implment-systemd-sysv-install-for-OE.patch b/meta/recipes-core/systemd/systemd/0008-implment-systemd-sysv-install-for-OE.patch
index acff18dc43..8b833ce073 100644
--- a/meta/recipes-core/systemd/systemd/0008-implment-systemd-sysv-install-for-OE.patch
+++ b/meta/recipes-core/systemd/systemd/0008-implment-systemd-sysv-install-for-OE.patch
@@ -1,4 +1,4 @@
1From 5712d56f1cd654d2e5d2e9117ff77fe4c299f76b Mon Sep 17 00:00:00 2001 1From 5f89867f2b15f9bd411564d04e660cdeedd370ca Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 5 Sep 2015 06:31:47 +0000 3Date: Sat, 5 Sep 2015 06:31:47 +0000
4Subject: [PATCH] implment systemd-sysv-install for OE 4Subject: [PATCH] implment systemd-sysv-install for OE
@@ -38,6 +38,3 @@ index cb58d8243b..000bdf6165 100755
38 ;; 38 ;;
39 *) 39 *)
40 usage ;; 40 usage ;;
41--
422.39.2
43
diff --git a/meta/recipes-core/systemd/systemd/0009-Do-not-disable-buffering-when-writing-to-oom_score_a.patch b/meta/recipes-core/systemd/systemd/0009-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
index 3ff0177ae3..98ab397eff 100644
--- a/meta/recipes-core/systemd/systemd/0009-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
+++ b/meta/recipes-core/systemd/systemd/0009-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
@@ -1,7 +1,7 @@
1From 25093c5017725b8577c444dfea0f42ad85b43522 Mon Sep 17 00:00:00 2001 1From f3943f58f3c8a9d20dcada56eb5ca5f673a49b3d Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com> 2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Wed, 4 Jul 2018 15:00:44 +0800 3Date: Wed, 4 Jul 2018 15:00:44 +0800
4Subject: [PATCH 09/22] Do not disable buffering when writing to oom_score_adj 4Subject: [PATCH] Do not disable buffering when writing to oom_score_adj
5 5
6On musl, disabling buffering when writing to oom_score_adj will 6On musl, disabling buffering when writing to oom_score_adj will
7cause the following error. 7cause the following error.
@@ -24,7 +24,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
24 1 file changed, 1 insertion(+), 1 deletion(-) 24 1 file changed, 1 insertion(+), 1 deletion(-)
25 25
26diff --git a/src/basic/process-util.c b/src/basic/process-util.c 26diff --git a/src/basic/process-util.c b/src/basic/process-util.c
27index 201c5596ae..ea51595b6c 100644 27index 4492e7ded2..b61a2aba74 100644
28--- a/src/basic/process-util.c 28--- a/src/basic/process-util.c
29+++ b/src/basic/process-util.c 29+++ b/src/basic/process-util.c
30@@ -1716,7 +1716,7 @@ int set_oom_score_adjust(int value) { 30@@ -1716,7 +1716,7 @@ int set_oom_score_adjust(int value) {
@@ -36,6 +36,3 @@ index 201c5596ae..ea51595b6c 100644
36 } 36 }
37 37
38 int get_oom_score_adjust(int *ret) { 38 int get_oom_score_adjust(int *ret) {
39--
402.34.1
41
diff --git a/meta/recipes-core/systemd/systemd/0010-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch b/meta/recipes-core/systemd/systemd/0010-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
index cf59ac7d06..e1ffe4ddb5 100644
--- a/meta/recipes-core/systemd/systemd/0010-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
+++ b/meta/recipes-core/systemd/systemd/0010-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
@@ -1,7 +1,7 @@
1From 2adbe9773cd65c48eec9df96868d4a738927c8d9 Mon Sep 17 00:00:00 2001 1From 5305c5f18236a9d7f2e633ea6ad317e09e8f29d5 Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com> 2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Tue, 10 Jul 2018 15:40:17 +0800 3Date: Tue, 10 Jul 2018 15:40:17 +0800
4Subject: [PATCH 10/22] distinguish XSI-compliant strerror_r from GNU-specifi 4Subject: [PATCH] distinguish XSI-compliant strerror_r from GNU-specifi
5 strerror_r 5 strerror_r
6 6
7XSI-compliant strerror_r and GNU-specifi strerror_r are different. 7XSI-compliant strerror_r and GNU-specifi strerror_r are different.
@@ -24,10 +24,10 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
24 2 files changed, 15 insertions(+), 1 deletion(-) 24 2 files changed, 15 insertions(+), 1 deletion(-)
25 25
26diff --git a/src/libsystemd/sd-bus/bus-error.c b/src/libsystemd/sd-bus/bus-error.c 26diff --git a/src/libsystemd/sd-bus/bus-error.c b/src/libsystemd/sd-bus/bus-error.c
27index 77b2e1a0fd..fdba0e0142 100644 27index f415797700..a5c6e9a3bd 100644
28--- a/src/libsystemd/sd-bus/bus-error.c 28--- a/src/libsystemd/sd-bus/bus-error.c
29+++ b/src/libsystemd/sd-bus/bus-error.c 29+++ b/src/libsystemd/sd-bus/bus-error.c
30@@ -408,7 +408,12 @@ static void bus_error_strerror(sd_bus_error *e, int error) { 30@@ -410,7 +410,12 @@ static void bus_error_strerror(sd_bus_error *e, int error) {
31 return; 31 return;
32 32
33 errno = 0; 33 errno = 0;
@@ -40,7 +40,7 @@ index 77b2e1a0fd..fdba0e0142 100644
40 if (errno == ERANGE || strlen(x) >= k - 1) { 40 if (errno == ERANGE || strlen(x) >= k - 1) {
41 free(m); 41 free(m);
42 k *= 2; 42 k *= 2;
43@@ -593,8 +598,12 @@ const char* _bus_error_message(const sd_bus_error *e, int error, char buf[static 43@@ -595,8 +600,12 @@ const char* _bus_error_message(const sd_bus_error *e, int error, char buf[static
44 44
45 if (e && e->message) 45 if (e && e->message)
46 return e->message; 46 return e->message;
@@ -71,6 +71,3 @@ index 69a2eb6404..1561859650 100644
71 if (errno == 0) { 71 if (errno == 0) {
72 char error[STRLEN("ERRNO=") + DECIMAL_STR_MAX(int) + 1]; 72 char error[STRLEN("ERRNO=") + DECIMAL_STR_MAX(int) + 1];
73 73
74--
752.34.1
76
diff --git a/meta/recipes-core/systemd/systemd/0011-avoid-redefinition-of-prctl_mm_map-structure.patch b/meta/recipes-core/systemd/systemd/0011-avoid-redefinition-of-prctl_mm_map-structure.patch
index e481b2e2e4..3075f9d003 100644
--- a/meta/recipes-core/systemd/systemd/0011-avoid-redefinition-of-prctl_mm_map-structure.patch
+++ b/meta/recipes-core/systemd/systemd/0011-avoid-redefinition-of-prctl_mm_map-structure.patch
@@ -1,7 +1,7 @@
1From 49c446cfb78cf74a909bed8c3798b77a5469866a Mon Sep 17 00:00:00 2001 1From c866c8652f06af4cd0b9bd7eedc606449f432b95 Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com> 2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Mon, 25 Feb 2019 15:44:54 +0800 3Date: Mon, 25 Feb 2019 15:44:54 +0800
4Subject: [PATCH 11/22] avoid redefinition of prctl_mm_map structure 4Subject: [PATCH] avoid redefinition of prctl_mm_map structure
5 5
6Fix the following compile failure: 6Fix the following compile failure:
7error: redefinition of 'struct prctl_mm_map' 7error: redefinition of 'struct prctl_mm_map'
@@ -27,6 +27,3 @@ index 7d9e395c92..88c2d7dfac 100644
27 27
28 /* 58319057b7847667f0c9585b9de0e8932b0fdb08 (4.3) */ 28 /* 58319057b7847667f0c9585b9de0e8932b0fdb08 (4.3) */
29 #ifndef PR_CAP_AMBIENT 29 #ifndef PR_CAP_AMBIENT
30--
312.34.1
32
diff --git a/meta/recipes-core/systemd/systemd/0012-do-not-disable-buffer-in-writing-files.patch b/meta/recipes-core/systemd/systemd/0012-do-not-disable-buffer-in-writing-files.patch
index 66be79077e..0fec84724d 100644
--- a/meta/recipes-core/systemd/systemd/0012-do-not-disable-buffer-in-writing-files.patch
+++ b/meta/recipes-core/systemd/systemd/0012-do-not-disable-buffer-in-writing-files.patch
@@ -1,7 +1,7 @@
1From e4885a8e60f883d9217e26e1db3754c2906aca31 Mon Sep 17 00:00:00 2001 1From 8464b845e6df1be303e09274c13e653072701671 Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com> 2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Fri, 1 Mar 2019 15:22:15 +0800 3Date: Fri, 1 Mar 2019 15:22:15 +0800
4Subject: [PATCH 12/22] do not disable buffer in writing files 4Subject: [PATCH] do not disable buffer in writing files
5 5
6Do not disable buffer in writing files, otherwise we get 6Do not disable buffer in writing files, otherwise we get
7failure at boot for musl like below. 7failure at boot for musl like below.
@@ -201,7 +201,7 @@ index 61ac4df1a6..ea18970196 100644
201 return r; 201 return r;
202 202
203diff --git a/src/core/main.c b/src/core/main.c 203diff --git a/src/core/main.c b/src/core/main.c
204index 3f71cc0947..0e5aec3e9e 100644 204index 1c0030a75f..7108a87d46 100644
205--- a/src/core/main.c 205--- a/src/core/main.c
206+++ b/src/core/main.c 206+++ b/src/core/main.c
207@@ -1678,7 +1678,7 @@ static void initialize_core_pattern(bool skip_setup) { 207@@ -1678,7 +1678,7 @@ static void initialize_core_pattern(bool skip_setup) {
@@ -253,7 +253,7 @@ index 066483e342..5f92dd7064 100644
253 log_warning_errno(r, "Failed to drop caches, ignoring: %m"); 253 log_warning_errno(r, "Failed to drop caches, ignoring: %m");
254 else 254 else
255diff --git a/src/libsystemd/sd-device/sd-device.c b/src/libsystemd/sd-device/sd-device.c 255diff --git a/src/libsystemd/sd-device/sd-device.c b/src/libsystemd/sd-device/sd-device.c
256index 2fbc619a34..09d9591e37 100644 256index 01e66b4658..f3ea82ca1b 100644
257--- a/src/libsystemd/sd-device/sd-device.c 257--- a/src/libsystemd/sd-device/sd-device.c
258+++ b/src/libsystemd/sd-device/sd-device.c 258+++ b/src/libsystemd/sd-device/sd-device.c
259@@ -2516,7 +2516,7 @@ _public_ int sd_device_set_sysattr_value(sd_device *device, const char *sysattr, 259@@ -2516,7 +2516,7 @@ _public_ int sd_device_set_sysattr_value(sd_device *device, const char *sysattr,
@@ -279,10 +279,10 @@ index a5002437c6..b12e6cd9c9 100644
279 log_error_errno(r, "Failed to move process: %m"); 279 log_error_errno(r, "Failed to move process: %m");
280 goto finish; 280 goto finish;
281diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c 281diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
282index 6ab604d3dc..bbec6b686c 100644 282index 0600f3e014..ea369c32b2 100644
283--- a/src/nspawn/nspawn.c 283--- a/src/nspawn/nspawn.c
284+++ b/src/nspawn/nspawn.c 284+++ b/src/nspawn/nspawn.c
285@@ -2688,7 +2688,7 @@ static int reset_audit_loginuid(void) { 285@@ -2690,7 +2690,7 @@ static int reset_audit_loginuid(void) {
286 if (streq(p, "4294967295")) 286 if (streq(p, "4294967295"))
287 return 0; 287 return 0;
288 288
@@ -291,7 +291,7 @@ index 6ab604d3dc..bbec6b686c 100644
291 if (r < 0) { 291 if (r < 0) {
292 log_error_errno(r, 292 log_error_errno(r,
293 "Failed to reset audit login UID. This probably means that your kernel is too\n" 293 "Failed to reset audit login UID. This probably means that your kernel is too\n"
294@@ -4141,7 +4141,7 @@ static int setup_uid_map( 294@@ -4143,7 +4143,7 @@ static int setup_uid_map(
295 return log_oom(); 295 return log_oom();
296 296
297 xsprintf(uid_map, "/proc/" PID_FMT "/uid_map", pid); 297 xsprintf(uid_map, "/proc/" PID_FMT "/uid_map", pid);
@@ -300,7 +300,7 @@ index 6ab604d3dc..bbec6b686c 100644
300 if (r < 0) 300 if (r < 0)
301 return log_error_errno(r, "Failed to write UID map: %m"); 301 return log_error_errno(r, "Failed to write UID map: %m");
302 302
303@@ -4151,7 +4151,7 @@ static int setup_uid_map( 303@@ -4153,7 +4153,7 @@ static int setup_uid_map(
304 return log_oom(); 304 return log_oom();
305 305
306 xsprintf(uid_map, "/proc/" PID_FMT "/gid_map", pid); 306 xsprintf(uid_map, "/proc/" PID_FMT "/gid_map", pid);
@@ -367,10 +367,10 @@ index 805503f366..01a7ccb291 100644
367 log_debug_errno(r, "Failed to turn off coredumps, ignoring: %m"); 367 log_debug_errno(r, "Failed to turn off coredumps, ignoring: %m");
368 } 368 }
369diff --git a/src/shared/hibernate-util.c b/src/shared/hibernate-util.c 369diff --git a/src/shared/hibernate-util.c b/src/shared/hibernate-util.c
370index 3eb13d48f6..d09b901be1 100644 370index c3991cfa4c..7d522d8d1f 100644
371--- a/src/shared/hibernate-util.c 371--- a/src/shared/hibernate-util.c
372+++ b/src/shared/hibernate-util.c 372+++ b/src/shared/hibernate-util.c
373@@ -481,7 +481,7 @@ int write_resume_config(dev_t devno, uint64_t offset, const char *device) { 373@@ -501,7 +501,7 @@ int write_resume_config(dev_t devno, uint64_t offset, const char *device) {
374 374
375 /* We write the offset first since it's safer. Note that this file is only available in 4.17+, so 375 /* We write the offset first since it's safer. Note that this file is only available in 4.17+, so
376 * fail gracefully if it doesn't exist and we're only overwriting it with 0. */ 376 * fail gracefully if it doesn't exist and we're only overwriting it with 0. */
@@ -379,7 +379,7 @@ index 3eb13d48f6..d09b901be1 100644
379 if (r == -ENOENT) { 379 if (r == -ENOENT) {
380 if (offset != 0) 380 if (offset != 0)
381 return log_error_errno(SYNTHETIC_ERRNO(EOPNOTSUPP), 381 return log_error_errno(SYNTHETIC_ERRNO(EOPNOTSUPP),
382@@ -497,7 +497,7 @@ int write_resume_config(dev_t devno, uint64_t offset, const char *device) { 382@@ -517,7 +517,7 @@ int write_resume_config(dev_t devno, uint64_t offset, const char *device) {
383 log_debug("Wrote resume_offset=%s for device '%s' to /sys/power/resume_offset.", 383 log_debug("Wrote resume_offset=%s for device '%s' to /sys/power/resume_offset.",
384 offset_str, device); 384 offset_str, device);
385 385
@@ -402,7 +402,7 @@ index 1f88e724d0..feb18b320a 100644
402 return r; 402 return r;
403 403
404diff --git a/src/shared/watchdog.c b/src/shared/watchdog.c 404diff --git a/src/shared/watchdog.c b/src/shared/watchdog.c
405index 4c1a968718..6faf6806a5 100644 405index 99ccefb227..e4975018ab 100644
406--- a/src/shared/watchdog.c 406--- a/src/shared/watchdog.c
407+++ b/src/shared/watchdog.c 407+++ b/src/shared/watchdog.c
408@@ -93,7 +93,7 @@ static int set_pretimeout_governor(const char *governor) { 408@@ -93,7 +93,7 @@ static int set_pretimeout_governor(const char *governor) {
@@ -412,10 +412,10 @@ index 4c1a968718..6faf6806a5 100644
412- WRITE_STRING_FILE_DISABLE_BUFFER | WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_VERIFY_IGNORE_NEWLINE); 412- WRITE_STRING_FILE_DISABLE_BUFFER | WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_VERIFY_IGNORE_NEWLINE);
413+ WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_VERIFY_IGNORE_NEWLINE); 413+ WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_VERIFY_IGNORE_NEWLINE);
414 if (r < 0) 414 if (r < 0)
415 return log_error_errno(r, "Failed to set pretimeout_governor to '%s': %m", governor); 415 return log_error_errno(r, "Failed to set watchdog pretimeout_governor to '%s': %m", governor);
416 416
417diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c 417diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c
418index 21af3e9e52..6d4b84b5d5 100644 418index 21062b24e0..262dd71d72 100644
419--- a/src/sleep/sleep.c 419--- a/src/sleep/sleep.c
420+++ b/src/sleep/sleep.c 420+++ b/src/sleep/sleep.c
421@@ -137,7 +137,7 @@ static int write_state(int fd, char * const *states) { 421@@ -137,7 +137,7 @@ static int write_state(int fd, char * const *states) {
@@ -437,7 +437,7 @@ index 21af3e9e52..6d4b84b5d5 100644
437 log_debug("Using sleep disk mode '%s'.", *mode); 437 log_debug("Using sleep disk mode '%s'.", *mode);
438 return 0; 438 return 0;
439diff --git a/src/storagetm/storagetm.c b/src/storagetm/storagetm.c 439diff --git a/src/storagetm/storagetm.c b/src/storagetm/storagetm.c
440index ae63baaf79..82eeca479a 100644 440index 16d4fb07d4..aca7506463 100644
441--- a/src/storagetm/storagetm.c 441--- a/src/storagetm/storagetm.c
442+++ b/src/storagetm/storagetm.c 442+++ b/src/storagetm/storagetm.c
443@@ -186,7 +186,7 @@ static int nvme_subsystem_unlink(NvmeSubsystem *s) { 443@@ -186,7 +186,7 @@ static int nvme_subsystem_unlink(NvmeSubsystem *s) {
@@ -533,7 +533,7 @@ index ae63baaf79..82eeca479a 100644
533 return log_error_errno(r, "Failed to set IP address on NVME port %" PRIu16 ": %m", portnr); 533 return log_error_errno(r, "Failed to set IP address on NVME port %" PRIu16 ": %m", portnr);
534 534
535diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c 535diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c
536index febe345b4c..a90b610ba1 100644 536index e5b8df5c2d..63ca15628c 100644
537--- a/src/udev/udev-rules.c 537--- a/src/udev/udev-rules.c
538+++ b/src/udev/udev-rules.c 538+++ b/src/udev/udev-rules.c
539@@ -2711,7 +2711,6 @@ static int udev_rule_apply_token_to_event( 539@@ -2711,7 +2711,6 @@ static int udev_rule_apply_token_to_event(
@@ -557,6 +557,3 @@ index 4d82c65f0a..3a3d861b83 100644
557 if (r < 0) 557 if (r < 0)
558 return log_warning_errno(r, "Failed to %s sysfs UTF-8 flag: %m", enable_disable(utf8)); 558 return log_warning_errno(r, "Failed to %s sysfs UTF-8 flag: %m", enable_disable(utf8));
559 559
560--
5612.34.1
562
diff --git a/meta/recipes-core/systemd/systemd/0013-Handle-__cpu_mask-usage.patch b/meta/recipes-core/systemd/systemd/0013-Handle-__cpu_mask-usage.patch
index 43f75373a6..6d7e002d61 100644
--- a/meta/recipes-core/systemd/systemd/0013-Handle-__cpu_mask-usage.patch
+++ b/meta/recipes-core/systemd/systemd/0013-Handle-__cpu_mask-usage.patch
@@ -1,7 +1,7 @@
1From 2f90f8463423cfbb7e83fcef42f1071018c3b56e Mon Sep 17 00:00:00 2001 1From f6b69f28657c09b1181552d85e52ced0e01182e3 Mon Sep 17 00:00:00 2001
2From: Scott Murray <scott.murray@konsulko.com> 2From: Scott Murray <scott.murray@konsulko.com>
3Date: Fri, 13 Sep 2019 19:26:27 -0400 3Date: Fri, 13 Sep 2019 19:26:27 -0400
4Subject: [PATCH 13/22] Handle __cpu_mask usage 4Subject: [PATCH] Handle __cpu_mask usage
5 5
6Fixes errors: 6Fixes errors:
7 7
@@ -55,6 +55,3 @@ index ea0c58770e..b65c0bd370 100644
55 55
56 /* Print information about various types. Useful when diagnosing 56 /* Print information about various types. Useful when diagnosing
57 * gcc diagnostics on an unfamiliar architecture. */ 57 * gcc diagnostics on an unfamiliar architecture. */
58--
592.34.1
60
diff --git a/meta/recipes-core/systemd/systemd/0014-Handle-missing-gshadow.patch b/meta/recipes-core/systemd/systemd/0014-Handle-missing-gshadow.patch
index a751e1ba6f..40b60399aa 100644
--- a/meta/recipes-core/systemd/systemd/0014-Handle-missing-gshadow.patch
+++ b/meta/recipes-core/systemd/systemd/0014-Handle-missing-gshadow.patch
@@ -1,7 +1,7 @@
1From b7c827bb44edbb6251c9fcdb80aa03982c0e7bf3 Mon Sep 17 00:00:00 2001 1From 5442d8ddb285d33b459aefc76962640afd131280 Mon Sep 17 00:00:00 2001
2From: Alex Kiernan <alex.kiernan@gmail.com> 2From: Alex Kiernan <alex.kiernan@gmail.com>
3Date: Tue, 10 Mar 2020 11:05:20 +0000 3Date: Tue, 10 Mar 2020 11:05:20 +0000
4Subject: [PATCH 14/22] Handle missing gshadow 4Subject: [PATCH] Handle missing gshadow
5 5
6gshadow usage is now present in the userdb code. Mask all uses of it to 6gshadow usage is now present in the userdb code. Mask all uses of it to
7allow compilation on musl 7allow compilation on musl
@@ -168,6 +168,3 @@ index f60d48ace4..e878199a28 100644
168 if (r < 0) 168 if (r < 0)
169 return r; 169 return r;
170 170
171--
1722.34.1
173
diff --git a/meta/recipes-core/systemd/systemd/0015-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch b/meta/recipes-core/systemd/systemd/0015-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch
index e112766a9b..51f0b048fa 100644
--- a/meta/recipes-core/systemd/systemd/0015-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch
+++ b/meta/recipes-core/systemd/systemd/0015-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch
@@ -1,7 +1,7 @@
1From 3dc9d9d410bcce54fddfd94f43f7f77f3aa8e281 Mon Sep 17 00:00:00 2001 1From 863dd6f502d53a4a2644e031eee2e8dfa3fd05aa Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 12 Apr 2021 23:44:53 -0700 3Date: Mon, 12 Apr 2021 23:44:53 -0700
4Subject: [PATCH 15/22] missing_syscall.h: Define MIPS ABI defines for musl 4Subject: [PATCH] missing_syscall.h: Define MIPS ABI defines for musl
5 5
6musl does not define _MIPS_SIM_ABI32, _MIPS_SIM_NABI32, _MIPS_SIM_ABI64 6musl does not define _MIPS_SIM_ABI32, _MIPS_SIM_NABI32, _MIPS_SIM_ABI64
7unlike glibc where these are provided by libc headers, therefore define 7unlike glibc where these are provided by libc headers, therefore define
@@ -16,7 +16,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
16 2 files changed, 7 insertions(+) 16 2 files changed, 7 insertions(+)
17 17
18diff --git a/src/basic/missing_syscall.h b/src/basic/missing_syscall.h 18diff --git a/src/basic/missing_syscall.h b/src/basic/missing_syscall.h
19index d795efd8f2..d6729d3c1d 100644 19index 86280771c4..20d05db506 100644
20--- a/src/basic/missing_syscall.h 20--- a/src/basic/missing_syscall.h
21+++ b/src/basic/missing_syscall.h 21+++ b/src/basic/missing_syscall.h
22@@ -20,6 +20,12 @@ 22@@ -20,6 +20,12 @@
@@ -33,7 +33,7 @@ index d795efd8f2..d6729d3c1d 100644
33 #include "missing_keyctl.h" 33 #include "missing_keyctl.h"
34 #include "missing_stat.h" 34 #include "missing_stat.h"
35diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c 35diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c
36index 7ae921a113..0ef9d1fd39 100644 36index 67aa8ea1f2..8d9824495e 100644
37--- a/src/shared/base-filesystem.c 37--- a/src/shared/base-filesystem.c
38+++ b/src/shared/base-filesystem.c 38+++ b/src/shared/base-filesystem.c
39@@ -20,6 +20,7 @@ 39@@ -20,6 +20,7 @@
@@ -44,6 +44,3 @@ index 7ae921a113..0ef9d1fd39 100644
44 44
45 typedef struct BaseFilesystem { 45 typedef struct BaseFilesystem {
46 const char *dir; /* directory or symlink to create */ 46 const char *dir; /* directory or symlink to create */
47--
482.34.1
49
diff --git a/meta/recipes-core/systemd/systemd/0016-pass-correct-parameters-to-getdents64.patch b/meta/recipes-core/systemd/systemd/0016-pass-correct-parameters-to-getdents64.patch
index 0be817e62d..66b8f66806 100644
--- a/meta/recipes-core/systemd/systemd/0016-pass-correct-parameters-to-getdents64.patch
+++ b/meta/recipes-core/systemd/systemd/0016-pass-correct-parameters-to-getdents64.patch
@@ -1,7 +1,7 @@
1From 0994b59dba9f248ad31cb7087046dc00b72cb4ea Mon Sep 17 00:00:00 2001 1From 01de9e5a6e4ad2f361d3eb4d9839c7afd91cc677 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 21 Jan 2022 15:15:11 -0800 3Date: Fri, 21 Jan 2022 15:15:11 -0800
4Subject: [PATCH 16/22] pass correct parameters to getdents64 4Subject: [PATCH] pass correct parameters to getdents64
5 5
6Fixes 6Fixes
7../git/src/basic/recurse-dir.c:57:40: error: incompatible pointer types passing 'uint8_t *' (aka 'unsigned char *') to parameter of type 'struct dirent *' [-Werror,-Wincompatible-pointer-types] 7../git/src/basic/recurse-dir.c:57:40: error: incompatible pointer types passing 'uint8_t *' (aka 'unsigned char *') to parameter of type 'struct dirent *' [-Werror,-Wincompatible-pointer-types]
@@ -32,6 +32,3 @@ index 5e98b7a5d8..aef065047b 100644
32 if (n < 0) 32 if (n < 0)
33 return -errno; 33 return -errno;
34 if (n == 0) 34 if (n == 0)
35--
362.34.1
37
diff --git a/meta/recipes-core/systemd/systemd/0017-Adjust-for-musl-headers.patch b/meta/recipes-core/systemd/systemd/0017-Adjust-for-musl-headers.patch
index 4176522a1c..f86b8c889c 100644
--- a/meta/recipes-core/systemd/systemd/0017-Adjust-for-musl-headers.patch
+++ b/meta/recipes-core/systemd/systemd/0017-Adjust-for-musl-headers.patch
@@ -1,7 +1,7 @@
1From 3c094d443ca30f19114392fd8ef274af6eabc12d Mon Sep 17 00:00:00 2001 1From a45cf93772ac5055665cc55454509747b9c68ad2 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 21 Jan 2022 22:19:37 -0800 3Date: Fri, 21 Jan 2022 22:19:37 -0800
4Subject: [PATCH 17/22] Adjust for musl headers 4Subject: [PATCH] Adjust for musl headers
5 5
6Upstream-Status: Inappropriate [musl specific] 6Upstream-Status: Inappropriate [musl specific]
7 7
@@ -425,7 +425,7 @@ index 607fe0053c..9ce4005874 100644
425 425
426 #include "sd-dhcp-server.h" 426 #include "sd-dhcp-server.h"
427diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c 427diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c
428index efbae6d868..1ea2151d50 100644 428index 49c452da7c..98aad1f3cd 100644
429--- a/src/network/networkd-dhcp4.c 429--- a/src/network/networkd-dhcp4.c
430+++ b/src/network/networkd-dhcp4.c 430+++ b/src/network/networkd-dhcp4.c
431@@ -3,7 +3,7 @@ 431@@ -3,7 +3,7 @@
@@ -451,7 +451,7 @@ index 32229a3fc7..662a345d6e 100644
451 #include "in-addr-util.h" 451 #include "in-addr-util.h"
452 #include "networkd-address.h" 452 #include "networkd-address.h"
453diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c 453diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
454index ee5f0f2c0a..ea5269a2de 100644 454index 4ef1be4bad..e5aa53604d 100644
455--- a/src/network/networkd-link.c 455--- a/src/network/networkd-link.c
456+++ b/src/network/networkd-link.c 456+++ b/src/network/networkd-link.c
457@@ -3,7 +3,7 @@ 457@@ -3,7 +3,7 @@
@@ -464,7 +464,7 @@ index ee5f0f2c0a..ea5269a2de 100644
464 #include <linux/netdevice.h> 464 #include <linux/netdevice.h>
465 #include <sys/socket.h> 465 #include <sys/socket.h>
466diff --git a/src/network/networkd-ndisc.c b/src/network/networkd-ndisc.c 466diff --git a/src/network/networkd-ndisc.c b/src/network/networkd-ndisc.c
467index ab9eeb13a5..dd96fe7483 100644 467index 840ccb158d..9f2e85e32f 100644
468--- a/src/network/networkd-ndisc.c 468--- a/src/network/networkd-ndisc.c
469+++ b/src/network/networkd-ndisc.c 469+++ b/src/network/networkd-ndisc.c
470@@ -6,7 +6,7 @@ 470@@ -6,7 +6,7 @@
@@ -477,7 +477,7 @@ index ab9eeb13a5..dd96fe7483 100644
477 #include "sd-ndisc.h" 477 #include "sd-ndisc.h"
478 478
479diff --git a/src/network/networkd-route.c b/src/network/networkd-route.c 479diff --git a/src/network/networkd-route.c b/src/network/networkd-route.c
480index 7218d799fc..30d5574eae 100644 480index eb502ae2cf..5b25ee4523 100644
481--- a/src/network/networkd-route.c 481--- a/src/network/networkd-route.c
482+++ b/src/network/networkd-route.c 482+++ b/src/network/networkd-route.c
483@@ -1,9 +1,5 @@ 483@@ -1,9 +1,5 @@
@@ -502,7 +502,7 @@ index 7218d799fc..30d5574eae 100644
502 _cleanup_(route_freep) Route *route = NULL; 502 _cleanup_(route_freep) Route *route = NULL;
503 503
504diff --git a/src/network/networkd-setlink.c b/src/network/networkd-setlink.c 504diff --git a/src/network/networkd-setlink.c b/src/network/networkd-setlink.c
505index 2298f9ea3a..7d5f87de53 100644 505index 011ea1fe6e..59dfe733eb 100644
506--- a/src/network/networkd-setlink.c 506--- a/src/network/networkd-setlink.c
507+++ b/src/network/networkd-setlink.c 507+++ b/src/network/networkd-setlink.c
508@@ -2,7 +2,7 @@ 508@@ -2,7 +2,7 @@
@@ -567,6 +567,3 @@ index f528a46b8e..830318cda5 100644
567 #include <linux/netdevice.h> 567 #include <linux/netdevice.h>
568 #include <linux/pci_regs.h> 568 #include <linux/pci_regs.h>
569 569
570--
5712.34.1
572
diff --git a/meta/recipes-core/systemd/systemd/0018-test-bus-error-strerror-is-assumed-to-be-GNU-specifi.patch b/meta/recipes-core/systemd/systemd/0018-test-bus-error-strerror-is-assumed-to-be-GNU-specifi.patch
index 75f6b9094a..67388e6807 100644
--- a/meta/recipes-core/systemd/systemd/0018-test-bus-error-strerror-is-assumed-to-be-GNU-specifi.patch
+++ b/meta/recipes-core/systemd/systemd/0018-test-bus-error-strerror-is-assumed-to-be-GNU-specifi.patch
@@ -1,8 +1,8 @@
1From be02bd0876a061728661535a709d313e39fe1ac3 Mon Sep 17 00:00:00 2001 1From 20dfb0b5e7113c2e7f82c01488b419dffe8714ab Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 8 Nov 2022 13:31:34 -0800 3Date: Tue, 8 Nov 2022 13:31:34 -0800
4Subject: [PATCH 18/22] test-bus-error: strerror() is assumed to be GNU 4Subject: [PATCH] test-bus-error: strerror() is assumed to be GNU specific
5 specific version mark it so 5 version mark it so
6 6
7Upstream-Status: Inappropriate [Upstream systemd only supports glibc] 7Upstream-Status: Inappropriate [Upstream systemd only supports glibc]
8 8
@@ -47,6 +47,3 @@ index 376d532281..967cfd4d67 100644
47 47
48 TEST(PROTECT_ERRNO) { 48 TEST(PROTECT_ERRNO) {
49 errno = 12; 49 errno = 12;
50--
512.34.1
52
diff --git a/meta/recipes-core/systemd/systemd/0019-errno-util-Make-STRERROR-portable-for-musl.patch b/meta/recipes-core/systemd/systemd/0019-errno-util-Make-STRERROR-portable-for-musl.patch
index e038b73678..36d468959a 100644
--- a/meta/recipes-core/systemd/systemd/0019-errno-util-Make-STRERROR-portable-for-musl.patch
+++ b/meta/recipes-core/systemd/systemd/0019-errno-util-Make-STRERROR-portable-for-musl.patch
@@ -1,7 +1,7 @@
1From 46d80840bfe37e67d4f18c37a77751ea1fe63a07 Mon Sep 17 00:00:00 2001 1From 32371040c2aa649e23c3b0f2c5ee27995a16526a Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 23 Jan 2023 23:39:46 -0800 3Date: Mon, 23 Jan 2023 23:39:46 -0800
4Subject: [PATCH 19/22] errno-util: Make STRERROR portable for musl 4Subject: [PATCH] errno-util: Make STRERROR portable for musl
5 5
6Sadly, systemd has decided to use yet another GNU extention in a macro 6Sadly, systemd has decided to use yet another GNU extention in a macro
7lets make this such that we can use XSI compliant strerror_r() for 7lets make this such that we can use XSI compliant strerror_r() for
@@ -37,6 +37,3 @@ index 27804e6382..274c1c6ef1 100644
37 /* A helper to print an error message or message for functions that return 0 on EOF. 37 /* A helper to print an error message or message for functions that return 0 on EOF.
38 * Note that we can't use ({ … }) to define a temporary variable, so errnum is 38 * Note that we can't use ({ … }) to define a temporary variable, so errnum is
39 * evaluated twice. */ 39 * evaluated twice. */
40--
412.34.1
42
diff --git a/meta/recipes-core/systemd/systemd/0020-sd-event-Make-malloc_trim-conditional-on-glibc.patch b/meta/recipes-core/systemd/systemd/0020-sd-event-Make-malloc_trim-conditional-on-glibc.patch
index b83fffe793..f860b5f542 100644
--- a/meta/recipes-core/systemd/systemd/0020-sd-event-Make-malloc_trim-conditional-on-glibc.patch
+++ b/meta/recipes-core/systemd/systemd/0020-sd-event-Make-malloc_trim-conditional-on-glibc.patch
@@ -1,7 +1,7 @@
1From 9eb4867b4e2dbdb2484ae854022aff97e2f0feb3 Mon Sep 17 00:00:00 2001 1From 751fb8c9a05115f5329cfa25e69afe7657124c20 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 2 Aug 2023 12:06:27 -0700 3Date: Wed, 2 Aug 2023 12:06:27 -0700
4Subject: [PATCH 20/22] sd-event: Make malloc_trim() conditional on glibc 4Subject: [PATCH] sd-event: Make malloc_trim() conditional on glibc
5 5
6musl does not have this API 6musl does not have this API
7 7
@@ -12,7 +12,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
12 1 file changed, 3 insertions(+), 1 deletion(-) 12 1 file changed, 3 insertions(+), 1 deletion(-)
13 13
14diff --git a/src/libsystemd/sd-event/sd-event.c b/src/libsystemd/sd-event/sd-event.c 14diff --git a/src/libsystemd/sd-event/sd-event.c b/src/libsystemd/sd-event/sd-event.c
15index 288798a0dc..6419a7f216 100644 15index b6899df192..0c03287004 100644
16--- a/src/libsystemd/sd-event/sd-event.c 16--- a/src/libsystemd/sd-event/sd-event.c
17+++ b/src/libsystemd/sd-event/sd-event.c 17+++ b/src/libsystemd/sd-event/sd-event.c
18@@ -1874,7 +1874,7 @@ _public_ int sd_event_add_exit( 18@@ -1874,7 +1874,7 @@ _public_ int sd_event_add_exit(
@@ -34,6 +34,3 @@ index 288798a0dc..6419a7f216 100644
34 usec_t after_timestamp = now(CLOCK_MONOTONIC); 34 usec_t after_timestamp = now(CLOCK_MONOTONIC);
35 35
36 if (r > 0) 36 if (r > 0)
37--
382.34.1
39
diff --git a/meta/recipes-core/systemd/systemd/0021-shared-Do-not-use-malloc_info-on-musl.patch b/meta/recipes-core/systemd/systemd/0021-shared-Do-not-use-malloc_info-on-musl.patch
index 7eff069bb7..ece9873bbc 100644
--- a/meta/recipes-core/systemd/systemd/0021-shared-Do-not-use-malloc_info-on-musl.patch
+++ b/meta/recipes-core/systemd/systemd/0021-shared-Do-not-use-malloc_info-on-musl.patch
@@ -1,7 +1,7 @@
1From 502597b9ddd6b145541b23fadca0b1d3ca9f6367 Mon Sep 17 00:00:00 2001 1From 4fe2a8b1aab7297beac50f6ce46f3df4169de218 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 2 Aug 2023 12:20:40 -0700 3Date: Wed, 2 Aug 2023 12:20:40 -0700
4Subject: [PATCH 21/22] shared: Do not use malloc_info on musl 4Subject: [PATCH] shared: Do not use malloc_info on musl
5 5
6Upstream-Status: Inappropriate [musl-specific] 6Upstream-Status: Inappropriate [musl-specific]
7Signed-off-by: Khem Raj <raj.khem@gmail.com> 7Signed-off-by: Khem Raj <raj.khem@gmail.com>
@@ -52,6 +52,3 @@ index 8e70e365dd..9e782caec9 100644
52 (void) memstream_dump(LOG_INFO, &m); 52 (void) memstream_dump(LOG_INFO, &m);
53 break; 53 break;
54 } 54 }
55--
562.34.1
57
diff --git a/meta/recipes-core/systemd/systemd/0022-avoid-missing-LOCK_EX-declaration.patch b/meta/recipes-core/systemd/systemd/0022-avoid-missing-LOCK_EX-declaration.patch
index 24f3bf74a0..f517392e58 100644
--- a/meta/recipes-core/systemd/systemd/0022-avoid-missing-LOCK_EX-declaration.patch
+++ b/meta/recipes-core/systemd/systemd/0022-avoid-missing-LOCK_EX-declaration.patch
@@ -1,7 +1,7 @@
1From fd52f1764647e03a35e8f0ed0ef952049073ccbd Mon Sep 17 00:00:00 2001 1From 97d3ed7834bd86615ba4acdbef984c677b7e7791 Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com> 2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Tue, 2 Jan 2024 11:03:27 +0800 3Date: Tue, 2 Jan 2024 11:03:27 +0800
4Subject: [PATCH 22/22] avoid missing LOCK_EX declaration 4Subject: [PATCH] avoid missing LOCK_EX declaration
5 5
6This only happens on MUSL. Include sys/file.h to avoid compilation 6This only happens on MUSL. Include sys/file.h to avoid compilation
7error about missing LOCK_EX declaration. 7error about missing LOCK_EX declaration.
@@ -15,7 +15,7 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
15 2 files changed, 2 insertions(+) 15 2 files changed, 2 insertions(+)
16 16
17diff --git a/src/core/exec-invoke.c b/src/core/exec-invoke.c 17diff --git a/src/core/exec-invoke.c b/src/core/exec-invoke.c
18index 70d963e269..7084811439 100644 18index fe14ceeb31..521e7b87ff 100644
19--- a/src/core/exec-invoke.c 19--- a/src/core/exec-invoke.c
20+++ b/src/core/exec-invoke.c 20+++ b/src/core/exec-invoke.c
21@@ -4,6 +4,7 @@ 21@@ -4,6 +4,7 @@
@@ -38,6 +38,3 @@ index 5339bc4e5e..0697495f23 100644
38 38
39 int lock_dev_console(void); 39 int lock_dev_console(void);
40 40
41--
422.34.1
43
diff --git a/meta/recipes-core/systemd/systemd_255.4.bb b/meta/recipes-core/systemd/systemd_255.6.bb
index b02e44d9c0..62842d43c8 100644
--- a/meta/recipes-core/systemd/systemd_255.4.bb
+++ b/meta/recipes-core/systemd/systemd_255.6.bb
@@ -28,7 +28,6 @@ SRC_URI += " \
28 file://systemd-pager.sh \ 28 file://systemd-pager.sh \
29 file://0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch \ 29 file://0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch \
30 file://0008-implment-systemd-sysv-install-for-OE.patch \ 30 file://0008-implment-systemd-sysv-install-for-OE.patch \
31 file://0001-NamePolicy.patch \
32 " 31 "
33 32
34# patches needed by musl 33# patches needed by musl
@@ -66,7 +65,7 @@ PAM_PLUGINS = " \
66" 65"
67 66
68PACKAGECONFIG ??= " \ 67PACKAGECONFIG ??= " \
69 ${@bb.utils.filter('DISTRO_FEATURES', 'acl audit efi ldconfig pam selinux smack usrmerge polkit seccomp', d)} \ 68 ${@bb.utils.filter('DISTRO_FEATURES', 'acl audit efi ldconfig pam pni-names selinux smack usrmerge polkit seccomp', d)} \
70 ${@bb.utils.contains('DISTRO_FEATURES', 'minidebuginfo', 'coredump elfutils', '', d)} \ 69 ${@bb.utils.contains('DISTRO_FEATURES', 'minidebuginfo', 'coredump elfutils', '', d)} \
71 ${@bb.utils.contains('DISTRO_FEATURES', 'wifi', 'rfkill', '', d)} \ 70 ${@bb.utils.contains('DISTRO_FEATURES', 'wifi', 'rfkill', '', d)} \
72 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xkbcommon', '', d)} \ 71 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xkbcommon', '', d)} \
@@ -197,6 +196,7 @@ PACKAGECONFIG[polkit] = "-Dpolkit=true,-Dpolkit=false"
197PACKAGECONFIG[polkit_hostnamed_fallback] = ",,,,dbus-broker,polkit" 196PACKAGECONFIG[polkit_hostnamed_fallback] = ",,,,dbus-broker,polkit"
198PACKAGECONFIG[portabled] = "-Dportabled=true,-Dportabled=false" 197PACKAGECONFIG[portabled] = "-Dportabled=true,-Dportabled=false"
199PACKAGECONFIG[pstore] = "-Dpstore=true,-Dpstore=false" 198PACKAGECONFIG[pstore] = "-Dpstore=true,-Dpstore=false"
199PACKAGECONFIG[pni-names] = ",,,"
200PACKAGECONFIG[qrencode] = "-Dqrencode=true,-Dqrencode=false,qrencode,,qrencode" 200PACKAGECONFIG[qrencode] = "-Dqrencode=true,-Dqrencode=false,qrencode,,qrencode"
201PACKAGECONFIG[quotacheck] = "-Dquotacheck=true,-Dquotacheck=false" 201PACKAGECONFIG[quotacheck] = "-Dquotacheck=true,-Dquotacheck=false"
202PACKAGECONFIG[randomseed] = "-Drandomseed=true,-Drandomseed=false" 202PACKAGECONFIG[randomseed] = "-Drandomseed=true,-Drandomseed=false"
@@ -249,6 +249,7 @@ EXTRA_OEMESON += "-Dnobody-user=nobody \
249 -Dsystem-alloc-gid-min=101 \ 249 -Dsystem-alloc-gid-min=101 \
250 -Dsystem-gid-max=999 \ 250 -Dsystem-gid-max=999 \
251 -Dcreate-log-dirs=false \ 251 -Dcreate-log-dirs=false \
252 ${@bb.utils.contains('DISTRO_FEATURES', 'zeroconf', '-Ddefault-mdns=no -Ddefault-llmnr=no', '', d)} \
252 " 253 "
253 254
254# Hardcode target binary paths to avoid using paths from sysroot or worse 255# Hardcode target binary paths to avoid using paths from sysroot or worse
@@ -270,14 +271,16 @@ WATCHDOG_TIMEOUT ??= "60"
270 271
271do_install() { 272do_install() {
272 meson_do_install 273 meson_do_install
273 # Change the root user's home directory in /lib/sysusers.d/basic.conf. 274 if ${@bb.utils.contains('PACKAGECONFIG', 'sysusers', 'true', 'false', d)}; then
274 # This is done merely for backward compatibility with previous systemd recipes. 275 # Change the root user's home directory in /lib/sysusers.d/basic.conf.
275 # systemd hardcodes root user's HOME to be "/root". Changing to use other values 276 # This is done merely for backward compatibility with previous systemd recipes.
276 # may have unexpected runtime behaviors. 277 # systemd hardcodes root user's HOME to be "/root". Changing to use other values
277 if [ "${ROOT_HOME}" != "/root" ]; then 278 # may have unexpected runtime behaviors.
278 bbwarn "Using ${ROOT_HOME} as root user's home directory is not fully supported by systemd" 279 if [ "${ROOT_HOME}" != "/root" ]; then
279 sed -i -e 's#/root#${ROOT_HOME}#g' ${D}${exec_prefix}/lib/sysusers.d/basic.conf 280 bbwarn "Using ${ROOT_HOME} as root user's home directory is not fully supported by systemd"
280 fi 281 sed -i -e 's#/root#${ROOT_HOME}#g' ${D}${exec_prefix}/lib/sysusers.d/basic.conf
282 fi
283 fi
281 install -d ${D}/${base_sbindir} 284 install -d ${D}/${base_sbindir}
282 if ${@bb.utils.contains('PACKAGECONFIG', 'serial-getty-generator', 'false', 'true', d)}; then 285 if ${@bb.utils.contains('PACKAGECONFIG', 'serial-getty-generator', 'false', 'true', d)}; then
283 # Provided by a separate recipe 286 # Provided by a separate recipe
@@ -290,15 +293,15 @@ do_install() {
290 293
291 install -d ${D}${sysconfdir}/udev/rules.d/ 294 install -d ${D}${sysconfdir}/udev/rules.d/
292 install -d ${D}${nonarch_libdir}/tmpfiles.d 295 install -d ${D}${nonarch_libdir}/tmpfiles.d
293 for rule in $(find ${WORKDIR} -maxdepth 1 -type f -name "*.rules"); do 296 for rule in $(find ${UNPACKDIR} -maxdepth 1 -type f -name "*.rules"); do
294 install -m 0644 $rule ${D}${sysconfdir}/udev/rules.d/ 297 install -m 0644 $rule ${D}${sysconfdir}/udev/rules.d/
295 done 298 done
296 299
297 install -m 0644 ${WORKDIR}/00-create-volatile.conf ${D}${nonarch_libdir}/tmpfiles.d/ 300 install -m 0644 ${UNPACKDIR}/00-create-volatile.conf ${D}${nonarch_libdir}/tmpfiles.d/
298 301
299 if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then 302 if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then
300 install -d ${D}${sysconfdir}/init.d 303 install -d ${D}${sysconfdir}/init.d
301 install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/systemd-udevd 304 install -m 0755 ${UNPACKDIR}/init ${D}${sysconfdir}/init.d/systemd-udevd
302 sed -i s%@UDEVD@%${rootlibexecdir}/systemd/systemd-udevd% ${D}${sysconfdir}/init.d/systemd-udevd 305 sed -i s%@UDEVD@%${rootlibexecdir}/systemd/systemd-udevd% ${D}${sysconfdir}/init.d/systemd-udevd
303 install -Dm 0755 ${S}/src/systemctl/systemd-sysv-install.SKELETON ${D}${systemd_unitdir}/systemd-sysv-install 306 install -Dm 0755 ${S}/src/systemctl/systemd-sysv-install.SKELETON ${D}${systemd_unitdir}/systemd-sysv-install
304 fi 307 fi
@@ -369,9 +372,9 @@ do_install() {
369 # request hostname changes via DBUS without elevating its privileges 372 # request hostname changes via DBUS without elevating its privileges
370 if ${@bb.utils.contains('PACKAGECONFIG', 'polkit_hostnamed_fallback', 'true', 'false', d)}; then 373 if ${@bb.utils.contains('PACKAGECONFIG', 'polkit_hostnamed_fallback', 'true', 'false', d)}; then
371 install -d ${D}${systemd_system_unitdir}/systemd-hostnamed.service.d/ 374 install -d ${D}${systemd_system_unitdir}/systemd-hostnamed.service.d/
372 install -m 0644 ${WORKDIR}/00-hostnamed-network-user.conf ${D}${systemd_system_unitdir}/systemd-hostnamed.service.d/ 375 install -m 0644 ${UNPACKDIR}/00-hostnamed-network-user.conf ${D}${systemd_system_unitdir}/systemd-hostnamed.service.d/
373 install -d ${D}${datadir}/dbus-1/system.d/ 376 install -d ${D}${datadir}/dbus-1/system.d/
374 install -m 0644 ${WORKDIR}/org.freedesktop.hostname1_no_polkit.conf ${D}${datadir}/dbus-1/system.d/ 377 install -m 0644 ${UNPACKDIR}/org.freedesktop.hostname1_no_polkit.conf ${D}${datadir}/dbus-1/system.d/
375 fi 378 fi
376 379
377 # create link for existing udev rules 380 # create link for existing udev rules
@@ -379,15 +382,24 @@ do_install() {
379 382
380 # install default policy for presets 383 # install default policy for presets
381 # https://www.freedesktop.org/wiki/Software/systemd/Preset/#howto 384 # https://www.freedesktop.org/wiki/Software/systemd/Preset/#howto
382 install -Dm 0644 ${WORKDIR}/99-default.preset ${D}${systemd_unitdir}/system-preset/99-default.preset 385 install -Dm 0644 ${UNPACKDIR}/99-default.preset ${D}${systemd_unitdir}/system-preset/99-default.preset
383 386
384 # add a profile fragment to disable systemd pager with busybox less 387 # add a profile fragment to disable systemd pager with busybox less
385 install -Dm 0644 ${WORKDIR}/systemd-pager.sh ${D}${sysconfdir}/profile.d/systemd-pager.sh 388 install -Dm 0644 ${UNPACKDIR}/systemd-pager.sh ${D}${sysconfdir}/profile.d/systemd-pager.sh
386 389
387 if [ -n "${WATCHDOG_TIMEOUT}" ]; then 390 if [ -n "${WATCHDOG_TIMEOUT}" ]; then
388 sed -i -e 's/#RebootWatchdogSec=10min/RebootWatchdogSec=${WATCHDOG_TIMEOUT}/' \ 391 sed -i -e 's/#RebootWatchdogSec=10min/RebootWatchdogSec=${WATCHDOG_TIMEOUT}/' \
389 ${D}/${sysconfdir}/systemd/system.conf 392 ${D}/${sysconfdir}/systemd/system.conf
390 fi 393 fi
394
395 if ${@bb.utils.contains('PACKAGECONFIG', 'pni-names', 'true', 'false', d)}; then
396 if ! grep -q '^NamePolicy=.*mac' ${D}${rootlibexecdir}/systemd/network/99-default.link; then
397 sed -i '/^NamePolicy=/s/$/ mac/' ${D}${rootlibexecdir}/systemd/network/99-default.link
398 fi
399 if ! grep -q 'AlternativeNamesPolicy=.*mac' ${D}${rootlibexecdir}/systemd/network/99-default.link; then
400 sed -i '/AlternativeNamesPolicy=/s/$/ mac/' ${D}${rootlibexecdir}/systemd/network/99-default.link
401 fi
402 fi
391} 403}
392 404
393python populate_packages:prepend (){ 405python populate_packages:prepend (){
diff --git a/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb b/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
index 6bbe517df1..6ff2ca1bf4 100644
--- a/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
+++ b/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
@@ -6,7 +6,8 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;m
6SRC_URI = "file://inittab \ 6SRC_URI = "file://inittab \
7 file://start_getty" 7 file://start_getty"
8 8
9S = "${WORKDIR}" 9S = "${WORKDIR}/sources"
10UNPACKDIR = "${S}"
10 11
11INHIBIT_DEFAULT_DEPS = "1" 12INHIBIT_DEFAULT_DEPS = "1"
12 13
@@ -16,9 +17,9 @@ do_compile() {
16 17
17do_install() { 18do_install() {
18 install -d ${D}${sysconfdir} 19 install -d ${D}${sysconfdir}
19 install -m 0644 ${WORKDIR}/inittab ${D}${sysconfdir}/inittab 20 install -m 0644 ${S}/inittab ${D}${sysconfdir}/inittab
20 install -d ${D}${base_bindir} 21 install -d ${D}${base_bindir}
21 install -m 0755 ${WORKDIR}/start_getty ${D}${base_bindir}/start_getty 22 install -m 0755 ${S}/start_getty ${D}${base_bindir}/start_getty
22 sed -e 's,/usr/bin,${bindir},g' -i ${D}${base_bindir}/start_getty 23 sed -e 's,/usr/bin,${bindir},g' -i ${D}${base_bindir}/start_getty
23 24
24 CONSOLES="${SERIAL_CONSOLES}" 25 CONSOLES="${SERIAL_CONSOLES}"
diff --git a/meta/recipes-core/sysvinit/sysvinit_3.04.bb b/meta/recipes-core/sysvinit/sysvinit_3.04.bb
index 6a612468f3..fb9d00891c 100644
--- a/meta/recipes-core/sysvinit/sysvinit_3.04.bb
+++ b/meta/recipes-core/sysvinit/sysvinit_3.04.bb
@@ -97,18 +97,18 @@ do_install () {
97 97
98 sed -e \ 98 sed -e \
99 's:#PSPLASH_TEXT#:${@bb.utils.contains("PACKAGECONFIG","psplash-text-updates","yes","no", d)}:g' \ 99 's:#PSPLASH_TEXT#:${@bb.utils.contains("PACKAGECONFIG","psplash-text-updates","yes","no", d)}:g' \
100 ${WORKDIR}/rcS-default > ${D}${sysconfdir}/default/rcS 100 ${UNPACKDIR}/rcS-default > ${D}${sysconfdir}/default/rcS
101 chmod 0644 ${D}${sysconfdir}/default/rcS 101 chmod 0644 ${D}${sysconfdir}/default/rcS
102 install -m 0755 ${WORKDIR}/rc ${D}${sysconfdir}/init.d 102 install -m 0755 ${UNPACKDIR}/rc ${D}${sysconfdir}/init.d
103 install -m 0755 ${WORKDIR}/rcS ${D}${sysconfdir}/init.d 103 install -m 0755 ${UNPACKDIR}/rcS ${D}${sysconfdir}/init.d
104 install -m 0755 ${WORKDIR}/bootlogd.init ${D}${sysconfdir}/init.d/bootlogd 104 install -m 0755 ${UNPACKDIR}/bootlogd.init ${D}${sysconfdir}/init.d/bootlogd
105 ln -sf bootlogd ${D}${sysconfdir}/init.d/stop-bootlogd 105 ln -sf bootlogd ${D}${sysconfdir}/init.d/stop-bootlogd
106 106
107 update-rc.d -r ${D} bootlogd start 07 S . 107 update-rc.d -r ${D} bootlogd start 07 S .
108 update-rc.d -r ${D} stop-bootlogd start 99 2 3 4 5 . 108 update-rc.d -r ${D} stop-bootlogd start 99 2 3 4 5 .
109 109
110 install -d ${D}${sysconfdir}/default/volatiles 110 install -d ${D}${sysconfdir}/default/volatiles
111 install -m 0644 ${WORKDIR}/01_bootlogd ${D}${sysconfdir}/default/volatiles 111 install -m 0644 ${UNPACKDIR}/01_bootlogd ${D}${sysconfdir}/default/volatiles
112 112
113 chown root:shutdown ${D}${base_sbindir}/halt ${D}${base_sbindir}/shutdown 113 chown root:shutdown ${D}${base_sbindir}/halt ${D}${base_sbindir}/shutdown
114 chmod o-x,u+s ${D}${base_sbindir}/halt ${D}${base_sbindir}/shutdown 114 chmod o-x,u+s ${D}${base_sbindir}/halt ${D}${base_sbindir}/shutdown
diff --git a/meta/recipes-core/ttyrun/ttyrun_2.31.0.bb b/meta/recipes-core/ttyrun/ttyrun_2.32.0.bb
index 122dd9d8e7..815f625a67 100644
--- a/meta/recipes-core/ttyrun/ttyrun_2.31.0.bb
+++ b/meta/recipes-core/ttyrun/ttyrun_2.32.0.bb
@@ -7,7 +7,9 @@ LICENSE = "MIT"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=f5118f167b055bfd7c3450803f1847af" 7LIC_FILES_CHKSUM = "file://LICENSE;md5=f5118f167b055bfd7c3450803f1847af"
8 8
9SRC_URI = "git://github.com/ibm-s390-linux/s390-tools;protocol=https;branch=master" 9SRC_URI = "git://github.com/ibm-s390-linux/s390-tools;protocol=https;branch=master"
10SRCREV = "6f15ed326491a17d83ca60cd2bda47fb5e8a0175" 10SRCREV = "9eea78b3ad8ab3710fb3b2d80b9cd058d7c8aba7"
11
12CVE_PRODUCT = "s390-tools"
11 13
12S = "${WORKDIR}/git" 14S = "${WORKDIR}/git"
13 15
diff --git a/meta/recipes-core/udev/eudev/netifnames.patch b/meta/recipes-core/udev/eudev/netifnames.patch
index 8f6e9a1538..4f8e54d12d 100644
--- a/meta/recipes-core/udev/eudev/netifnames.patch
+++ b/meta/recipes-core/udev/eudev/netifnames.patch
@@ -2,7 +2,7 @@ eudev: consider ID_NET_NAME_MAC as an interface name
2 2
3eudev might not create names based on slot or path. 3eudev might not create names based on slot or path.
4 4
5Upstream-Status: Submitted [github.com/eudev-project/eudev/pull/274] 5Upstream-Status: Backport [github.com/eudev-project/eudev/pull/274]
6 6
7Signed-off-by: Joe Slater <joe.slater@windriver.com> 7Signed-off-by: Joe Slater <joe.slater@windriver.com>
8 8
diff --git a/meta/recipes-core/udev/eudev_3.2.14.bb b/meta/recipes-core/udev/eudev_3.2.14.bb
index 18696679c8..0e5610f77c 100644
--- a/meta/recipes-core/udev/eudev_3.2.14.bb
+++ b/meta/recipes-core/udev/eudev_3.2.14.bb
@@ -42,12 +42,12 @@ PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux"
42 42
43do_install:append() { 43do_install:append() {
44 install -d ${D}${sysconfdir}/init.d 44 install -d ${D}${sysconfdir}/init.d
45 install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/udev 45 install -m 0755 ${UNPACKDIR}/init ${D}${sysconfdir}/init.d/udev
46 sed -i s%@UDEVD@%${base_sbindir}/udevd% ${D}${sysconfdir}/init.d/udev 46 sed -i s%@UDEVD@%${base_sbindir}/udevd% ${D}${sysconfdir}/init.d/udev
47 sed -i s%@KMOD@%${base_bindir}/kmod% ${D}${sysconfdir}/init.d/udev 47 sed -i s%@KMOD@%${base_bindir}/kmod% ${D}${sysconfdir}/init.d/udev
48 48
49 install -d ${D}${sysconfdir}/udev/rules.d 49 install -d ${D}${sysconfdir}/udev/rules.d
50 install -m 0644 ${WORKDIR}/local.rules ${D}${sysconfdir}/udev/rules.d/local.rules 50 install -m 0644 ${UNPACKDIR}/local.rules ${D}${sysconfdir}/udev/rules.d/local.rules
51 51
52 # Use classic network interface naming scheme if no 'pni-names' distro feature 52 # Use classic network interface naming scheme if no 'pni-names' distro feature
53 if ${@bb.utils.contains('DISTRO_FEATURES', 'pni-names', 'false', 'true', d)}; then 53 if ${@bb.utils.contains('DISTRO_FEATURES', 'pni-names', 'false', 'true', d)}; then
diff --git a/meta/recipes-core/udev/udev-extraconf_1.1.bb b/meta/recipes-core/udev/udev-extraconf_1.1.bb
index 30f1fe76d0..0e2abcd424 100644
--- a/meta/recipes-core/udev/udev-extraconf_1.1.bb
+++ b/meta/recipes-core/udev/udev-extraconf_1.1.bb
@@ -13,28 +13,29 @@ SRC_URI = " \
13 file://localextra.rules \ 13 file://localextra.rules \
14" 14"
15 15
16S = "${WORKDIR}" 16S = "${WORKDIR}/sources"
17UNPACKDIR = "${S}"
17 18
18MOUNT_BASE = "/run/media" 19MOUNT_BASE = "/run/media"
19 20
20do_install() { 21do_install() {
21 install -d ${D}${sysconfdir}/udev/rules.d 22 install -d ${D}${sysconfdir}/udev/rules.d
22 23
23 install -m 0644 ${WORKDIR}/automount.rules ${D}${sysconfdir}/udev/rules.d/automount.rules 24 install -m 0644 ${S}/automount.rules ${D}${sysconfdir}/udev/rules.d/automount.rules
24 install -m 0644 ${WORKDIR}/autonet.rules ${D}${sysconfdir}/udev/rules.d/autonet.rules 25 install -m 0644 ${S}/autonet.rules ${D}${sysconfdir}/udev/rules.d/autonet.rules
25 install -m 0644 ${WORKDIR}/localextra.rules ${D}${sysconfdir}/udev/rules.d/localextra.rules 26 install -m 0644 ${S}/localextra.rules ${D}${sysconfdir}/udev/rules.d/localextra.rules
26 27
27 install -d ${D}${sysconfdir}/udev/mount.ignorelist.d 28 install -d ${D}${sysconfdir}/udev/mount.ignorelist.d
28 install -m 0644 ${WORKDIR}/mount.ignorelist ${D}${sysconfdir}/udev/ 29 install -m 0644 ${S}/mount.ignorelist ${D}${sysconfdir}/udev/
29 30
30 install -d ${D}${sysconfdir}/udev/scripts/ 31 install -d ${D}${sysconfdir}/udev/scripts/
31 32
32 install -m 0755 ${WORKDIR}/mount.sh ${D}${sysconfdir}/udev/scripts/mount.sh 33 install -m 0755 ${S}/mount.sh ${D}${sysconfdir}/udev/scripts/mount.sh
33 sed -i 's|@systemd_unitdir@|${systemd_unitdir}|g' ${D}${sysconfdir}/udev/scripts/mount.sh 34 sed -i 's|@systemd_unitdir@|${systemd_unitdir}|g' ${D}${sysconfdir}/udev/scripts/mount.sh
34 sed -i 's|@base_sbindir@|${base_sbindir}|g' ${D}${sysconfdir}/udev/scripts/mount.sh 35 sed -i 's|@base_sbindir@|${base_sbindir}|g' ${D}${sysconfdir}/udev/scripts/mount.sh
35 sed -i 's|@MOUNT_BASE@|${MOUNT_BASE}|g' ${D}${sysconfdir}/udev/scripts/mount.sh 36 sed -i 's|@MOUNT_BASE@|${MOUNT_BASE}|g' ${D}${sysconfdir}/udev/scripts/mount.sh
36 37
37 install -m 0755 ${WORKDIR}/network.sh ${D}${sysconfdir}/udev/scripts 38 install -m 0755 ${S}/network.sh ${D}${sysconfdir}/udev/scripts
38} 39}
39 40
40pkg_postinst:${PN} () { 41pkg_postinst:${PN} () {
diff --git a/meta/recipes-core/update-rc.d/update-rc.d_0.8.bb b/meta/recipes-core/update-rc.d/update-rc.d_0.8.bb
index ba622fe716..27723c88ef 100644
--- a/meta/recipes-core/update-rc.d/update-rc.d_0.8.bb
+++ b/meta/recipes-core/update-rc.d/update-rc.d_0.8.bb
@@ -8,6 +8,7 @@ LIC_FILES_CHKSUM = "file://update-rc.d;beginline=5;endline=15;md5=d40a07c27f5354
8 8
9SRC_URI = "git://git.yoctoproject.org/update-rc.d;branch=master;protocol=https" 9SRC_URI = "git://git.yoctoproject.org/update-rc.d;branch=master;protocol=https"
10SRCREV = "b8f950105010270a768aa12245d6abf166346015" 10SRCREV = "b8f950105010270a768aa12245d6abf166346015"
11PV .= "+git"
11 12
12UPSTREAM_CHECK_COMMITS = "1" 13UPSTREAM_CHECK_COMMITS = "1"
13 14
diff --git a/meta/recipes-core/util-linux/util-linux.inc b/meta/recipes-core/util-linux/util-linux.inc
index 4e9d22f269..d506783f9a 100644
--- a/meta/recipes-core/util-linux/util-linux.inc
+++ b/meta/recipes-core/util-linux/util-linux.inc
@@ -6,14 +6,15 @@ disk partitioning, kernel message management, filesystem creation, and system lo
6 6
7SECTION = "base" 7SECTION = "base"
8 8
9LICENSE = "GPL-1.0-or-later & GPL-2.0-or-later & LGPL-2.1-or-later & BSD-2-Clause & BSD-3-Clause & BSD-4-Clause" 9LICENSE = "GPL-1.0-or-later & GPL-2.0-or-later & LGPL-2.1-or-later & BSD-2-Clause & BSD-3-Clause & BSD-4-Clause & MIT"
10LICENSE:${PN}-fcntl-lock = "MIT"
10LICENSE:${PN}-fdisk = "GPL-1.0-or-later" 11LICENSE:${PN}-fdisk = "GPL-1.0-or-later"
11LICENSE:${PN}-libblkid = "LGPL-2.1-or-later" 12LICENSE:${PN}-libblkid = "LGPL-2.1-or-later"
12LICENSE:${PN}-libfdisk = "LGPL-2.1-or-later" 13LICENSE:${PN}-libfdisk = "LGPL-2.1-or-later"
13LICENSE:${PN}-libmount = "LGPL-2.1-or-later" 14LICENSE:${PN}-libmount = "LGPL-2.1-or-later"
14LICENSE:${PN}-libsmartcols = "LGPL-2.1-or-later" 15LICENSE:${PN}-libsmartcols = "LGPL-2.1-or-later"
15 16
16LIC_FILES_CHKSUM = "file://README.licensing;md5=6b0e0a2320e66e62eef9b8149a6faec4 \ 17LIC_FILES_CHKSUM = "file://README.licensing;md5=cc80239f106687ab39ef0271ff5cf4ba \
17 file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ 18 file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
18 file://Documentation/licenses/COPYING.GPL-2.0-or-later;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ 19 file://Documentation/licenses/COPYING.GPL-2.0-or-later;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
19 file://Documentation/licenses/COPYING.LGPL-2.1-or-later;md5=4fbd65380cdd255951079008b364516c \ 20 file://Documentation/licenses/COPYING.LGPL-2.1-or-later;md5=4fbd65380cdd255951079008b364516c \
@@ -29,6 +30,7 @@ LIC_FILES_CHKSUM = "file://README.licensing;md5=6b0e0a2320e66e62eef9b8149a6faec4
29FILESEXTRAPATHS:prepend := "${THISDIR}/util-linux:" 30FILESEXTRAPATHS:prepend := "${THISDIR}/util-linux:"
30MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:2])}" 31MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:2])}"
31SRC_URI = "${KERNELORG_MIRROR}/linux/utils/util-linux/v${MAJOR_VERSION}/util-linux-${PV}.tar.xz \ 32SRC_URI = "${KERNELORG_MIRROR}/linux/utils/util-linux/v${MAJOR_VERSION}/util-linux-${PV}.tar.xz \
33 file://mit-license.patch \
32 file://configure-sbindir.patch \ 34 file://configure-sbindir.patch \
33 file://runuser.pamd \ 35 file://runuser.pamd \
34 file://runuser-l.pamd \ 36 file://runuser-l.pamd \
@@ -37,6 +39,7 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/util-linux/v${MAJOR_VERSION}/util-lin
37 file://display_testname_for_subtest.patch \ 39 file://display_testname_for_subtest.patch \
38 file://avoid_parallel_tests.patch \ 40 file://avoid_parallel_tests.patch \
39 file://0001-login-utils-include-libgen.h-for-basename-API.patch \ 41 file://0001-login-utils-include-libgen.h-for-basename-API.patch \
42 file://fcntl-lock.c \
40 " 43 "
41 44
42SRC_URI[sha256sum] = "7b6605e48d1a49f43cc4b4cfc59f313d0dd5402fa40b96810bd572e167dfed0f" 45SRC_URI[sha256sum] = "7b6605e48d1a49f43cc4b4cfc59f313d0dd5402fa40b96810bd572e167dfed0f"
diff --git a/meta/recipes-core/util-linux/util-linux/fcntl-lock.c b/meta/recipes-core/util-linux/util-linux/fcntl-lock.c
new file mode 100644
index 0000000000..966d8c5ecb
--- /dev/null
+++ b/meta/recipes-core/util-linux/util-linux/fcntl-lock.c
@@ -0,0 +1,332 @@
1// From https://github.com/magnumripper/fcntl-lock
2// SPDX-License-Identifier: MIT
3/* ----------------------------------------------------------------------- *
4 *
5 * Copyright 2003-2005 H. Peter Anvin - All Rights Reserved
6 * Copyright 2015 magnum (fcntl version)
7 *
8 * Permission is hereby granted, free of charge, to any person
9 * obtaining a copy of this software and associated documentation
10 * files (the "Software"), to deal in the Software without
11 * restriction, including without limitation the rights to use,
12 * copy, modify, merge, publish, distribute, sublicense, and/or
13 * sell copies of the Software, and to permit persons to whom
14 * the Software is furnished to do so, subject to the following
15 * conditions:
16 *
17 * The above copyright notice and this permission notice shall
18 * be included in all copies or substantial portions of the Software.
19 *
20 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
21 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
22 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
23 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
24 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
25 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
26 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
27 * OTHER DEALINGS IN THE SOFTWARE.
28 *
29 * ----------------------------------------------------------------------- */
30
31#include <errno.h>
32#include <stdio.h>
33#include <stdlib.h>
34#include <fcntl.h>
35#include <unistd.h>
36#include <getopt.h>
37#include <signal.h>
38#include <ctype.h>
39#include <string.h>
40#include <paths.h>
41#include <sysexits.h>
42#include <sys/types.h>
43#include <sys/file.h>
44#include <sys/time.h>
45#include <sys/wait.h>
46
47#define PACKAGE_STRING "magnum"
48#define _(x) (x)
49
50static const struct option long_options[] = {
51 { "shared", 0, NULL, 's' },
52 { "exclusive", 0, NULL, 'x' },
53 { "unlock", 0, NULL, 'u' },
54 { "nonblocking", 0, NULL, 'n' },
55 { "nb", 0, NULL, 'n' },
56 { "timeout", 1, NULL, 'w' },
57 { "wait", 1, NULL, 'w' },
58 { "close", 0, NULL, 'o' },
59 { "help", 0, NULL, 'h' },
60 { "version", 0, NULL, 'V' },
61 { 0, 0, 0, 0 }
62};
63
64const char *program;
65
66static void usage(int ex)
67{
68 fputs("fcntl-lock (" PACKAGE_STRING ")\n", stderr);
69 fprintf(stderr,
70 _("Usage: %1$s [-sxun][-w #] fd#\n"
71 " %1$s [-sxon][-w #] file [-c] command...\n"
72 " %1$s [-sxon][-w #] directory [-c] command...\n"
73 " -s --shared Get a shared lock\n"
74 " -x --exclusive Get an exclusive lock\n"
75 " -u --unlock Remove a lock\n"
76 " -n --nonblock Fail rather than wait\n"
77 " -w --timeout Wait for a limited amount of time\n"
78 " -o --close Close file descriptor before running command\n"
79 " -c --command Run a single command string through the shell\n"
80 " -h --help Display this text\n"
81 " -V --version Display version\n"),
82 program);
83 exit(ex);
84}
85
86
87static sig_atomic_t timeout_expired = 0;
88
89static void timeout_handler(int sig)
90{
91 (void)sig;
92
93 timeout_expired = 1;
94}
95
96
97static char * strtotimeval(const char *str, struct timeval *tv)
98{
99 char *s;
100 long fs; /* Fractional seconds */
101 int i;
102
103 tv->tv_sec = strtol(str, &s, 10);
104 fs = 0;
105
106 if ( *s == '.' ) {
107 s++;
108
109 for ( i = 0 ; i < 6 ; i++ ) {
110 if ( !isdigit(*s) )
111 break;
112
113 fs *= 10;
114 fs += *s++ - '0';
115 }
116
117 for ( ; i < 6; i++ )
118 fs *= 10;
119
120 while ( isdigit(*s) )
121 s++;
122 }
123
124 tv->tv_usec = fs;
125 return s;
126}
127
128int main(int argc, char *argv[])
129{
130 struct itimerval timeout, old_timer;
131 int have_timeout = 0;
132 int type = F_WRLCK;
133 int block = F_SETLKW;
134 int fd = -1;
135 int opt, ix;
136 int do_close = 0;
137 int err;
138 int status;
139 char *eon;
140 char **cmd_argv = NULL, *sh_c_argv[4];
141 struct flock lock;
142 const char *filename = NULL;
143 struct sigaction sa, old_sa;
144
145 program = argv[0];
146
147 if ( argc < 2 )
148 usage(EX_USAGE);
149
150 memset(&timeout, 0, sizeof timeout);
151
152 optopt = 0;
153 while ( (opt = getopt_long(argc, argv, "+sexnouw:hV?", long_options, &ix)) != EOF ) {
154 switch(opt) {
155 case 's':
156 type = F_RDLCK;
157 break;
158 case 'e':
159 case 'x':
160 type = F_WRLCK;
161 break;
162 case 'u':
163 type = F_UNLCK;
164 break;
165 case 'o':
166 do_close = 1;
167 break;
168 case 'n':
169 block = F_SETLK;
170 break;
171 case 'w':
172 have_timeout = 1;
173 eon = strtotimeval(optarg, &timeout.it_value);
174 if ( *eon )
175 usage(EX_USAGE);
176 break;
177 case 'V':
178 printf("fcntl-lock (%s)\n", PACKAGE_STRING);
179 exit(0);
180 default:
181 /* optopt will be set if this was an unrecognized option, i.e. *not* 'h' or '?' */
182 usage(optopt ? EX_USAGE : 0);
183 break;
184 }
185 }
186
187 if ( argc > optind+1 ) {
188 /* Run command */
189
190 if ( !strcmp(argv[optind+1], "-c") ||
191 !strcmp(argv[optind+1], "--command") ) {
192
193 if ( argc != optind+3 ) {
194 fprintf(stderr, _("%s: %s requires exactly one command argument\n"),
195 program, argv[optind+1]);
196 exit(EX_USAGE);
197 }
198
199 cmd_argv = sh_c_argv;
200
201 cmd_argv[0] = getenv("SHELL");
202 if ( !cmd_argv[0] || !*cmd_argv[0] )
203 cmd_argv[0] = _PATH_BSHELL;
204
205 cmd_argv[1] = "-c";
206 cmd_argv[2] = argv[optind+2];
207 cmd_argv[3] = 0;
208 } else {
209 cmd_argv = &argv[optind+1];
210 }
211
212 filename = argv[optind];
213 fd = open(filename, O_RDWR|O_NOCTTY|O_CREAT, 0666);
214 /* Linux doesn't like O_CREAT on a directory, even though it should be a
215 no-op */
216 if (fd < 0 && errno == EISDIR)
217 fd = open(filename, O_RDONLY|O_NOCTTY);
218
219 if ( fd < 0 ) {
220 err = errno;
221 fprintf(stderr, _("%s: cannot open lock file %s: %s\n"),
222 program, argv[optind], strerror(err));
223 exit((err == ENOMEM||err == EMFILE||err == ENFILE) ? EX_OSERR :
224 (err == EROFS||err == ENOSPC) ? EX_CANTCREAT :
225 EX_NOINPUT);
226 }
227
228 } else if (optind < argc) {
229 /* Use provided file descriptor */
230
231 fd = (int)strtol(argv[optind], &eon, 10);
232 if ( *eon || !argv[optind] ) {
233 fprintf(stderr, _("%s: bad number: %s\n"), program, argv[optind]);
234 exit(EX_USAGE);
235 }
236
237 } else {
238 /* Bad options */
239
240 fprintf(stderr, _("%s: requires file descriptor, file or directory\n"),
241 program);
242 exit(EX_USAGE);
243 }
244
245
246 if ( have_timeout ) {
247 if ( timeout.it_value.tv_sec == 0 &&
248 timeout.it_value.tv_usec == 0 ) {
249 /* -w 0 is equivalent to -n; this has to be special-cased
250 because setting an itimer to zero means disabled! */
251
252 have_timeout = 0;
253 block = F_SETLK;
254 } else {
255 memset(&sa, 0, sizeof sa);
256
257 sa.sa_handler = timeout_handler;
258 sa.sa_flags = SA_RESETHAND;
259 sigaction(SIGALRM, &sa, &old_sa);
260
261 setitimer(ITIMER_REAL, &timeout, &old_timer);
262 }
263 }
264
265 memset(&lock, 0, sizeof(lock));
266 lock.l_type = type;
267 while ( fcntl(fd, block, &lock) ) {
268 switch( (err = errno) ) {
269 case EAGAIN: /* -n option set and failed to lock */
270 case EACCES: /* -n option set and failed to lock */
271 exit(1);
272 case EINTR: /* Signal received */
273 if ( timeout_expired )
274 exit(1); /* -w option set and failed to lock */
275 continue; /* otherwise try again */
276 default: /* Other errors */
277 if ( filename )
278 fprintf(stderr, "%s: %s: %s\n", program, filename, strerror(err));
279 else
280 fprintf(stderr, "%s: %d: %s\n", program, fd, strerror(err));
281 exit((err == ENOLCK||err == ENOMEM) ? EX_OSERR : EX_DATAERR);
282 }
283 }
284
285 if ( have_timeout ) {
286 setitimer(ITIMER_REAL, &old_timer, NULL); /* Cancel itimer */
287 sigaction(SIGALRM, &old_sa, NULL); /* Cancel signal handler */
288 }
289
290 status = 0;
291
292 if ( cmd_argv ) {
293 pid_t w, f;
294
295 /* Clear any inherited settings */
296 signal(SIGCHLD, SIG_DFL);
297 f = fork();
298
299 if ( f < 0 ) {
300 err = errno;
301 fprintf(stderr, _("%s: fork failed: %s\n"), program, strerror(err));
302 exit(EX_OSERR);
303 } else if ( f == 0 ) {
304 if ( do_close )
305 close(fd);
306 err = errno;
307 execvp(cmd_argv[0], cmd_argv);
308 /* execvp() failed */
309 fprintf(stderr, "%s: %s: %s\n", program, cmd_argv[0], strerror(err));
310 _exit((err == ENOMEM) ? EX_OSERR: EX_UNAVAILABLE);
311 } else {
312 do {
313 w = waitpid(f, &status, 0);
314 if (w == -1 && errno != EINTR)
315 break;
316 } while ( w != f );
317
318 if (w == -1) {
319 err = errno;
320 status = EXIT_FAILURE;
321 fprintf(stderr, "%s: waitpid failed: %s\n", program, strerror(err));
322 } else if ( WIFEXITED(status) )
323 status = WEXITSTATUS(status);
324 else if ( WIFSIGNALED(status) )
325 status = WTERMSIG(status) + 128;
326 else
327 status = EX_OSERR; /* WTF? */
328 }
329 }
330
331 return status;
332}
diff --git a/meta/recipes-core/util-linux/util-linux/mit-license.patch b/meta/recipes-core/util-linux/util-linux/mit-license.patch
new file mode 100644
index 0000000000..afbec98f18
--- /dev/null
+++ b/meta/recipes-core/util-linux/util-linux/mit-license.patch
@@ -0,0 +1,45 @@
1From 5b8fab1584017d9d9be008c23b90128bba41a7b5 Mon Sep 17 00:00:00 2001
2From: Richard Purdie <richard.purdie@linuxfoundation.org>
3Date: Thu, 28 Mar 2024 12:16:57 +0000
4Subject: [PATCH] README.licensing/flock: Add MIT license mention
5
6Looking at the license text, flock.c is under the MIT license (see
7https://spdx.org/licenses/MIT).
8
9Add an SPDX license identifier header and add to the list of licenses the
10source so everything is correctly listed/identified.
11
12Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
13
14Upstream-Status: Submitted [https://github.com/util-linux/util-linux/pull/2870]
15
16---
17 README.licensing | 2 ++
18 sys-utils/flock.c | 4 +++-
19 2 files changed, 5 insertions(+), 1 deletion(-)
20
21diff --git a/README.licensing b/README.licensing
22index 4454f8392a..535ad34813 100644
23--- a/README.licensing
24+++ b/README.licensing
25@@ -12,6 +12,8 @@ There is code under:
26
27 * LGPL-2.1-or-later - GNU Lesser General Public License 2.1 or any later version
28
29+ * MIT - MIT License
30+
31 * BSD-2-Clause - Simplified BSD License
32
33 * BSD-3-Clause - BSD 3-Clause "New" or "Revised" License
34diff --git a/sys-utils/flock.c b/sys-utils/flock.c
35index fed29d7270..7d878ff810 100644
36--- a/sys-utils/flock.c
37+++ b/sys-utils/flock.c
38@@ -1,4 +1,6 @@
39-/* Copyright 2003-2005 H. Peter Anvin - All Rights Reserved
40+/* SPDX-License-Identifier: MIT
41+ *
42+ * Copyright 2003-2005 H. Peter Anvin - All Rights Reserved
43 *
44 * Permission is hereby granted, free of charge, to any person
45 * obtaining a copy of this software and associated documentation
diff --git a/meta/recipes-core/util-linux/util-linux_2.39.3.bb b/meta/recipes-core/util-linux/util-linux_2.39.3.bb
index 3e87dcc2c2..2cd7750afc 100644
--- a/meta/recipes-core/util-linux/util-linux_2.39.3.bb
+++ b/meta/recipes-core/util-linux/util-linux_2.39.3.bb
@@ -147,6 +147,11 @@ SYSTEMD_AUTO_ENABLE:${PN}-uuidd = "disable"
147SYSTEMD_SERVICE:${PN}-fstrim = "fstrim.timer fstrim.service" 147SYSTEMD_SERVICE:${PN}-fstrim = "fstrim.timer fstrim.service"
148SYSTEMD_AUTO_ENABLE:${PN}-fstrim = "disable" 148SYSTEMD_AUTO_ENABLE:${PN}-fstrim = "disable"
149 149
150do_compile:append () {
151 cp ${UNPACKDIR}/fcntl-lock.c ${S}/fcntl-lock.c
152 ${CC} ${CFLAGS} ${LDFLAGS} ${S}/fcntl-lock.c -o ${B}/fcntl-lock
153}
154
150do_install () { 155do_install () {
151 # with ccache the timestamps on compiled files may 156 # with ccache the timestamps on compiled files may
152 # end up earlier than on their inputs, this allows 157 # end up earlier than on their inputs, this allows
@@ -182,13 +187,15 @@ do_install () {
182 echo 'MOUNTALL="-t nonfs,nosmbfs,noncpfs"' > ${D}${sysconfdir}/default/mountall 187 echo 'MOUNTALL="-t nonfs,nosmbfs,noncpfs"' > ${D}${sysconfdir}/default/mountall
183 188
184 rm -f ${D}${bindir}/chkdupexe 189 rm -f ${D}${bindir}/chkdupexe
190
191 install -m 0755 ${B}/fcntl-lock ${D}${bindir}
185} 192}
186 193
187do_install:append:class-target () { 194do_install:append:class-target () {
188 if [ "${@bb.utils.filter('PACKAGECONFIG', 'pam', d)}" ]; then 195 if [ "${@bb.utils.filter('PACKAGECONFIG', 'pam', d)}" ]; then
189 install -d ${D}${sysconfdir}/pam.d 196 install -d ${D}${sysconfdir}/pam.d
190 install -m 0644 ${WORKDIR}/runuser.pamd ${D}${sysconfdir}/pam.d/runuser 197 install -m 0644 ${UNPACKDIR}/runuser.pamd ${D}${sysconfdir}/pam.d/runuser
191 install -m 0644 ${WORKDIR}/runuser-l.pamd ${D}${sysconfdir}/pam.d/runuser-l 198 install -m 0644 ${UNPACKDIR}/runuser-l.pamd ${D}${sysconfdir}/pam.d/runuser-l
192 # Required for "su -" aka "su --login" because 199 # Required for "su -" aka "su --login" because
193 # otherwise it uses "other", which has "auth pam_deny.so" 200 # otherwise it uses "other", which has "auth pam_deny.so"
194 # and thus prevents the operation. 201 # and thus prevents the operation.
@@ -275,8 +282,11 @@ blkid.8 eject.1 findfs.8 fsck.8 kill.1 last.1 lastb.1 libblkid.3 logger.1 mesg.1
275mountpoint.1 nologin.8 rfkill.8 sulogin.8 utmpdump.1 uuid.3 wall.1\ 282mountpoint.1 nologin.8 rfkill.8 sulogin.8 utmpdump.1 uuid.3 wall.1\
276" 283"
277ALTERNATIVE:${PN}-doc += "${@bb.utils.contains('PACKAGECONFIG', 'pam', 'su.1', '', d)}" 284ALTERNATIVE:${PN}-doc += "${@bb.utils.contains('PACKAGECONFIG', 'pam', 'su.1', '', d)}"
285ALTERNATIVE:${PN}-doc += "${@bb.utils.contains('PACKAGECONFIG', 'chfn-chsh', 'chfn.1 chsh.1', '', d)}"
278 286
279ALTERNATIVE_LINK_NAME[blkid.8] = "${mandir}/man8/blkid.8" 287ALTERNATIVE_LINK_NAME[blkid.8] = "${mandir}/man8/blkid.8"
288ALTERNATIVE_LINK_NAME[chfn.1] = "${mandir}/man1/chfn.1"
289ALTERNATIVE_LINK_NAME[chsh.1] = "${mandir}/man1/chsh.1"
280ALTERNATIVE_LINK_NAME[eject.1] = "${mandir}/man1/eject.1" 290ALTERNATIVE_LINK_NAME[eject.1] = "${mandir}/man1/eject.1"
281ALTERNATIVE_LINK_NAME[findfs.8] = "${mandir}/man8/findfs.8" 291ALTERNATIVE_LINK_NAME[findfs.8] = "${mandir}/man8/findfs.8"
282ALTERNATIVE_LINK_NAME[fsck.8] = "${mandir}/man8/fsck.8" 292ALTERNATIVE_LINK_NAME[fsck.8] = "${mandir}/man8/fsck.8"
@@ -312,7 +322,7 @@ do_install_ptest() {
312 cp ${S}/tests/*.sh ${D}${PTEST_PATH}/tests/ 322 cp ${S}/tests/*.sh ${D}${PTEST_PATH}/tests/
313 cp -pR ${S}/tests/expected ${D}${PTEST_PATH}/tests/expected 323 cp -pR ${S}/tests/expected ${D}${PTEST_PATH}/tests/expected
314 cp -pR ${S}/tests/ts ${D}${PTEST_PATH}/tests/ 324 cp -pR ${S}/tests/ts ${D}${PTEST_PATH}/tests/
315 cp ${WORKDIR}/build/config.h ${D}${PTEST_PATH} 325 cp ${B}/config.h ${D}${PTEST_PATH}
316 326
317 sed -i 's|@base_sbindir@|${base_sbindir}|g' ${D}${PTEST_PATH}/run-ptest 327 sed -i 's|@base_sbindir@|${base_sbindir}|g' ${D}${PTEST_PATH}/run-ptest
318 328
diff --git a/meta/recipes-core/volatile-binds/volatile-binds.bb b/meta/recipes-core/volatile-binds/volatile-binds.bb
index cca8a65fb4..3597ec7356 100644
--- a/meta/recipes-core/volatile-binds/volatile-binds.bb
+++ b/meta/recipes-core/volatile-binds/volatile-binds.bb
@@ -9,7 +9,8 @@ SRC_URI = "\
9 file://volatile-binds.service.in \ 9 file://volatile-binds.service.in \
10" 10"
11 11
12S = "${WORKDIR}" 12S = "${WORKDIR}/sources"
13UNPACKDIR = "${S}"
13 14
14inherit allarch systemd features_check 15inherit allarch systemd features_check
15 16
@@ -64,7 +65,6 @@ END
64 "$var_lib_servicefile" 65 "$var_lib_servicefile"
65 fi 66 fi
66} 67}
67do_compile[dirs] = "${WORKDIR}"
68 68
69do_install () { 69do_install () {
70 install -d ${D}${base_sbindir} 70 install -d ${D}${base_sbindir}
@@ -82,4 +82,3 @@ do_install () {
82 ln -s /dev/null ${D}${sysconfdir}/tmpfiles.d/etc.conf 82 ln -s /dev/null ${D}${sysconfdir}/tmpfiles.d/etc.conf
83 ln -s /dev/null ${D}${sysconfdir}/tmpfiles.d/home.conf 83 ln -s /dev/null ${D}${sysconfdir}/tmpfiles.d/home.conf
84} 84}
85do_install[dirs] = "${WORKDIR}"
diff --git a/meta/recipes-core/zlib/site_config/headers b/meta/recipes-core/zlib/site_config/headers
deleted file mode 100644
index 50268918aa..0000000000
--- a/meta/recipes-core/zlib/site_config/headers
+++ /dev/null
@@ -1 +0,0 @@
1zlib.h