Complete Yocto mirror with license table for TQMa6UL (2038-compliance)
- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
This commit is contained in:
143
sources/poky/meta/recipes-extended/bash/bash.inc
Normal file
143
sources/poky/meta/recipes-extended/bash/bash.inc
Normal file
@@ -0,0 +1,143 @@
|
||||
SUMMARY = "An sh-compatible command language interpreter"
|
||||
HOMEPAGE = "http://tiswww.case.edu/php/chet/bash/bashtop.html"
|
||||
DESCRIPTION = "Bash is the GNU Project's Bourne Again SHell, a complete implementation of the IEEE POSIX and Open Group shell specification with interactive command line editing, job control on architectures that support it, csh-like features such as history substitution and brace expansion, and a slew of other features."
|
||||
SECTION = "base/shell"
|
||||
|
||||
DEPENDS = "ncurses bison-native virtual/libiconv"
|
||||
|
||||
inherit autotools gettext texinfo update-alternatives ptest
|
||||
|
||||
EXTRA_AUTORECONF += "--exclude=autoheader"
|
||||
EXTRA_OECONF = "--enable-job-control --without-bash-malloc bash_cv_wexitstatus_offset=8"
|
||||
|
||||
# If NON_INTERACTIVE_LOGIN_SHELLS is defined, all login shells read the
|
||||
# startup files, even if they are not interactive.
|
||||
# This is what other major distros do. And this is what we wanted. See bug#5359 and bug#7137.
|
||||
CFLAGS += "-DNON_INTERACTIVE_LOGIN_SHELLS"
|
||||
|
||||
# This can vary depending upon the host
|
||||
CFLAGS += "-DHEREDOC_PIPESIZE=65536"
|
||||
|
||||
# Disable bracketed paste mode by default (enabled by default in bash 5.1). It
|
||||
# causes a lot of garbage in non-interactive shells
|
||||
CFLAGS += "-DBRACKETED_PASTE_DEFAULT=0"
|
||||
|
||||
ALTERNATIVE:${PN} = "bash sh"
|
||||
ALTERNATIVE_LINK_NAME[bash] = "${base_bindir}/bash"
|
||||
ALTERNATIVE_TARGET[bash] = "${base_bindir}/bash"
|
||||
ALTERNATIVE_LINK_NAME[sh] = "${base_bindir}/sh"
|
||||
ALTERNATIVE_TARGET[sh] = "${base_bindir}/bash.${BPN}"
|
||||
ALTERNATIVE_PRIORITY = "100"
|
||||
|
||||
RDEPENDS:${PN} += "base-files"
|
||||
RDEPENDS:${PN}:class-nativesdk = ""
|
||||
RDEPENDS:${PN}-ptest += "make coreutils perl sed shadow util-linux-setpriv"
|
||||
|
||||
RDEPENDS:${PN}-ptest:append:libc-glibc = " \
|
||||
glibc-gconv-big5hkscs \
|
||||
glibc-gconv-iso8859-1 \
|
||||
glibc-utils \
|
||||
locale-base-de-de \
|
||||
locale-base-en-us \
|
||||
locale-base-fr-fr \
|
||||
locale-base-fr-fr.iso-8859-1 \
|
||||
locale-base-zh-hk.big5-hkscs \
|
||||
"
|
||||
|
||||
CACHED_CONFIGUREVARS += "headersdir=${includedir}/${PN}"
|
||||
|
||||
do_configure:prepend () {
|
||||
if [ ! -e ${S}/acinclude.m4 ]; then
|
||||
cat ${S}/aclocal.m4 > ${S}/acinclude.m4
|
||||
fi
|
||||
}
|
||||
|
||||
do_compile:prepend() {
|
||||
# Remove any leftover .build files. This ensures that bash always has the
|
||||
# same version number and keeps builds reproducible
|
||||
rm -f ${B}/.build
|
||||
}
|
||||
|
||||
do_compile_ptest () {
|
||||
oe_runmake buildtest
|
||||
}
|
||||
|
||||
do_install:prepend () {
|
||||
# Ensure determinism as this counter increases for each make call
|
||||
rm -f ${B}/.build
|
||||
}
|
||||
|
||||
do_install:append () {
|
||||
# Move /usr/bin/bash to /bin/bash, if need
|
||||
if [ "${base_bindir}" != "${bindir}" ]; then
|
||||
mkdir -p ${D}${base_bindir}
|
||||
mv ${D}${bindir}/bash ${D}${base_bindir}
|
||||
fi
|
||||
}
|
||||
|
||||
fix_absolute_paths () {
|
||||
# Clean buildhost references in bashbug
|
||||
sed -i -e "s,--sysroot=${STAGING_DIR_TARGET},,g" \
|
||||
-e "s,-I${WORKDIR}/\S* ,,g" \
|
||||
-e 's|${DEBUG_PREFIX_MAP}||g' \
|
||||
${D}${bindir}/bashbug
|
||||
|
||||
# Clean buildhost references in bash.pc
|
||||
sed -i -e "s,--sysroot=${STAGING_DIR_TARGET},,g" \
|
||||
${D}${libdir}/pkgconfig/bash.pc
|
||||
|
||||
# Clean buildhost references in Makefile.inc
|
||||
sed -i -e "s,--sysroot=${STAGING_DIR_TARGET},,g" \
|
||||
-e 's|${DEBUG_PREFIX_MAP}||g' \
|
||||
-e 's:${HOSTTOOLS_DIR}/::g' \
|
||||
-e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \
|
||||
${D}${libdir}/bash/Makefile.inc
|
||||
}
|
||||
|
||||
do_install:append:class-target () {
|
||||
fix_absolute_paths
|
||||
}
|
||||
|
||||
do_install:append:class-nativesdk () {
|
||||
fix_absolute_paths
|
||||
}
|
||||
|
||||
do_install_ptest () {
|
||||
make INSTALL_TEST_DIR=${D}${PTEST_PATH}/tests install-test
|
||||
cp ${B}/Makefile ${D}${PTEST_PATH}
|
||||
cp ${B}/config.h ${D}${PTEST_PATH}
|
||||
cp ${B}/version.h ${D}${PTEST_PATH}
|
||||
cp ${S}/y.tab.[ch] ${D}${PTEST_PATH}
|
||||
install -D ${WORKDIR}/run-bash-ptests ${D}${PTEST_PATH}/run-bash-ptests
|
||||
sed -i -e 's/^Makefile/_Makefile/' -e "s,--sysroot=${STAGING_DIR_TARGET},,g" \
|
||||
-e 's|${DEBUG_PREFIX_MAP}||g' \
|
||||
-e 's|${BUILD_LDFLAGS}||g' \
|
||||
-e "s,${S},,g" -e "s,${B},,g" -e "s,${STAGING_DIR_NATIVE},,g" \
|
||||
-e 's:${HOSTTOOLS_DIR}/::g' \
|
||||
-e 's:${UNINATIVE_LOADER}:${base_bindir}/false:g' \
|
||||
${D}${PTEST_PATH}/Makefile
|
||||
}
|
||||
# The uninative loader is different on i386 & x86_64 hosts. Since it is only
|
||||
# being replaced with /bin/false anyway, it doesn't need to be part of the task
|
||||
# hash
|
||||
do_install_ptest[vardepsexclude] += "UNINATIVE_LOADER"
|
||||
|
||||
pkg_postinst:${PN} () {
|
||||
grep -q "^${base_bindir}/bash$" $D${sysconfdir}/shells || echo ${base_bindir}/bash >> $D${sysconfdir}/shells
|
||||
}
|
||||
|
||||
pkg_postrm:${PN} () {
|
||||
printf "$(grep -v "^${base_bindir}/bash$" $D${sysconfdir}/shells)\n" > $D${sysconfdir}/shells
|
||||
}
|
||||
|
||||
PACKAGES += "${PN}-bashbug"
|
||||
FILES:${PN} = "${bindir}/bash ${base_bindir}/bash.bash"
|
||||
FILES:${PN}-bashbug = "${bindir}/bashbug"
|
||||
|
||||
PACKAGE_BEFORE_PN += "${PN}-loadable"
|
||||
RDEPENDS:${PN}-loadable += "${PN}"
|
||||
FILES:${PN}-loadable += "${libdir}/bash/*"
|
||||
|
||||
# Limit the RPROVIDES here to class target so that if usrmerge is enabled for nativesdk, it does not
|
||||
# include host system paths in /bin/
|
||||
RPROVIDES:${PN}:append:class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', '/bin/sh /bin/bash', '', d)}"
|
||||
@@ -0,0 +1,226 @@
|
||||
From 721d5be99eb37d31e48bd66d61808a66a4c5ab84 Mon Sep 17 00:00:00 2001
|
||||
From: Chet Ramey <chet.ramey@case.edu>
|
||||
Date: Mon, 30 Oct 2023 12:16:07 -0400
|
||||
Subject: [PATCH] changes to SIGINT handler while waiting for a child; skip
|
||||
vertical whitespace after translating an integer
|
||||
|
||||
Upstream-Status: Backport from
|
||||
[https://git.savannah.gnu.org/cgit/bash.git/commit/?h=devel&id=fe24a6a55e8850298b496c5b9d82f1866eba190e]
|
||||
|
||||
[Adjust and drop some codes to be applicable the tree]
|
||||
|
||||
Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
|
||||
---
|
||||
general.c | 5 +++--
|
||||
jobs.c | 24 ++++++++++++++++--------
|
||||
tests/redir.right | 4 ++--
|
||||
tests/redir11.sub | 2 ++
|
||||
tests/type.right | 16 ++++++++--------
|
||||
tests/type.tests | 24 ++++++++++++------------
|
||||
6 files changed, 43 insertions(+), 32 deletions(-)
|
||||
|
||||
diff --git a/general.c b/general.c
|
||||
index 85c5a8b6..65e2ee06 100644
|
||||
--- a/general.c
|
||||
+++ b/general.c
|
||||
@@ -262,8 +262,9 @@ legal_number (string, result)
|
||||
if (errno || ep == string)
|
||||
return 0; /* errno is set on overflow or underflow */
|
||||
|
||||
- /* Skip any trailing whitespace, since strtoimax does not. */
|
||||
- while (whitespace (*ep))
|
||||
+ /* Skip any trailing whitespace, since strtoimax does not, using the same
|
||||
+ test that strtoimax uses for leading whitespace. */
|
||||
+ while (isspace ((unsigned char) *ep))
|
||||
ep++;
|
||||
|
||||
/* If *string is not '\0' but *ep is '\0' on return, the entire string
|
||||
diff --git a/jobs.c b/jobs.c
|
||||
index 6b986ed7..262d78de 100644
|
||||
--- a/jobs.c
|
||||
+++ b/jobs.c
|
||||
@@ -2718,6 +2718,10 @@ wait_for_background_pids (ps)
|
||||
#define INVALID_SIGNAL_HANDLER (SigHandler *)wait_for_background_pids
|
||||
static SigHandler *old_sigint_handler = INVALID_SIGNAL_HANDLER;
|
||||
|
||||
+/* The current SIGINT handler as set by restore_sigint_handler. Only valid
|
||||
+ immediately after restore_sigint_handler, used for continuations. */
|
||||
+static SigHandler *cur_sigint_handler = INVALID_SIGNAL_HANDLER;
|
||||
+
|
||||
static int wait_sigint_received;
|
||||
static int child_caught_sigint;
|
||||
|
||||
@@ -2735,6 +2739,7 @@ wait_sigint_cleanup ()
|
||||
static void
|
||||
restore_sigint_handler ()
|
||||
{
|
||||
+ cur_sigint_handler = old_sigint_handler;
|
||||
if (old_sigint_handler != INVALID_SIGNAL_HANDLER)
|
||||
{
|
||||
set_signal_handler (SIGINT, old_sigint_handler);
|
||||
@@ -2758,8 +2763,7 @@ wait_sigint_handler (sig)
|
||||
restore_sigint_handler ();
|
||||
/* If we got a SIGINT while in `wait', and SIGINT is trapped, do
|
||||
what POSIX.2 says (see builtins/wait.def for more info). */
|
||||
- if (this_shell_builtin && this_shell_builtin == wait_builtin &&
|
||||
- signal_is_trapped (SIGINT) &&
|
||||
+ if (signal_is_trapped (SIGINT) &&
|
||||
((sigint_handler = trap_to_sighandler (SIGINT)) == trap_handler))
|
||||
{
|
||||
trap_handler (SIGINT); /* set pending_traps[SIGINT] */
|
||||
@@ -2782,6 +2786,8 @@ wait_sigint_handler (sig)
|
||||
{
|
||||
set_exit_status (128+SIGINT);
|
||||
restore_sigint_handler ();
|
||||
+ if (cur_sigint_handler == INVALID_SIGNAL_HANDLER)
|
||||
+ set_sigint_handler (); /* XXX - only do this in one place */
|
||||
kill (getpid (), SIGINT);
|
||||
}
|
||||
|
||||
@@ -2926,11 +2932,13 @@ wait_for (pid, flags)
|
||||
{
|
||||
SigHandler *temp_sigint_handler;
|
||||
|
||||
- temp_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler);
|
||||
- if (temp_sigint_handler == wait_sigint_handler)
|
||||
- internal_debug ("wait_for: recursively setting old_sigint_handler to wait_sigint_handler: running_trap = %d", running_trap);
|
||||
- else
|
||||
- old_sigint_handler = temp_sigint_handler;
|
||||
+ temp_sigint_handler = old_sigint_handler;
|
||||
+ old_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler);
|
||||
+ if (old_sigint_handler == wait_sigint_handler)
|
||||
+ {
|
||||
+ internal_debug ("wait_for: recursively setting old_sigint_handler to wait_sigint_handler: running_trap = %d", running_trap);
|
||||
+ old_sigint_handler = temp_sigint_handler;
|
||||
+ }
|
||||
waiting_for_child = 0;
|
||||
if (old_sigint_handler == SIG_IGN)
|
||||
set_signal_handler (SIGINT, old_sigint_handler);
|
||||
@@ -4136,7 +4144,7 @@ set_job_status_and_cleanup (job)
|
||||
SIGINT (if we reset the sighandler to the default).
|
||||
In this case, we have to fix things up. What a crock. */
|
||||
if (temp_handler == trap_handler && signal_is_trapped (SIGINT) == 0)
|
||||
- temp_handler = trap_to_sighandler (SIGINT);
|
||||
+ temp_handler = trap_to_sighandler (SIGINT);
|
||||
restore_sigint_handler ();
|
||||
if (temp_handler == SIG_DFL)
|
||||
termsig_handler (SIGINT); /* XXX */
|
||||
diff --git a/tests/redir.right b/tests/redir.right
|
||||
index 8db10414..9e1403c8 100644
|
||||
--- a/tests/redir.right
|
||||
+++ b/tests/redir.right
|
||||
@@ -154,10 +154,10 @@ foo
|
||||
1
|
||||
7
|
||||
after: 42
|
||||
-./redir11.sub: line 53: $(ss= declare -i ss): ambiguous redirect
|
||||
+./redir11.sub: line 55: $(ss= declare -i ss): ambiguous redirect
|
||||
after: 42
|
||||
a+=3
|
||||
foo
|
||||
foo
|
||||
-./redir11.sub: line 75: 42: No such file or directory
|
||||
+./redir11.sub: line 77: 42: No such file or directory
|
||||
42
|
||||
diff --git a/tests/redir11.sub b/tests/redir11.sub
|
||||
index d417cdb6..ca9854cd 100644
|
||||
--- a/tests/redir11.sub
|
||||
+++ b/tests/redir11.sub
|
||||
@@ -34,6 +34,8 @@ a=4 b=7 ss=4 declare -i ss
|
||||
a=4 b=7 foo
|
||||
echo after: $a
|
||||
|
||||
+exec 7>&- 4>&-
|
||||
+
|
||||
unset a
|
||||
a=4 echo foo 2>&1 >&$(foo) | { grep -q 'Bad file' || echo 'redir11 bad 3'; }
|
||||
a=1 echo foo 2>&1 >&$(foo) | { grep -q 'Bad file' || echo 'redir11 bad 4'; }
|
||||
diff --git a/tests/type.right b/tests/type.right
|
||||
index bbc228e8..e0a66745 100644
|
||||
--- a/tests/type.right
|
||||
+++ b/tests/type.right
|
||||
@@ -24,15 +24,15 @@ func ()
|
||||
}
|
||||
while
|
||||
while is a shell keyword
|
||||
-./type.tests: line 56: type: m: not found
|
||||
-alias m='more'
|
||||
-alias m='more'
|
||||
-m is aliased to `more'
|
||||
+./type.tests: line 56: type: morealias: not found
|
||||
+alias morealias='more'
|
||||
+alias morealias='more'
|
||||
+morealias is aliased to `more'
|
||||
alias
|
||||
-alias m='more'
|
||||
-alias m='more'
|
||||
-alias m='more'
|
||||
-m is aliased to `more'
|
||||
+alias morealias='more'
|
||||
+alias morealias='more'
|
||||
+alias morealias='more'
|
||||
+morealias is aliased to `more'
|
||||
builtin
|
||||
builtin is a shell builtin
|
||||
/bin/sh
|
||||
diff --git a/tests/type.tests b/tests/type.tests
|
||||
index fd39c18a..ddc15407 100644
|
||||
--- a/tests/type.tests
|
||||
+++ b/tests/type.tests
|
||||
@@ -25,8 +25,6 @@ type -r ${THIS_SH}
|
||||
type notthere
|
||||
command -v notthere
|
||||
|
||||
-alias m=more
|
||||
-
|
||||
unset -f func 2>/dev/null
|
||||
func() { echo this is func; }
|
||||
|
||||
@@ -49,24 +47,26 @@ command -V func
|
||||
command -v while
|
||||
command -V while
|
||||
|
||||
+alias morealias=more
|
||||
+
|
||||
# the following two lines should produce the same output
|
||||
# post-3.0 patch makes command -v silent, as posix specifies
|
||||
# first test with alias expansion off (should all fail or produce no output)
|
||||
-type -t m
|
||||
-type m
|
||||
-command -v m
|
||||
+type -t morealias
|
||||
+type morealias
|
||||
+command -v morealias
|
||||
alias -p
|
||||
-alias m
|
||||
+alias morealias
|
||||
|
||||
# then test with alias expansion on
|
||||
shopt -s expand_aliases
|
||||
-type m
|
||||
-type -t m
|
||||
-command -v m
|
||||
+type morealias
|
||||
+type -t morealias
|
||||
+command -v morealias
|
||||
alias -p
|
||||
-alias m
|
||||
+alias morealias
|
||||
|
||||
-command -V m
|
||||
+command -V morealias
|
||||
shopt -u expand_aliases
|
||||
|
||||
command -v builtin
|
||||
@@ -76,7 +76,7 @@ command -V /bin/sh
|
||||
|
||||
unset -f func
|
||||
type func
|
||||
-unalias m
|
||||
+unalias morealias
|
||||
type m
|
||||
|
||||
hash -r
|
||||
--
|
||||
2.35.5
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
From e9ed388e760ec33dcf9e72c639946c0d0abeec26 Mon Sep 17 00:00:00 2001
|
||||
From: Ross Burton <ross.burton@arm.com>
|
||||
Date: Wed, 19 Jun 2024 12:57:39 +0000
|
||||
Subject: [PATCH] Fix C99 problems
|
||||
|
||||
Backport some fixes from upstream to fix configure checks that fail with GCC 14.1.
|
||||
|
||||
Upstream-Status: Backport [devel branch]
|
||||
Signed-off-by: Ross Burton <ross.burton@arm.com>
|
||||
---
|
||||
aclocal.m4 | 3 +++
|
||||
configure.ac | 2 +-
|
||||
2 files changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/aclocal.m4 b/aclocal.m4
|
||||
index cc97bd4..7423b99 100644
|
||||
--- a/aclocal.m4
|
||||
+++ b/aclocal.m4
|
||||
@@ -238,6 +238,9 @@ AC_CACHE_VAL(bash_cv_dup2_broken,
|
||||
#include <sys/types.h>
|
||||
#include <fcntl.h>
|
||||
#include <stdlib.h>
|
||||
+#ifdef HAVE_UNISTD_H
|
||||
+# include <unistd.h>
|
||||
+#endif /* HAVE_UNISTD_H */
|
||||
int
|
||||
main()
|
||||
{
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index a3b5bd7..2a38c6b 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -842,7 +842,7 @@ AC_CHECK_DECLS([strtold], [
|
||||
[AC_COMPILE_IFELSE(
|
||||
[AC_LANG_PROGRAM(
|
||||
[[#include <stdlib.h>]],
|
||||
- [[long double r; char *foo, bar; r = strtold(foo, &bar);]]
|
||||
+ [[long double r; char *foo, *bar; r = strtold(foo, &bar);]]
|
||||
)],
|
||||
[bash_cv_strtold_broken=no],[bash_cv_strtold_broken=yes])
|
||||
]
|
||||
@@ -0,0 +1,60 @@
|
||||
From 318b762837c2ad25319caeaf0320eff613b64daf Mon Sep 17 00:00:00 2001
|
||||
From: Anders Roxell <anders.roxell@enea.com>
|
||||
Date: Wed, 19 Dec 2012 17:18:31 +0100
|
||||
Subject: [PATCH] Add 'ptest' target to Makefile, to run tests without checking
|
||||
dependencies.
|
||||
|
||||
Upstream-Status: Inappropriate [ptest specific]
|
||||
Signed-off-by: Anders Roxell <anders.roxell@enea.com>
|
||||
|
||||
Rebase to 5.0
|
||||
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
|
||||
|
||||
---
|
||||
Makefile.in | 24 +++++++++++++++++++-----
|
||||
1 file changed, 19 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index bc97049..937ce39 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -943,20 +943,34 @@ maybe-clean:
|
||||
fi
|
||||
|
||||
recho$(EXEEXT): $(SUPPORT_SRC)recho.c
|
||||
- @$(CC_FOR_BUILD) $(CCFLAGS_FOR_BUILD) ${LDFLAGS_FOR_BUILD} -o $@ $(SUPPORT_SRC)recho.c ${LIBS_FOR_BUILD}
|
||||
+ @$(CC) $(CCFLAGS) ${LDFLAGS} -o $@ $<
|
||||
|
||||
zecho$(EXEEXT): $(SUPPORT_SRC)zecho.c
|
||||
- @$(CC_FOR_BUILD) $(CCFLAGS_FOR_BUILD) ${LDFLAGS_FOR_BUILD} -o $@ $(SUPPORT_SRC)zecho.c ${LIBS_FOR_BUILD}
|
||||
+ @$(CC) $(CCFLAGS) ${LDFLAGS} -o $@ $<
|
||||
|
||||
printenv$(EXEEXT): $(SUPPORT_SRC)printenv.c
|
||||
- @$(CC_FOR_BUILD) $(CCFLAGS_FOR_BUILD) ${LDFLAGS_FOR_BUILD} -o $@ $(SUPPORT_SRC)printenv.c ${LIBS_FOR_BUILD}
|
||||
+ @$(CC) $(CCFLAGS) ${LDFLAGS} -o $@ $<
|
||||
|
||||
xcase$(EXEEXT): $(SUPPORT_SRC)xcase.c
|
||||
- @$(CC_FOR_BUILD) $(CCFLAGS_FOR_BUILD) ${LDFLAGS_FOR_BUILD} -o $@ $(SUPPORT_SRC)xcase.c ${LIBS_FOR_BUILD}
|
||||
+ @$(CC) $(CCFLAGS) ${LDFLAGS} -o $@ $<
|
||||
|
||||
-test tests check: force $(Program) $(TESTS_SUPPORT)
|
||||
+test tests check:
|
||||
+ @$(MAKE) install-test
|
||||
+ @$(MAKE) runtest
|
||||
+
|
||||
+install-test: buildtest
|
||||
+ifeq ($(origin INSTALL_TEST_DIR), undefined)
|
||||
@-test -d tests || mkdir tests
|
||||
@cp $(TESTS_SUPPORT) tests
|
||||
+else
|
||||
+ @-test -d $(INSTALL_TEST_DIR) || mkdir -p $(INSTALL_TEST_DIR)
|
||||
+ @cp -r $(srcdir)/tests/* $(INSTALL_TEST_DIR)/
|
||||
+ @cp $(TESTS_SUPPORT) $(INSTALL_TEST_DIR)
|
||||
+endif
|
||||
+
|
||||
+buildtest: force $(Program) $(TESTS_SUPPORT)
|
||||
+
|
||||
+runtest:
|
||||
@( cd $(srcdir)/tests && \
|
||||
BUILD_DIR=$(BUILD_DIR) PATH=$(BUILD_DIR)/tests:$$PATH THIS_SH=$(THIS_SH) $(SHELL) ${TESTSCRIPT} )
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
From 59ddfda14e3c9aa6286bb4c4c0748f7c1324a65a Mon Sep 17 00:00:00 2001
|
||||
From: Chet Ramey <chet.ramey@case.edu>
|
||||
Date: Fri, 7 Apr 2023 00:28:46 -0700
|
||||
Subject: [PATCH] $(<nosuchfile) is no longer a fatal error with errexit
|
||||
enabled
|
||||
|
||||
This is a trimmed-down version of a commit in the bash 'devel' branch
|
||||
[1] that contains this fix as well as other unrelated ones.
|
||||
|
||||
[1] https://git.savannah.gnu.org/cgit/bash.git/commit/?h=devel&id=ec9447ce9392a0f93d96789c3741285fede8a150
|
||||
|
||||
Upstream-Status: Backport
|
||||
|
||||
Signed-off-by: Zev Weiss <zev@bewilderbeest.net>
|
||||
---
|
||||
builtins/evalstring.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/builtins/evalstring.c b/builtins/evalstring.c
|
||||
index df3dd68e2a7e..6612081cd646 100644
|
||||
--- a/builtins/evalstring.c
|
||||
+++ b/builtins/evalstring.c
|
||||
@@ -753,7 +753,7 @@ open_redir_file (r, fnp)
|
||||
fd = open(fn, O_RDONLY);
|
||||
if (fd < 0)
|
||||
{
|
||||
- file_error (fn);
|
||||
+ internal_error ("%s: %s", fn, strerror (errno));
|
||||
free (fn);
|
||||
if (fnp)
|
||||
*fnp = 0;
|
||||
--
|
||||
2.40.0
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
From 0c4cab9594c96c2dc435a8d9724605824bcbf917 Mon Sep 17 00:00:00 2001
|
||||
From: Dengke Du <dengke.du@windriver.com>
|
||||
Date: Tue, 19 Apr 2016 02:57:45 -0400
|
||||
Subject: [PATCH] fix run-builtins failed
|
||||
|
||||
FAIL: run-builtins
|
||||
1. redirect the stderr output of command exec with -l option in
|
||||
builtins.tests to /dev/null
|
||||
2. ensure the system contain the locales "en_US.UTF-8"
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Dengke Du <dengke.du@windriver.com>
|
||||
---
|
||||
tests/builtins.tests | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tests/builtins.tests b/tests/builtins.tests
|
||||
index 9d77520..63f3af8 100644
|
||||
--- a/tests/builtins.tests
|
||||
+++ b/tests/builtins.tests
|
||||
@@ -109,7 +109,7 @@ esac
|
||||
|
||||
# test options to exec
|
||||
(exec -a specialname ${THIS_SH} -c 'echo $0' )
|
||||
-(exec -l -a specialname ${THIS_SH} -c 'echo $0' )
|
||||
+(exec -l -a specialname ${THIS_SH} -c 'echo $0' ) 2> /dev/null
|
||||
# test `clean' environment. if /bin/sh is bash, and the script version of
|
||||
# printenv is run, there will be variables in the environment that bash
|
||||
# sets on startup. Also test code that prefixes argv[0] with a dash.
|
||||
--
|
||||
2.8.1
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
On hosts with FORTIFY_SOURCES, stringize support is required, as it's used by
|
||||
the macros to wrap functions (e.g. read and open in unistd.h). Those wrappers
|
||||
use the STRING() macro from unistd.h. A header in the bash sources overrides
|
||||
the unistd.h macro to 'x' when HAVE_STRINGIZE is not defined, causing the
|
||||
wrappers to generate calls to 'xread' and 'xopen', which do not exist,
|
||||
resulting in a failure to link.
|
||||
|
||||
Assume we have stringize support when cross-compiling, which works around the
|
||||
issue.
|
||||
|
||||
It may be best for upstream to either give up on supporting compilers without
|
||||
stringize support, or to not define STRING() at all when FORTIFY_SOURCES is
|
||||
defined, letting the unistd.h one be used, instead.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
--- bash-4.2.orig/builtins/mkbuiltins.c
|
||||
+++ bash-4.2/builtins/mkbuiltins.c
|
||||
@@ -28,6 +28,7 @@
|
||||
# define HAVE_STDLIB_H
|
||||
|
||||
# define HAVE_RENAME
|
||||
+# define HAVE_STRINGIZE
|
||||
#endif /* CROSS_COMPILING */
|
||||
|
||||
#if defined (HAVE_UNISTD_H)
|
||||
@@ -0,0 +1,4 @@
|
||||
#!/bin/sh
|
||||
cd "$(dirname "$0")"
|
||||
make -k THIS_SH=/bin/bash BUILD_DIR=`pwd` srcdir=`pwd` runtest
|
||||
|
||||
26
sources/poky/meta/recipes-extended/bash/bash/run-ptest
Normal file
26
sources/poky/meta/recipes-extended/bash/bash/run-ptest
Normal file
@@ -0,0 +1,26 @@
|
||||
#!/bin/sh
|
||||
|
||||
en_US=`locale -a | grep en_US*`
|
||||
fr_FR=`locale -a | grep fr_FR*`
|
||||
de_DE=`locale -a | grep de_DE*`
|
||||
|
||||
if [ -z "$en_US" ]
|
||||
then
|
||||
echo "Warning: The en_US* locales is needed to run the intl.tests, please add it."
|
||||
fi
|
||||
|
||||
if [ -z "$fr_FR" ]
|
||||
then
|
||||
echo "Warning: The fr_FR* locales is needed to run the intl.tests, please add it."
|
||||
fi
|
||||
|
||||
if [ -z "$de_DE" ]
|
||||
then
|
||||
echo "Warning: The de_DE* locales is needed to run the intl.tests, please add it."
|
||||
fi
|
||||
|
||||
useradd bashtest
|
||||
chown -R bashtest:bashtest tests
|
||||
setpriv --reuid bashtest --rgid bashtest --clear-groups --reset-env $(dirname "$0")/run-bash-ptests
|
||||
chown -R root:root tests
|
||||
userdel -r bashtest
|
||||
@@ -0,0 +1,42 @@
|
||||
From 28eb06047ebd2deaa8c7cd2bf6655ef6a469dc14 Mon Sep 17 00:00:00 2001
|
||||
From: Hongxu Jia <hongxu.jia@windriver.com>
|
||||
Date: Tue, 15 Aug 2017 10:01:56 +0800
|
||||
Subject: [PATCH 1/2] Add FAIL/PASS output to test output.
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Björn Stenberg <bjst@enea.com>
|
||||
Upstream-Status: Pending
|
||||
|
||||
Rebase to 4.4
|
||||
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
|
||||
---
|
||||
tests/run-all | 11 ++++++++++-
|
||||
1 file changed, 10 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tests/run-all b/tests/run-all
|
||||
index 2882fe0..e21d026 100644
|
||||
--- a/tests/run-all
|
||||
+++ b/tests/run-all
|
||||
@@ -33,7 +33,16 @@ do
|
||||
case $x in
|
||||
$0|run-minimal|run-gprof) ;;
|
||||
*.orig|*~) ;;
|
||||
- *) echo $x ; sh $x ; rm -f ${BASH_TSTOUT} ;;
|
||||
+ *) echo $x
|
||||
+ output=`sh $x`
|
||||
+ if [ -n "$output" ]; then
|
||||
+ echo "$output"
|
||||
+ echo "FAIL: $x"
|
||||
+ else
|
||||
+ echo "PASS: $x"
|
||||
+ fi
|
||||
+ rm -f ${BASH_TSTOUT}
|
||||
+ ;;
|
||||
esac
|
||||
done
|
||||
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@@ -0,0 +1,70 @@
|
||||
From d1bf23817afffd5917b74da6946e0c3b7e63e336 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
Date: Mon, 28 Dec 2020 21:04:27 +0100
|
||||
Subject: [PATCH] bash: update 5.0 -> 5.1
|
||||
|
||||
Including m4 files directly like this confuses autotools.bbclass, remove
|
||||
the references and rely upon aclocal to collect the m4 files together
|
||||
as needed instead making it work like other autotools based projects.
|
||||
|
||||
Upstream-Status: Inappropriate [OE configuration specific]
|
||||
RP 2021/1/20
|
||||
|
||||
---
|
||||
configure.ac | 43 -------------------------------------------
|
||||
1 file changed, 43 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 50a6e20..a3b5bd7 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -710,49 +710,6 @@ if test x$SIZE = x; then
|
||||
fi
|
||||
AC_SUBST(SIZE)
|
||||
|
||||
-m4_include([m4/stat-time.m4])
|
||||
-m4_include([m4/timespec.m4])
|
||||
-
|
||||
-m4_include([m4/strtoimax.m4])
|
||||
-
|
||||
-dnl include files for gettext
|
||||
-
|
||||
-m4_include([m4/codeset.m4])
|
||||
-m4_include([m4/extern-inline.m4])
|
||||
-m4_include([m4/fcntl-o.m4])
|
||||
-m4_include([m4/gettext.m4])
|
||||
-m4_include([m4/glibc2.m4])
|
||||
-m4_include([m4/glibc21.m4])
|
||||
-m4_include([m4/host-cpu-c-abi.m4])
|
||||
-m4_include([m4/iconv.m4])
|
||||
-m4_include([m4/intdiv0.m4])
|
||||
-m4_include([m4/intl.m4])
|
||||
-m4_include([m4/intlmacosx.m4])
|
||||
-m4_include([m4/intl-thread-locale.m4])
|
||||
-m4_include([m4/intmax.m4])
|
||||
-m4_include([m4/inttypes-pri.m4])
|
||||
-m4_include([m4/inttypes.m4])
|
||||
-m4_include([m4/inttypes_h.m4])
|
||||
-m4_include([m4/lcmessage.m4])
|
||||
-m4_include([m4/lib-ld.m4])
|
||||
-m4_include([m4/lib-link.m4])
|
||||
-m4_include([m4/lib-prefix.m4])
|
||||
-m4_include([m4/lock.m4])
|
||||
-m4_include([m4/nls.m4])
|
||||
-m4_include([m4/po.m4])
|
||||
-m4_include([m4/printf-posix.m4])
|
||||
-m4_include([m4/progtest.m4])
|
||||
-m4_include([m4/pthread_rwlock_rdlock.m4])
|
||||
-m4_include([m4/size_max.m4])
|
||||
-m4_include([m4/stdint_h.m4])
|
||||
-m4_include([m4/threadlib.m4])
|
||||
-m4_include([m4/uintmax_t.m4])
|
||||
-m4_include([m4/ulonglong.m4])
|
||||
-m4_include([m4/visibility.m4])
|
||||
-m4_include([m4/wchar_t.m4])
|
||||
-m4_include([m4/wint_t.m4])
|
||||
-m4_include([m4/xsize.m4])
|
||||
-
|
||||
dnl C compiler characteristics
|
||||
AC_C_CONST
|
||||
AC_C_INLINE
|
||||
25
sources/poky/meta/recipes-extended/bash/bash_5.2.21.bb
Normal file
25
sources/poky/meta/recipes-extended/bash/bash_5.2.21.bb
Normal file
@@ -0,0 +1,25 @@
|
||||
require bash.inc
|
||||
|
||||
# GPL-2.0-or-later (< 4.0), GPL-3.0-or-later (>= 4.0)
|
||||
LICENSE = "GPL-3.0-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
|
||||
|
||||
SRC_URI = "${GNU_MIRROR}/bash/${BP}.tar.gz;name=tarball \
|
||||
file://mkbuiltins_have_stringize.patch \
|
||||
file://build-tests.patch \
|
||||
file://test-output.patch \
|
||||
file://run-ptest \
|
||||
file://run-bash-ptests \
|
||||
file://fix-run-builtins.patch \
|
||||
file://use_aclocal.patch \
|
||||
file://0001-changes-to-SIGINT-handler-while-waiting-for-a-child-.patch \
|
||||
file://fix-filesubst-errexit.patch \
|
||||
file://0001-fix-c99.patch \
|
||||
"
|
||||
|
||||
SRC_URI[tarball.sha256sum] = "c8e31bdc59b69aaffc5b36509905ba3e5cbb12747091d27b4b977f078560d5b8"
|
||||
|
||||
DEBUG_OPTIMIZATION:append:armv4 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}"
|
||||
DEBUG_OPTIMIZATION:append:armv5 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}"
|
||||
|
||||
BBCLASSEXTEND = "nativesdk"
|
||||
Reference in New Issue
Block a user