diff options
Diffstat (limited to 'poky/meta/recipes-core/busybox')
3 files changed, 84 insertions, 10 deletions
diff --git a/poky/meta/recipes-core/busybox/busybox.inc b/poky/meta/recipes-core/busybox/busybox.inc index 6cfdcd734..45aaa2b41 100644 --- a/poky/meta/recipes-core/busybox/busybox.inc +++ b/poky/meta/recipes-core/busybox/busybox.inc @@ -133,16 +133,6 @@ do_prepare_config () { fi } -# returns all the elements from the src uri that are .cfg files -def find_cfgs(d): - sources=src_patches(d, True) - sources_list=[] - for s in sources: - if s.endswith('.cfg'): - sources_list.append(s) - - return sources_list - do_configure () { set -x do_prepare_config diff --git a/poky/meta/recipes-core/busybox/busybox/0001-hwclock-make-glibc-2.31-compatible.patch b/poky/meta/recipes-core/busybox/busybox/0001-hwclock-make-glibc-2.31-compatible.patch new file mode 100644 index 000000000..8d1f27212 --- /dev/null +++ b/poky/meta/recipes-core/busybox/busybox/0001-hwclock-make-glibc-2.31-compatible.patch @@ -0,0 +1,83 @@ +From 5b2fc5746c352eb2b27bfc9fb224580d9852d0fa Mon Sep 17 00:00:00 2001 +From: Sakib Sajal <sakib.sajal@windriver.com> +Date: Fri, 17 Jul 2020 17:27:21 +0000 +Subject: [PATCH] hwclock: make glibc 2.31 compatible + +NEWS for glibc version 2.31 +=========================== + +Deprecated and removed features, and other changes affecting compatibility: + +* The settimeofday function can still be used to set a system-wide + time zone when the operating system supports it. This is because + the Linux kernel reused the API, on some architectures, to describe + a system-wide time-zone-like offset between the software clock + maintained by the kernel, and the "RTC" clock that keeps time when + the system is shut down. + + However, to reduce the odds of this offset being set by accident, + settimeofday can no longer be used to set the time and the offset + simultaneously. If both of its two arguments are non-null, the call + will fail (setting errno to EINVAL). + + Callers attempting to set this offset should also be prepared for + the call to fail and set errno to ENOSYS; this already happens on + the Hurd and on some Linux architectures. The Linux kernel + maintainers are discussing a more principled replacement for the + reused API. After a replacement becomes available, we will change + settimeofday to fail with ENOSYS on all platforms when its 'tzp' + argument is not a null pointer. + + settimeofday itself is obsolescent according to POSIX. Programs + that set the system time should use clock_settime and/or the adjtime + family of functions instead. We may cease to make settimeofday + available to newly linked binaries after there is a replacement for + Linux's time-zone-like offset API. + +hwclock had two calls to settimeofday, in functions to_sys_clock and +set_system_clock_timezone, where both the arguments to settimeofday +were valid (non-null). +Therefore, split the call, once for timezone and once for timeval. + +Fixes #12756 + +Upstream-Status: Pending + +Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com> +--- + util-linux/hwclock.c | 12 ++++++++---- + 1 file changed, 8 insertions(+), 4 deletions(-) + +diff --git a/util-linux/hwclock.c b/util-linux/hwclock.c +index dc97d8f..cf346e8 100644 +--- a/util-linux/hwclock.c ++++ b/util-linux/hwclock.c +@@ -131,8 +131,10 @@ static void to_sys_clock(const char **pp_rtcname, int utc) + + tv.tv_sec = read_rtc(pp_rtcname, NULL, utc); + tv.tv_usec = 0; +- if (settimeofday(&tv, &tz)) +- bb_simple_perror_msg_and_die("settimeofday"); ++ if (settimeofday(NULL, &tz)) ++ bb_simple_perror_msg_and_die("settimeofday: timezone"); ++ if (settimeofday(&tv, NULL)) ++ bb_simple_perror_msg_and_die("settimeofday: timeval"); + } + + static void from_sys_clock(const char **pp_rtcname, int utc) +@@ -283,8 +285,10 @@ static void set_system_clock_timezone(int utc) + gettimeofday(&tv, NULL); + if (!utc) + tv.tv_sec += tz.tz_minuteswest * 60; +- if (settimeofday(&tv, &tz)) +- bb_simple_perror_msg_and_die("settimeofday"); ++ if (settimeofday(NULL, &tz)) ++ bb_simple_perror_msg_and_die("settimeofday: timezone"); ++ if (settimeofday(&tv, NULL)) ++ bb_simple_perror_msg_and_die("settimeofday: timeval"); + } + + //usage:#define hwclock_trivial_usage +-- +2.24.1 + diff --git a/poky/meta/recipes-core/busybox/busybox_1.32.0.bb b/poky/meta/recipes-core/busybox/busybox_1.32.0.bb index 0dfdfdb54..aeea40fbc 100644 --- a/poky/meta/recipes-core/busybox/busybox_1.32.0.bb +++ b/poky/meta/recipes-core/busybox/busybox_1.32.0.bb @@ -43,6 +43,7 @@ SRC_URI = "https://busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \ file://0001-testsuite-use-www.example.org-for-wget-test-cases.patch \ file://0001-du-l-works-fix-to-use-145-instead-of-144.patch \ file://0001-sysctl-ignore-EIO-of-stable_secret-below-proc-sys-ne.patch \ + file://0001-hwclock-make-glibc-2.31-compatible.patch \ " SRC_URI_append_libc-musl = " file://musl.cfg " |