1
0
mirror of https://git.yoctoproject.org/poky synced 2026-07-21 05:27:01 +00:00
Files
Alexander Kanavin 9475d79149 gawk: upgrade 5.2.1 -> 5.2.2
This is a bug fix release.

Changes from 5.2.1 to 5.2.2
---------------------------

1. Infrastructure upgrades: makeinfo 7.0.1 must be used to format
   the manual.  As a result, the manual can also now be formatted
   with LaTeX by running it through `makeinfo --latex'.

2. Gawk no longer builds an x86_64 executable on M1 macOS systems.
   This means that PMA is unavailable on those systems.

3. Gawk will now diagnose if a heap file was created with a different
   setting of -M/--bignum than in the current invocation and exit with
   a fatal message if so.

4. Gawk no longer "leaks" its free list of NODEs in the heap file, resulting
   in much more efficient usage of persistent storage.

5. PROCINFO["pma"] exists if the PMA allocator is compiled into gawk.
   Its value is the PMA version.

6. The time extension is no longer deprecated. The strptime() function
   from gawkextlib's timex extension has been added to it.

7. Better information is passed to input parsers for when they want to
   decide whether or not to take control of a file. In particular, the
   readdir extension is simplified for Windows because of this.

8. The various PNG files are now installed for Info and HTML. The
   images files now have gawk_ prefixed names to avoid any conflicts
   with other installed PNG file names.

9. As usual, there have been several minor code cleanups and bug fixes.
   See the ChangeLog for details.

(From OE-Core rev: 3ace3af1e57b701308ab397c6ac45a6fa703ed40)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 8504a35f1fe222d256241ff00c05b63e24e9adcb)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2023-07-07 04:30:25 -10:00

88 lines
3.0 KiB
BlitzBasic

SUMMARY = "GNU awk text processing utility"
DESCRIPTION = "The GNU version of awk, a text processing utility. \
Awk interprets a special-purpose programming language to do \
quick and easy text pattern matching and reformatting jobs."
HOMEPAGE = "https://www.gnu.org/software/gawk/"
BUGTRACKER = "bug-gawk@gnu.org"
SECTION = "console/utils"
# gawk <= 3.1.5: GPL-2.0-only
# gawk >= 3.1.6: GPL-3.0-only
LICENSE = "GPL-3.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
PACKAGECONFIG ??= "readline"
PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
PACKAGECONFIG[mpfr] = "--with-mpfr,--without-mpfr, mpfr"
SRC_URI = "${GNU_MIRROR}/gawk/gawk-${PV}.tar.gz \
file://run-ptest \
"
SRC_URI[sha256sum] = "945aef7ccff101f20b22a10802bc005e994ab2b8ea3e724cc1a197c62f41f650"
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"
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
do_install_ptest() {
mkdir ${D}${PTEST_PATH}/test
ln -s ${bindir}/gawk ${D}${PTEST_PATH}/gawk
# The list of tests is all targets in Maketests, apart from the dummy Gt-dummy
TESTS=$(awk -F: '$1 == "Gt-dummy" { next } /[[:alnum:]]+:$/ { print $1 }' ${S}/test/Maketests)
for i in $TESTS Maketests inclib.awk; do
cp ${S}/test/$i* ${D}${PTEST_PATH}/test
done
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
# These tests require an unloaded host as otherwise timing sensitive tests can fail
# 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 locale-base-en-us"
RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-en-us.iso-8859-1"
RDEPENDS:${PN}-ptest:append:libc-musl = " musl-locales"
BBCLASSEXTEND = "native nativesdk"