1*4882a593SmuzhiyunSUMMARY = "Traditional Unix macro processor" 2*4882a593SmuzhiyunHOMEPAGE = "https://www.gnu.org/software/m4/m4.html" 3*4882a593SmuzhiyunDESCRIPTION = "GNU m4 is an implementation of the traditional Unix macro processor. It is mostly SVR4 \ 4*4882a593Smuzhiyuncompatible although it has some extensions (for example, handling more than 9 positional parameters to macros). \ 5*4882a593SmuzhiyunGNU M4 also has built-in functions for including files, running shell commands, doing arithmetic, etc." 6*4882a593Smuzhiyun 7*4882a593Smuzhiyuninherit autotools texinfo ptest gettext 8*4882a593Smuzhiyun 9*4882a593SmuzhiyunSRC_URI = "${GNU_MIRROR}/m4/m4-${PV}.tar.gz \ 10*4882a593Smuzhiyun file://ac_config_links.patch \ 11*4882a593Smuzhiyun file://0001-sigsegv-Fix-build-on-ppc-musl.patch \ 12*4882a593Smuzhiyun " 13*4882a593SmuzhiyunSRC_URI:append:class-target = " file://run-ptest \ 14*4882a593Smuzhiyun file://serial-tests-config.patch \ 15*4882a593Smuzhiyun " 16*4882a593Smuzhiyun 17*4882a593SmuzhiyunSRC_URI[md5sum] = "f4a2b0284d80353b995f8ef2385ed73c" 18*4882a593SmuzhiyunSRC_URI[sha256sum] = "3be4a26d825ffdfda52a56fc43246456989a3630093cced3fbddf4771ee58a70" 19*4882a593Smuzhiyun 20*4882a593SmuzhiyunLICENSE = "GPL-3.0-only" 21*4882a593Smuzhiyun 22*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464\ 23*4882a593Smuzhiyun file://examples/COPYING;md5=4031593b2166d6c47cae282d944a7ede" 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun# Fix "Argument list too long" error when len(TMPDIR) = 410 26*4882a593Smuzhiyunacpaths = "-I ./m4" 27*4882a593Smuzhiyun 28*4882a593SmuzhiyunEXTRA_OECONF += "--without-libsigsegv-prefix" 29*4882a593Smuzhiyun 30*4882a593SmuzhiyunEXTRA_OEMAKE += "'infodir=${infodir}'" 31*4882a593Smuzhiyun 32*4882a593Smuzhiyundo_compile_ptest() { 33*4882a593Smuzhiyun cd ${B}/tests 34*4882a593Smuzhiyun sed -i '/^buildtest-TESTS: /c buildtest-TESTS: $(TESTS) $(check_LIBRARIES) $(check_PROGRAMS)' Makefile 35*4882a593Smuzhiyun oe_runmake buildtest-TESTS 36*4882a593Smuzhiyun} 37*4882a593Smuzhiyun 38*4882a593Smuzhiyundo_install_ptest() { 39*4882a593Smuzhiyun cp -r ${B}/tests ${D}${PTEST_PATH} 40*4882a593Smuzhiyun cp -r ${S}/tests/* ${D}${PTEST_PATH}/tests/ 41*4882a593Smuzhiyun sed -i '/^Makefile:/c Makefile:' ${D}${PTEST_PATH}/tests/Makefile 42*4882a593Smuzhiyun sed -i -e "s;LOCALE_FR='fr_FR';LOCALE_FR='fr_FR.iso88591';g" \ 43*4882a593Smuzhiyun -e "s;LOCALE_FR_UTF8='none';LOCALE_FR_UTF8='fr_FR.utf8';g" ${D}${PTEST_PATH}/tests/Makefile 44*4882a593Smuzhiyun find ${D}${PTEST_PATH} -type f -name *.[hoc] | xargs -i rm {} 45*4882a593Smuzhiyun cp ${S}/build-aux/update-copyright ${D}${PTEST_PATH}/tests/ 46*4882a593Smuzhiyun sed -i 's;update-copyright;./update-copyright;g' ${D}${PTEST_PATH}/tests/test-update-copyright.sh 47*4882a593Smuzhiyun chmod 0755 ${D}${PTEST_PATH}/tests/test-mbrtowc-w32-1.sh ${D}${PTEST_PATH}/tests/test-spawn-pipe-main \ 48*4882a593Smuzhiyun ${D}${PTEST_PATH}/tests/test-spawn-pipe-child ${D}${PTEST_PATH}/tests/test-version-etc \ 49*4882a593Smuzhiyun ${D}${PTEST_PATH}/tests/test-xalloc-die 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun ln -s ptest ${D}${libdir}/${BPN}/${BP} 52*4882a593Smuzhiyun} 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun 55*4882a593SmuzhiyunRDEPENDS:${PN}-ptest += "make coreutils diffutils" 56*4882a593SmuzhiyunRDEPENDS:${PN}-ptest:append:libc-glibc = "\ 57*4882a593Smuzhiyun locale-base-fr-fr.iso-8859-1 \ 58*4882a593Smuzhiyun" 59*4882a593Smuzhiyun 60*4882a593SmuzhiyunINSANE_SKIP:${PN}-ptest += "ldflags" 61*4882a593SmuzhiyunINSANE_SKIP:${PN}-ptest += "rpaths" 62*4882a593Smuzhiyun 63