xref: /OK3568_Linux_fs/yocto/poky/meta/recipes-extended/gawk/gawk_5.1.1.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunSUMMARY = "GNU awk text processing utility"
2*4882a593SmuzhiyunDESCRIPTION = "The GNU version of awk, a text processing utility. \
3*4882a593SmuzhiyunAwk interprets a special-purpose programming language to do \
4*4882a593Smuzhiyunquick and easy text pattern matching and reformatting jobs."
5*4882a593SmuzhiyunHOMEPAGE = "https://www.gnu.org/software/gawk/"
6*4882a593SmuzhiyunBUGTRACKER  = "bug-gawk@gnu.org"
7*4882a593SmuzhiyunSECTION = "console/utils"
8*4882a593Smuzhiyun
9*4882a593Smuzhiyun# gawk <= 3.1.5: GPL-2.0-only
10*4882a593Smuzhiyun# gawk >= 3.1.6: GPL-3.0-only
11*4882a593SmuzhiyunLICENSE = "GPL-3.0-only"
12*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
13*4882a593Smuzhiyun
14*4882a593SmuzhiyunPACKAGECONFIG ??= "readline"
15*4882a593SmuzhiyunPACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
16*4882a593SmuzhiyunPACKAGECONFIG[mpfr] = "--with-mpfr,--without-mpfr, mpfr"
17*4882a593Smuzhiyun
18*4882a593SmuzhiyunSRC_URI = "${GNU_MIRROR}/gawk/gawk-${PV}.tar.gz \
19*4882a593Smuzhiyun           file://remove-sensitive-tests.patch \
20*4882a593Smuzhiyun           file://run-ptest \
21*4882a593Smuzhiyun           "
22*4882a593Smuzhiyun
23*4882a593SmuzhiyunSRC_URI[sha256sum] = "6168d8d1dc8f74bd17d9dc22fa9634c49070f232343b744901da15fb4f06bffd"
24*4882a593Smuzhiyun
25*4882a593Smuzhiyuninherit autotools gettext texinfo update-alternatives
26*4882a593Smuzhiyun
27*4882a593SmuzhiyunFILES:${PN} += "${datadir}/awk"
28*4882a593SmuzhiyunFILES:${PN}-dev += "${libdir}/${BPN}/*.la"
29*4882a593Smuzhiyun
30*4882a593SmuzhiyunALTERNATIVE:${PN} = "awk"
31*4882a593SmuzhiyunALTERNATIVE_TARGET[awk] = "${bindir}/gawk"
32*4882a593SmuzhiyunALTERNATIVE_PRIORITY = "100"
33*4882a593Smuzhiyun
34*4882a593Smuzhiyundo_install:append() {
35*4882a593Smuzhiyun	# remove the link since we don't package it
36*4882a593Smuzhiyun	rm ${D}${bindir}/awk
37*4882a593Smuzhiyun}
38*4882a593Smuzhiyun
39*4882a593Smuzhiyuninherit ptest
40*4882a593Smuzhiyun
41*4882a593Smuzhiyundo_install_ptest() {
42*4882a593Smuzhiyun	mkdir ${D}${PTEST_PATH}/test
43*4882a593Smuzhiyun	ln -s ${bindir}/gawk ${D}${PTEST_PATH}/gawk
44*4882a593Smuzhiyun	# The list of tests is all targets in Maketests, apart from the dummy Gt-dummy
45*4882a593Smuzhiyun	TESTS=$(awk -F: '$1 == "Gt-dummy" { next } /[[:alnum:]]+:$/ { print $1 }' ${S}/test/Maketests)
46*4882a593Smuzhiyun	for i in $TESTS Maketests inclib.awk; do
47*4882a593Smuzhiyun		cp ${S}/test/$i* ${D}${PTEST_PATH}/test
48*4882a593Smuzhiyun	done
49*4882a593Smuzhiyun	sed -i -e 's|/usr/local/bin|${bindir}|g' \
50*4882a593Smuzhiyun	    -e 's|#!${base_bindir}/awk|#!${bindir}/awk|g' ${D}${PTEST_PATH}/test/*.awk
51*4882a593Smuzhiyun
52*4882a593Smuzhiyun	sed -i -e "s|GAWKLOCALE|LANG|g" ${D}${PTEST_PATH}/test/Maketests
53*4882a593Smuzhiyun
54*4882a593Smuzhiyun	# These tests require an unloaded host as otherwise timing sensitive tests can fail
55*4882a593Smuzhiyun	# https://bugzilla.yoctoproject.org/show_bug.cgi?id=14371
56*4882a593Smuzhiyun	rm -f ${D}${PTEST_PATH}/test/time.*
57*4882a593Smuzhiyun	rm -f ${D}${PTEST_PATH}/test/timeout.*
58*4882a593Smuzhiyun}
59*4882a593Smuzhiyun
60*4882a593SmuzhiyunRDEPENDS:${PN}-ptest += "make"
61*4882a593Smuzhiyun
62*4882a593SmuzhiyunRDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-en-us.iso-8859-1"
63*4882a593Smuzhiyun
64*4882a593SmuzhiyunBBCLASSEXTEND = "native nativesdk"
65