summaryrefslogtreecommitdiffstats
path: root/meta/recipes-extended/gawk
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-extended/gawk')
-rw-r--r--meta/recipes-extended/gawk/gawk/remove-sensitive-tests.patch24
-rw-r--r--meta/recipes-extended/gawk/gawk/run-ptest7
-rw-r--r--meta/recipes-extended/gawk/gawk_5.3.0.bb (renamed from meta/recipes-extended/gawk/gawk_5.1.1.bb)31
3 files changed, 33 insertions, 29 deletions
diff --git a/meta/recipes-extended/gawk/gawk/remove-sensitive-tests.patch b/meta/recipes-extended/gawk/gawk/remove-sensitive-tests.patch
deleted file mode 100644
index 167c0787ee..0000000000
--- a/meta/recipes-extended/gawk/gawk/remove-sensitive-tests.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-These tests require an unloaded host as otherwise timing sensitive tests can fail
-https://bugzilla.yoctoproject.org/show_bug.cgi?id=14371
-
-Upstream-Status: Inappropriate
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
---- a/test/Maketests~
-+++ b/test/Maketests
-@@ -2069,7 +2069,2 @@
-
--timeout:
-- @echo $@ $(ZOS_FAIL)
-- @AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
-- @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
--
- typedregex1:
-@@ -2297,7 +2292,2 @@
- @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
--
--time:
-- @echo $@
-- @AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
-- @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
-
diff --git a/meta/recipes-extended/gawk/gawk/run-ptest b/meta/recipes-extended/gawk/gawk/run-ptest
index f67a95874f..f4ef3e7bd4 100644
--- a/meta/recipes-extended/gawk/gawk/run-ptest
+++ b/meta/recipes-extended/gawk/gawk/run-ptest
@@ -2,7 +2,12 @@
cd test
for i in `grep -E "^[a-z0-9_-]*:$" Maketests |awk -F: '{print $1}'`; do
- #LC_ALL=${GAWKLOCALE:-C} LANG=${GAWKLOCALE:-C}
+ unset LANG
+ grep -q "^$i$" skipped.txt
+ if [ $? -eq 0 ]; then
+ echo "SKIP: $i"
+ continue
+ fi
srcdir=`pwd` AWKPROG=gawk AWK=gawk CMP=cmp make -f Maketests $i >$i.tmp 2>&1
if [ -e _$i ]; then
cat _$i
diff --git a/meta/recipes-extended/gawk/gawk_5.1.1.bb b/meta/recipes-extended/gawk/gawk_5.3.0.bb
index fe339805d0..d7a0fc616d 100644
--- a/meta/recipes-extended/gawk/gawk_5.1.1.bb
+++ b/meta/recipes-extended/gawk/gawk_5.3.0.bb
@@ -16,17 +16,19 @@ PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
PACKAGECONFIG[mpfr] = "--with-mpfr,--without-mpfr, mpfr"
SRC_URI = "${GNU_MIRROR}/gawk/gawk-${PV}.tar.gz \
- file://remove-sensitive-tests.patch \
file://run-ptest \
"
-SRC_URI[sha256sum] = "6168d8d1dc8f74bd17d9dc22fa9634c49070f232343b744901da15fb4f06bffd"
+SRC_URI[sha256sum] = "378f8864ec21cfceaa048f7e1869ac9b4597b449087caf1eb55e440d30273336"
inherit autotools gettext texinfo update-alternatives
FILES:${PN} += "${datadir}/awk"
FILES:${PN}-dev += "${libdir}/${BPN}/*.la"
+PACKAGES =+ "${PN}-gawkbug"
+FILES:${PN}-gawkbug += "${bindir}/gawkbug"
+
ALTERNATIVE:${PN} = "awk"
ALTERNATIVE_TARGET[awk] = "${bindir}/gawk"
ALTERNATIVE_PRIORITY = "100"
@@ -34,6 +36,8 @@ ALTERNATIVE_PRIORITY = "100"
do_install:append() {
# remove the link since we don't package it
rm ${D}${bindir}/awk
+ # Strip non-reproducible build flags (containing build paths)
+ sed -i -e 's|^CC.*|CC=""|g' -e 's|^CFLAGS.*|CFLAGS=""|g' ${D}${bindir}/gawkbug
}
inherit ptest
@@ -46,7 +50,7 @@ do_install_ptest() {
for i in $TESTS Maketests inclib.awk; do
cp ${S}/test/$i* ${D}${PTEST_PATH}/test
done
- sed -i -e 's|/usr/local/bin|${bindir}|g' \
+ sed -i \
-e 's|#!${base_bindir}/awk|#!${bindir}/awk|g' ${D}${PTEST_PATH}/test/*.awk
sed -i -e "s|GAWKLOCALE|LANG|g" ${D}${PTEST_PATH}/test/Maketests
@@ -55,10 +59,29 @@ do_install_ptest() {
# https://bugzilla.yoctoproject.org/show_bug.cgi?id=14371
rm -f ${D}${PTEST_PATH}/test/time.*
rm -f ${D}${PTEST_PATH}/test/timeout.*
+ for t in time timeout; do
+ echo $t >> ${D}${PTEST_PATH}/test/skipped.txt
+ done
+}
+
+do_install_ptest:append:libc-musl() {
+ # Reported https://lists.gnu.org/archive/html/bug-gawk/2021-02/msg00005.html
+ rm -f ${D}${PTEST_PATH}/test/clos1way6.*
+ # Needs en_US.UTF-8 but then does not work with musl
+ rm -f ${D}${PTEST_PATH}/test/backsmalls1.*
+ # Needs en_US.UTF-8 but then does not work with musl
+ rm -f ${D}${PTEST_PATH}/test/commas.*
+ # The below two need LANG=C inside the make rule for musl
+ rm -f ${D}${PTEST_PATH}/test/rebt8b1.*
+ rm -f ${D}${PTEST_PATH}/test/regx8bit.*
+ for t in clos1way6 backsmalls1 commas rebt8b1 regx8bit; do
+ echo $t >> ${D}${PTEST_PATH}/test/skipped.txt
+ done
}
-RDEPENDS:${PN}-ptest += "make"
+RDEPENDS:${PN}-ptest += "make locale-base-en-us coreutils"
RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-en-us.iso-8859-1"
+RDEPENDS:${PN}-ptest:append:libc-musl = " musl-locales"
BBCLASSEXTEND = "native nativesdk"