blob: a39d888ec24e5d4fccc9626466e84769ad617b12 [file] [log] [blame]
Andrew Geissler7e0e3c02022-02-25 20:34:39 +00001DESCRIPTION = "Lua is a powerful light-weight programming language designed \
2for extending applications."
3LICENSE = "MIT"
4LIC_FILES_CHKSUM = "file://doc/readme.html;beginline=307;endline=330;md5=79c3f6b19ad05efe24c1681f025026bb"
5HOMEPAGE = "http://www.lua.org/"
6
7SRC_URI = "http://www.lua.org/ftp/lua-${PV}.tar.gz;name=tarballsrc \
8 file://lua.pc.in \
Patrick Williams03907ee2022-05-01 06:28:52 -05009 file://CVE-2022-28805.patch \
Patrick Williamsdb4c27e2022-08-05 08:10:29 -050010 file://CVE-2022-33099.patch \
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000011 ${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'http://www.lua.org/tests/lua-${PV_testsuites}-tests.tar.gz;name=tarballtest file://run-ptest ', '', d)} \
12 "
13
14# if no test suite matches PV release of Lua exactly, download the suite for the closest Lua release.
15PV_testsuites = "5.4.4"
16
17SRC_URI[tarballsrc.sha256sum] = "164c7849653b80ae67bec4b7473b884bf5cc8d2dca05653475ec2ed27b9ebf61"
18SRC_URI[tarballtest.sha256sum] = "04d28355cd67a2299dfe5708b55a0ff221ccb1a3907a3113cc103ccc05ac6aad"
19
20inherit pkgconfig binconfig ptest
21
22PACKAGECONFIG ??= "readline"
23PACKAGECONFIG[readline] = ",,readline"
24
25TARGET_CC_ARCH += " -fPIC ${LDFLAGS}"
26EXTRA_OEMAKE = "'CC=${CC} -fPIC' 'MYCFLAGS=${CFLAGS} -fPIC' MYLDFLAGS='${LDFLAGS}' 'AR=ar rcD' 'RANLIB=ranlib -D'"
27
28do_configure:prepend() {
29 sed -i -e s:/usr/local:${prefix}:g src/luaconf.h
30 sed -i -e s:lib/lua/:${baselib}/lua/:g src/luaconf.h
31}
32
33do_compile () {
34 oe_runmake ${@bb.utils.contains('PACKAGECONFIG', 'readline', 'linux-readline', 'linux', d)}
35}
36
37do_install () {
38 oe_runmake \
39 'INSTALL_TOP=${D}${prefix}' \
40 'INSTALL_BIN=${D}${bindir}' \
41 'INSTALL_INC=${D}${includedir}/' \
42 'INSTALL_MAN=${D}${mandir}/man1' \
43 'INSTALL_SHARE=${D}${datadir}/lua' \
44 'INSTALL_LIB=${D}${libdir}' \
45 'INSTALL_CMOD=${D}${libdir}/lua/5.4' \
46 install
47 install -d ${D}${libdir}/pkgconfig
48
Andrew Geissler615f2f12022-07-15 14:00:58 -050049 sed -e s/@VERSION@/${PV}/ -e s#@LIBDIR@#${libdir}# -e s#@INCLUDEDIR@#${includedir}# ${WORKDIR}/lua.pc.in > ${WORKDIR}/lua.pc
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000050 install -m 0644 ${WORKDIR}/lua.pc ${D}${libdir}/pkgconfig/
51 rmdir ${D}${datadir}/lua/5.4
52 rmdir ${D}${datadir}/lua
53}
54
55do_install_ptest () {
56 cp -R --no-dereference --preserve=mode,links -v ${WORKDIR}/lua-${PV_testsuites}-tests ${D}${PTEST_PATH}/test
57}
58
59BBCLASSEXTEND = "native nativesdk"
Andrew Geisslerfc113ea2023-03-31 09:59:46 -050060
61inherit multilib_script
62MULTILIB_SCRIPTS = "${PN}-dev:${includedir}/luaconf.h"