1*4882a593SmuzhiyunDESCRIPTION = "Lua is a powerful light-weight programming language designed \ 2*4882a593Smuzhiyunfor extending applications." 3*4882a593SmuzhiyunLICENSE = "MIT" 4*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://doc/readme.html;beginline=307;endline=330;md5=79c3f6b19ad05efe24c1681f025026bb" 5*4882a593SmuzhiyunHOMEPAGE = "http://www.lua.org/" 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunSRC_URI = "http://www.lua.org/ftp/lua-${PV}.tar.gz;name=tarballsrc \ 8*4882a593Smuzhiyun file://lua.pc.in \ 9*4882a593Smuzhiyun file://CVE-2022-28805.patch \ 10*4882a593Smuzhiyun file://CVE-2022-33099.patch \ 11*4882a593Smuzhiyun ${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'http://www.lua.org/tests/lua-${PV_testsuites}-tests.tar.gz;name=tarballtest file://run-ptest ', '', d)} \ 12*4882a593Smuzhiyun " 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun# if no test suite matches PV release of Lua exactly, download the suite for the closest Lua release. 15*4882a593SmuzhiyunPV_testsuites = "5.4.4" 16*4882a593Smuzhiyun 17*4882a593SmuzhiyunSRC_URI[tarballsrc.sha256sum] = "164c7849653b80ae67bec4b7473b884bf5cc8d2dca05653475ec2ed27b9ebf61" 18*4882a593SmuzhiyunSRC_URI[tarballtest.sha256sum] = "04d28355cd67a2299dfe5708b55a0ff221ccb1a3907a3113cc103ccc05ac6aad" 19*4882a593Smuzhiyun 20*4882a593Smuzhiyuninherit pkgconfig binconfig ptest 21*4882a593Smuzhiyun 22*4882a593SmuzhiyunPACKAGECONFIG ??= "readline" 23*4882a593SmuzhiyunPACKAGECONFIG[readline] = ",,readline" 24*4882a593Smuzhiyun 25*4882a593SmuzhiyunTARGET_CC_ARCH += " -fPIC ${LDFLAGS}" 26*4882a593SmuzhiyunEXTRA_OEMAKE = "'CC=${CC} -fPIC' 'MYCFLAGS=${CFLAGS} -fPIC' MYLDFLAGS='${LDFLAGS}' 'AR=ar rcD' 'RANLIB=ranlib -D'" 27*4882a593Smuzhiyun 28*4882a593Smuzhiyundo_configure:prepend() { 29*4882a593Smuzhiyun sed -i -e s:/usr/local:${prefix}:g src/luaconf.h 30*4882a593Smuzhiyun sed -i -e s:lib/lua/:${baselib}/lua/:g src/luaconf.h 31*4882a593Smuzhiyun} 32*4882a593Smuzhiyun 33*4882a593Smuzhiyundo_compile () { 34*4882a593Smuzhiyun oe_runmake ${@bb.utils.contains('PACKAGECONFIG', 'readline', 'linux-readline', 'linux', d)} 35*4882a593Smuzhiyun} 36*4882a593Smuzhiyun 37*4882a593Smuzhiyundo_install () { 38*4882a593Smuzhiyun oe_runmake \ 39*4882a593Smuzhiyun 'INSTALL_TOP=${D}${prefix}' \ 40*4882a593Smuzhiyun 'INSTALL_BIN=${D}${bindir}' \ 41*4882a593Smuzhiyun 'INSTALL_INC=${D}${includedir}/' \ 42*4882a593Smuzhiyun 'INSTALL_MAN=${D}${mandir}/man1' \ 43*4882a593Smuzhiyun 'INSTALL_SHARE=${D}${datadir}/lua' \ 44*4882a593Smuzhiyun 'INSTALL_LIB=${D}${libdir}' \ 45*4882a593Smuzhiyun 'INSTALL_CMOD=${D}${libdir}/lua/5.4' \ 46*4882a593Smuzhiyun install 47*4882a593Smuzhiyun install -d ${D}${libdir}/pkgconfig 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun sed -e s/@VERSION@/${PV}/ -e s#@LIBDIR@#${libdir}# -e s#@INCLUDEDIR@#${includedir}# ${WORKDIR}/lua.pc.in > ${WORKDIR}/lua.pc 50*4882a593Smuzhiyun install -m 0644 ${WORKDIR}/lua.pc ${D}${libdir}/pkgconfig/ 51*4882a593Smuzhiyun rmdir ${D}${datadir}/lua/5.4 52*4882a593Smuzhiyun rmdir ${D}${datadir}/lua 53*4882a593Smuzhiyun} 54*4882a593Smuzhiyun 55*4882a593Smuzhiyundo_install_ptest () { 56*4882a593Smuzhiyun cp -R --no-dereference --preserve=mode,links -v ${WORKDIR}/lua-${PV_testsuites}-tests ${D}${PTEST_PATH}/test 57*4882a593Smuzhiyun} 58*4882a593Smuzhiyun 59*4882a593SmuzhiyunBBCLASSEXTEND = "native nativesdk" 60*4882a593Smuzhiyun 61*4882a593Smuzhiyuninherit multilib_script 62*4882a593SmuzhiyunMULTILIB_SCRIPTS = "${PN}-dev:${includedir}/luaconf.h" 63