summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/coreutils
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-core/coreutils')
-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-ls-restore-8.31-behavior-on-removed-directories.patch99
-rw-r--r--meta/recipes-core/coreutils/coreutils/0001-uname-report-processor-and-hardware-correctly.patch64
-rw-r--r--meta/recipes-core/coreutils/coreutils/disable-ls-output-quoting.patch49
-rw-r--r--meta/recipes-core/coreutils/coreutils/fix-selinux-flask.patch36
-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_8.32.bb)74
7 files changed, 55 insertions, 286 deletions
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 @@
-Subject: local.mk: fix cross compiling problem
+From 7cb2d20cfa2a27191255031d231cd41917dcffe8 Mon Sep 17 00:00:00 2001
+From: Chen Qi <Qi.Chen@windriver.com>
+Date: Mon, 26 Dec 2016 16:10:35 +0800
+Subject: [PATCH] local.mk: fix cross compiling problem
We meet the following error when cross compiling.
| Makefile:3418: *** Recursive variable 'INSTALL' references itself (eventually). Stop.
@@ -12,15 +15,12 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/local.mk b/src/local.mk
-index 36dfa4e..c5898cc 100644
+index 96ee941..cdd47d6 100644
--- a/src/local.mk
+++ b/src/local.mk
-@@ -649,4 +649,4 @@ cu_install_program = @INSTALL_PROGRAM@
+@@ -704,4 +704,4 @@ cu_install_program = @INSTALL@
else
cu_install_program = src/ginstall
endif
-INSTALL = $(cu_install_program) -c
+INSTALL_PROGRAM = $(cu_install_program)
---
-2.1.0
-
diff --git a/meta/recipes-core/coreutils/coreutils/0001-ls-restore-8.31-behavior-on-removed-directories.patch b/meta/recipes-core/coreutils/coreutils/0001-ls-restore-8.31-behavior-on-removed-directories.patch
deleted file mode 100644
index fa900e3a76..0000000000
--- a/meta/recipes-core/coreutils/coreutils/0001-ls-restore-8.31-behavior-on-removed-directories.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-From 7c273e5c6041f8c70f73f5b280fbb8f27d9b5a36 Mon Sep 17 00:00:00 2001
-From: Paul Eggert <eggert@cs.ucla.edu>
-Date: Thu, 5 Mar 2020 17:25:29 -0800
-Subject: [PATCH] ls: restore 8.31 behavior on removed directories
-
-* NEWS: Mention this.
-* src/ls.c: Do not include <sys/sycall.h>
-(print_dir): Don't worry about whether the directory is removed.
-* tests/ls/removed-directory.sh: Adjust to match new (i.e., old)
-behavior.
-
-Upstream-Status: Backport [https://github.com/coreutils/coreutils/commit/10fcb97bd728f09d4a027eddf8ad2900f0819b0a]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- src/ls.c | 22 ----------------------
- tests/ls/removed-directory.sh | 10 ++--------
- 2 files changed, 2 insertions(+), 30 deletions(-)
-
-diff --git a/src/ls.c b/src/ls.c
-index 637fe7a..0111f49 100644
---- a/src/ls.c
-+++ b/src/ls.c
-@@ -49,10 +49,6 @@
- # include <sys/ptem.h>
- #endif
-
--#ifdef __linux__
--# include <sys/syscall.h>
--#endif
--
- #include <stdio.h>
- #include <assert.h>
- #include <setjmp.h>
-@@ -2895,7 +2891,6 @@ print_dir (char const *name, char const *realname, bool command_line_arg)
- struct dirent *next;
- uintmax_t total_blocks = 0;
- static bool first = true;
-- bool found_any_entries = false;
-
- errno = 0;
- dirp = opendir (name);
-@@ -2971,7 +2966,6 @@ print_dir (char const *name, char const *realname, bool command_line_arg)
- next = readdir (dirp);
- if (next)
- {
-- found_any_entries = true;
- if (! file_ignored (next->d_name))
- {
- enum filetype type = unknown;
-@@ -3017,22 +3011,6 @@ print_dir (char const *name, char const *realname, bool command_line_arg)
- if (errno != EOVERFLOW)
- break;
- }
--#ifdef __linux__
-- else if (! found_any_entries)
-- {
-- /* If readdir finds no directory entries at all, not even "." or
-- "..", then double check that the directory exists. */
-- if (syscall (SYS_getdents, dirfd (dirp), NULL, 0) == -1
-- && errno != EINVAL)
-- {
-- /* We exclude EINVAL as that pertains to buffer handling,
-- and we've passed NULL as the buffer for simplicity.
-- ENOENT is returned if appropriate before buffer handling. */
-- file_failure (command_line_arg, _("reading directory %s"), name);
-- }
-- break;
-- }
--#endif
- else
- break;
-
-diff --git a/tests/ls/removed-directory.sh b/tests/ls/removed-directory.sh
-index e8c835d..fe8f929 100755
---- a/tests/ls/removed-directory.sh
-+++ b/tests/ls/removed-directory.sh
-@@ -26,20 +26,14 @@ case $host_triplet in
- *) skip_ 'non linux kernel' ;;
- esac
-
--LS_FAILURE=2
--
--cat <<\EOF >exp-err || framework_failure_
--ls: reading directory '.': No such file or directory
--EOF
--
- cwd=$(pwd)
- mkdir d || framework_failure_
- cd d || framework_failure_
- rmdir ../d || framework_failure_
-
--returns_ $LS_FAILURE ls >../out 2>../err || fail=1
-+ls >../out 2>../err || fail=1
- cd "$cwd" || framework_failure_
- compare /dev/null out || fail=1
--compare exp-err err || fail=1
-+compare /dev/null err || fail=1
-
- Exit $fail
diff --git a/meta/recipes-core/coreutils/coreutils/0001-uname-report-processor-and-hardware-correctly.patch b/meta/recipes-core/coreutils/coreutils/0001-uname-report-processor-and-hardware-correctly.patch
deleted file mode 100644
index 3c43e1d5da..0000000000
--- a/meta/recipes-core/coreutils/coreutils/0001-uname-report-processor-and-hardware-correctly.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-Upstream-Status: Denied
-
-Subject: uname: report processor and hardware correctly
-
-This patch is rejected by coreutils upstream, but distros like debian and fedora
-uses this patch to make `uname -i' and `uname -p' to not report 'unknown'.
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
----
- src/uname.c | 18 ++++++++++++++++--
- 1 file changed, 16 insertions(+), 2 deletions(-)
-
-diff --git a/src/uname.c b/src/uname.c
-index 39bd28c..c84582d 100644
---- a/src/uname.c
-+++ b/src/uname.c
-@@ -299,13 +299,19 @@ main (int argc, char **argv)
-
- if (toprint & PRINT_PROCESSOR)
- {
-- char const *element = unknown;
-+ char *element = unknown;
- #if HAVE_SYSINFO && defined SI_ARCHITECTURE
- {
- static char processor[257];
- if (0 <= sysinfo (SI_ARCHITECTURE, processor, sizeof processor))
- element = processor;
- }
-+#else
-+ {
-+ static struct utsname u;
-+ uname(&u);
-+ element = u.machine;
-+ }
- #endif
- #ifdef UNAME_PROCESSOR
- if (element == unknown)
-@@ -343,7 +349,7 @@ main (int argc, char **argv)
-
- if (toprint & PRINT_HARDWARE_PLATFORM)
- {
-- char const *element = unknown;
-+ char *element = unknown;
- #if HAVE_SYSINFO && defined SI_PLATFORM
- {
- static char hardware_platform[257];
-@@ -361,6 +367,14 @@ main (int argc, char **argv)
- if (sysctl (mib, 2, hardware_platform, &s, 0, 0) >= 0)
- element = hardware_platform;
- }
-+#else
-+ {
-+ static struct utsname u;
-+ uname(&u);
-+ element = u.machine;
-+ if(strlen(element)==4 && element[0]=='i' && element[2]=='8' && element[3]=='6')
-+ element[1]='3';
-+ }
- #endif
- if (! (toprint == UINT_MAX && element == unknown))
- print_element (element);
---
-1.9.1
-
diff --git a/meta/recipes-core/coreutils/coreutils/disable-ls-output-quoting.patch b/meta/recipes-core/coreutils/coreutils/disable-ls-output-quoting.patch
deleted file mode 100644
index e68c213550..0000000000
--- a/meta/recipes-core/coreutils/coreutils/disable-ls-output-quoting.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-Subject: revert inconsistent ls quoting
-
-This is a revert of upstream commit 109b9220cead6e979d22d16327c4d9f8350431cc.
-
-Bug-Debian: https://bugs.debian.org/813164
-
-Upstream-Status: Submitted
-
-Originally-by: Adam Borowski <kilobyte@angband.pl>
-[PG: patch from https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=813164#78 ]
-Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
-
----
-
---- coreutils-8.25.orig/NEWS
-+++ coreutils-8.25/NEWS
-@@ -71,9 +71,6 @@ GNU coreutils NEWS
- df now prefers sources towards the root of a device when
- eliding duplicate bind mounted entries.
-
-- ls now quotes file names unambiguously and appropriate for use in a shell,
-- when outputting to a terminal.
--
- join, sort, uniq with --zero-terminated, now treat '\n' as a field delimiter.
-
- ** Improvements
---- coreutils-8.25.orig/doc/coreutils.texi
-+++ coreutils-8.25/doc/coreutils.texi
-@@ -7750,8 +7750,8 @@ this"} in the default C locale. This lo
-
- You can specify the default value of the @option{--quoting-style} option
- with the environment variable @env{QUOTING_STYLE}@. If that environment
--variable is not set, the default value is @samp{shell-escape} when the
--output is a terminal, and @samp{literal} otherwise.
-+variable is not set, the default value is @samp{literal}, but this
-+default may change to @samp{shell} in a future version of this package.
-
- @item --show-control-chars
- @opindex --show-control-chars
---- coreutils-8.25.orig/src/ls.c
-+++ coreutils-8.25/src/ls.c
-@@ -1581,7 +1581,6 @@ decode_switches (int argc, char **argv)
- if (isatty (STDOUT_FILENO))
- {
- format = many_per_line;
-- set_quoting_style (NULL, shell_escape_quoting_style);
- /* See description of qmark_funny_chars, above. */
- qmark_funny_chars = true;
- }
diff --git a/meta/recipes-core/coreutils/coreutils/fix-selinux-flask.patch b/meta/recipes-core/coreutils/coreutils/fix-selinux-flask.patch
deleted file mode 100644
index 173a57925b..0000000000
--- a/meta/recipes-core/coreutils/coreutils/fix-selinux-flask.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 7e20a7242ba2657f73311bbf5278093da67f0721 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Tue, 16 Sep 2014 01:59:08 -0700
-Subject: [PATCH] gnulib-comp.m4: selinux/flask.h should respect to
- with_selinux
-
-Fixed when build with meta-selinux even when --without-selinux:
-runcon.c:49:28: fatal error: selinux/flask.h: No such file or directory
- # include <selinux/flask.h>
- ^
-compilation terminated.
-
-Upstream-Status: Pending
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
-
----
- m4/gnulib-comp.m4 | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/m4/gnulib-comp.m4 b/m4/gnulib-comp.m4
-index dead90e..0abf0bd 100644
---- a/m4/gnulib-comp.m4
-+++ b/m4/gnulib-comp.m4
-@@ -1860,10 +1860,10 @@ AC_DEFUN([gl_INIT],
- AC_LIBOBJ([select])
- fi
- gl_SYS_SELECT_MODULE_INDICATOR([select])
-- AC_CHECK_HEADERS([selinux/flask.h])
- gl_HEADERS_SELINUX_SELINUX_H
- gl_HEADERS_SELINUX_CONTEXT_H
- if test "$with_selinux" != no && test "$ac_cv_header_selinux_selinux_h" = yes; then
-+ AC_CHECK_HEADERS([selinux/flask.h])
- AC_LIBOBJ([getfilecon])
- fi
- gl_SERVENT
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 @@
-From a26530083a29eeee910bfd606ecc621acecd547a Mon Sep 17 00:00:00 2001
+From f53ffb5b27ab7d4a4c62df00ebd6a1a6936d1709 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 3 Aug 2011 14:12:30 -0700
Subject: [PATCH] coreutils: Fix build on uclibc
@@ -12,16 +12,15 @@ and make life easier for cross compilation process.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upstream-Status: Inappropriate [Upstream does care for AIX while we may not]
-
---
m4/getloadavg.m4 | 12 ------------
1 file changed, 12 deletions(-)
diff --git a/m4/getloadavg.m4 b/m4/getloadavg.m4
-index 8e96965..63782a2 100644
+index 9d0236f..68f7c52 100644
--- a/m4/getloadavg.m4
+++ b/m4/getloadavg.m4
-@@ -41,18 +41,6 @@ AC_CHECK_FUNC([getloadavg], [],
+@@ -46,18 +46,6 @@ if test $ac_cv_func_getloadavg != yes; then
[LIBS="-lutil $LIBS" gl_func_getloadavg_done=yes])
fi
diff --git a/meta/recipes-core/coreutils/coreutils_8.32.bb b/meta/recipes-core/coreutils/coreutils_9.5.bb
index f8ae3fd94c..9a5f836ebe 100644
--- a/meta/recipes-core/coreutils/coreutils_8.32.bb
+++ b/meta/recipes-core/coreutils/coreutils_9.5.bb
@@ -4,46 +4,48 @@ manipulation utilities. These are the core utilities which are expected to exist
every system."
HOMEPAGE = "http://www.gnu.org/software/coreutils/"
BUGTRACKER = "http://debbugs.gnu.org/coreutils"
-LICENSE = "GPLv3+"
+LICENSE = "GPL-3.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \
- file://src/ls.c;beginline=1;endline=15;md5=b7d80abf5b279320fb0e4b1007ed108b \
+ file://src/ls.c;beginline=1;endline=15;md5=9ac94aaed7fd46fd8df7147a9e3410cb \
"
DEPENDS = "gmp libcap"
-DEPENDS_class-native = ""
+DEPENDS:class-native = ""
inherit autotools gettext texinfo
SRC_URI = "${GNU_MIRROR}/coreutils/${BP}.tar.xz \
file://remove-usr-local-lib-from-m4.patch \
- file://fix-selinux-flask.patch \
- file://0001-uname-report-processor-and-hardware-correctly.patch \
- file://disable-ls-output-quoting.patch \
file://0001-local.mk-fix-cross-compiling-problem.patch \
file://run-ptest \
- file://0001-ls-restore-8.31-behavior-on-removed-directories.patch \
"
+SRC_URI[sha256sum] = "cd328edeac92f6a665de9f323c93b712af1858bc2e0d88f3f7100469470a1b8a"
-SRC_URI[md5sum] = "022042695b7d5bcf1a93559a9735e668"
-SRC_URI[sha256sum] = "4458d8de7849df44ccab15e16b1548b285224dbba5f08fac070c1c0e0bcc4cfa"
+# http://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=v8.27-101-gf5d7c0842
+#
+CVE_STATUS[CVE-2016-2781] = "disputed: runcon is not really a sandbox command, use `runcon ... setsid ...` to avoid this particular issue."
-EXTRA_OECONF_class-native = "--without-gmp"
-EXTRA_OECONF_class-target = "--enable-install-program=arch,hostname --libexecdir=${libdir}"
-EXTRA_OECONF_class-nativesdk = "--enable-install-program=arch,hostname"
+EXTRA_OECONF:class-target = "--enable-install-program=arch,hostname --libexecdir=${libdir}"
+EXTRA_OECONF:class-nativesdk = "--enable-install-program=arch,hostname"
# acl and xattr are not default features
#
-PACKAGECONFIG_class-target ??= "\
+PACKAGECONFIG:class-target ??= "\
${@bb.utils.filter('DISTRO_FEATURES', 'acl xattr', d)} \
"
# The lib/oe/path.py requires xattr
-PACKAGECONFIG_class-native ??= "xattr"
+PACKAGECONFIG:class-native ??= "xattr"
+
+# oe-core builds need xattr support
+PACKAGECONFIG:class-nativesdk ??= "xattr"
# with, without, depends, rdepends
#
PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl,"
PACKAGECONFIG[xattr] = "--enable-xattr,--disable-xattr,attr,"
PACKAGECONFIG[single-binary] = "--enable-single-binary,--disable-single-binary,,"
+PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux"
+PACKAGECONFIG[openssl] = "--with-openssl=yes,--with-openssl=no,openssl"
# [ df mktemp nice printenv base64 gets a special treatment and is not included in this
bindir_progs = "arch basename chcon cksum comm csplit cut dir dircolors dirname du \
@@ -63,16 +65,16 @@ sbindir_progs= "chroot"
# coreutils-stdbuf without getting the rest of coreutils, but make
# coreutils itself pull in stdbuf, so IMAGE_INSTALL += "coreutils"
# always provides all coreutils
-PACKAGE_BEFORE_PN_class-target += "${@bb.utils.contains('PACKAGECONFIG', 'single-binary', '', 'coreutils-stdbuf', d)}"
-FILES_coreutils-stdbuf = "${bindir}/stdbuf ${libdir}/coreutils/libstdbuf.so"
-RDEPENDS_coreutils_class-target += "${@bb.utils.contains('PACKAGECONFIG', 'single-binary', '', 'coreutils-stdbuf', d)}"
+PACKAGE_BEFORE_PN:class-target += "${@bb.utils.contains('PACKAGECONFIG', 'single-binary', '', 'coreutils-stdbuf', d)}"
+FILES:coreutils-stdbuf = "${bindir}/stdbuf ${libdir}/coreutils/libstdbuf.so"
+RDEPENDS:coreutils:class-target += "${@bb.utils.contains('PACKAGECONFIG', 'single-binary', '', 'coreutils-stdbuf', d)}"
# However, when the single-binary PACKAGECONFIG is used, stdbuf
# functionality is built into the single coreutils binary, so there's
# no point splitting /usr/bin/stdbuf to its own package. Instead, add
# an RPROVIDE so that rdepending on coreutils-stdbuf will work
# regardless of whether single-binary is in effect.
-RPROVIDES_coreutils += "${@bb.utils.contains('PACKAGECONFIG', 'single-binary', 'coreutils-stdbuf', '', d)}"
+RPROVIDES:coreutils += "${@bb.utils.contains('PACKAGECONFIG', 'single-binary', 'coreutils-stdbuf', '', d)}"
# Let aclocal use the relative path for the m4 file rather than the
# absolute since coreutils has a lot of m4 files, otherwise there might
@@ -81,20 +83,20 @@ RPROVIDES_coreutils += "${@bb.utils.contains('PACKAGECONFIG', 'single-binary', '
acpaths = "-I ./m4"
# Deal with a separate builddir failure if src doesn't exist when creating version.c/version.h
-do_compile_prepend () {
+do_compile:prepend () {
mkdir -p ${B}/src
}
-do_install_class-native() {
+do_install:class-native() {
autotools_do_install
# remove groups to fix conflict with shadow-native
rm -f ${D}${STAGING_BINDIR_NATIVE}/groups
# The return is a must since native doesn't need the
- # do_install_append() in the below.
+ # do_install:append() in the below.
return
}
-do_install_append() {
+do_install:append() {
for i in df mktemp nice printenv base64; do mv ${D}${bindir}/$i ${D}${bindir}/$i.${BPN}; done
install -d ${D}${base_bindir}
@@ -114,8 +116,8 @@ inherit update-alternatives
ALTERNATIVE_PRIORITY = "100"
# Make hostname's priority higher than busybox but lower than net-tools
ALTERNATIVE_PRIORITY[hostname] = "90"
-ALTERNATIVE_${PN} = "lbracket ${bindir_progs} ${base_bindir_progs} ${sbindir_progs} base64 nice printenv mktemp df"
-ALTERNATIVE_${PN}-doc = "base64.1 nice.1 mktemp.1 df.1 groups.1 kill.1 uptime.1 stat.1 hostname.1"
+ALTERNATIVE:${PN} = "lbracket ${bindir_progs} ${base_bindir_progs} ${sbindir_progs} base32 base64 nice printenv mktemp df"
+ALTERNATIVE:${PN}-doc = "base64.1 nice.1 mktemp.1 df.1 groups.1 kill.1 uptime.1 stat.1 hostname.1"
ALTERNATIVE_LINK_NAME[hostname.1] = "${mandir}/man1/hostname.1"
@@ -146,6 +148,13 @@ ALTERNATIVE_LINK_NAME[uptime.1] = "${mandir}/man1/uptime.1"
ALTERNATIVE_LINK_NAME[kill.1] = "${mandir}/man1/kill.1"
ALTERNATIVE_LINK_NAME[stat.1] = "${mandir}/man1/stat.1"
+# The statx() requires glibc >= 2.28 and linux kernel >= 4.11, it doesn't work
+# when glibc >= 2.28 ((Ubuntu 20.04 in docker) and kernel < 4.11 (Host OS
+# CentOS 7), we can check kernel version and disable it, but that would cause
+# two different signatures for coreutils-native, so disable it unconditionally
+# for deterministic build.
+EXTRA_OECONF:append:class-native = " ac_cv_func_statx=0"
+
python __anonymous() {
for prog in d.getVar('base_bindir_progs').split():
d.setVarFlag('ALTERNATIVE_LINK_NAME', prog, '%s/%s' % (d.getVar('base_bindir'), prog))
@@ -158,12 +167,13 @@ BBCLASSEXTEND = "native nativesdk"
inherit ptest
-RDEPENDS_${PN}-ptest += "bash findutils gawk liberror-perl libmodule-build-perl make perl perl-module-file-stat python3-core sed shadow"
+RDEPENDS:${PN}-ptest += "bash findutils gawk make perl perl-modules python3-core sed shadow"
# -dev automatic dependencies fails as we don't want libmodule-build-perl-dev, its too heavy
# may need tweaking if DEPENDS changes
-RRECOMMENDS_coreutils-dev[nodeprrecs] = "1"
-RRECOMMENDS_coreutils-dev = "acl-dev attr-dev gmp-dev libcap-dev bash-dev findutils-dev gawk-dev shadow-dev"
+# Can't use ${PN}-dev here since flags with overrides and key expansion not supported
+RRECOMMENDS:coreutils-dev[nodeprrecs] = "1"
+RRECOMMENDS:${PN}-dev += "acl-dev attr-dev gmp-dev libcap-dev bash-dev findutils-dev gawk-dev shadow-dev"
do_install_ptest () {
install -d ${D}${PTEST_PATH}/tests
@@ -171,6 +181,7 @@ do_install_ptest () {
sed -i 's/ginstall/install/g' `grep -R ginstall ${D}${PTEST_PATH}/tests | awk -F: '{print $1}' | uniq`
install -d ${D}${PTEST_PATH}/build-aux
install ${S}/build-aux/test-driver ${D}${PTEST_PATH}/build-aux/
+ install -Dm 0644 ${B}/lib/config.h ${D}${PTEST_PATH}/lib/config.h
cp ${B}/Makefile ${D}${PTEST_PATH}/
cp ${S}/init.cfg ${D}${PTEST_PATH}/
cp -r ${B}/src ${D}${PTEST_PATH}/
@@ -182,6 +193,7 @@ do_install_ptest () {
sed -i '/^abs_top_builddir/s/= .*$/= \$\{PWD\}/g' ${D}${PTEST_PATH}/Makefile
sed -i '/^abs_top_srcdir/s/= .*$/= \$\{PWD\}/g' ${D}${PTEST_PATH}/Makefile
sed -i '/^built_programs/s/ginstall/install/g' ${D}${PTEST_PATH}/Makefile
+ sed -i '/^CC =/s/ --sysroot=.*recipe-sysroot/ /g' ${D}${PTEST_PATH}/Makefile
chmod -R 777 ${D}${PTEST_PATH}
# Disable subcase stty-pairs.sh, it will cause test framework hang
@@ -198,4 +210,10 @@ do_install_ptest () {
sed -i s:@libdir@:${libdir}:g ${D}${PTEST_PATH}/run-ptest
}
-FILES_${PN}-ptest += "${bindir}/getlimits"
+do_install_ptest:append:libc-musl () {
+ # these tests fail due to bash on musl systems
+ # xmalloc: cannot allocate 16146 bytes
+ sed -i -e '/tests\/dd\/no-allocate.sh/d' ${D}${PTEST_PATH}/Makefile
+ sed -i -e '/tests\/split\/line-bytes.sh/d' ${D}${PTEST_PATH}/Makefile
+}
+FILES:${PN}-ptest += "${bindir}/getlimits"