Patrick Williams | 8e7b46e | 2023-05-01 14:19:06 -0500 | [diff] [blame] | 1 | SUMMARY = "Lua is a powerful light-weight programming language designed \ |
Andrew Geissler | 7e0e3c0 | 2022-02-25 20:34:39 +0000 | [diff] [blame] | 2 | for extending applications." |
| 3 | LICENSE = "MIT" |
Andrew Geissler | 8f84068 | 2023-07-21 09:09:43 -0500 | [diff] [blame] | 4 | LIC_FILES_CHKSUM = "file://doc/readme.html;beginline=303;endline=324;md5=e05449eb28c092473f854670c6e8375a" |
Andrew Geissler | 7e0e3c0 | 2022-02-25 20:34:39 +0000 | [diff] [blame] | 5 | HOMEPAGE = "http://www.lua.org/" |
| 6 | |
| 7 | SRC_URI = "http://www.lua.org/ftp/lua-${PV}.tar.gz;name=tarballsrc \ |
| 8 | file://lua.pc.in \ |
Andrew Geissler | 7e0e3c0 | 2022-02-25 20:34:39 +0000 | [diff] [blame] | 9 | ${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'http://www.lua.org/tests/lua-${PV_testsuites}-tests.tar.gz;name=tarballtest file://run-ptest ', '', d)} \ |
| 10 | " |
| 11 | |
| 12 | # if no test suite matches PV release of Lua exactly, download the suite for the closest Lua release. |
| 13 | PV_testsuites = "5.4.4" |
| 14 | |
Andrew Geissler | 8f84068 | 2023-07-21 09:09:43 -0500 | [diff] [blame] | 15 | SRC_URI[tarballsrc.sha256sum] = "7d5ea1b9cb6aa0b59ca3dde1c6adcb57ef83a1ba8e5432c0ecd06bf439b3ad88" |
Andrew Geissler | 7e0e3c0 | 2022-02-25 20:34:39 +0000 | [diff] [blame] | 16 | SRC_URI[tarballtest.sha256sum] = "04d28355cd67a2299dfe5708b55a0ff221ccb1a3907a3113cc103ccc05ac6aad" |
| 17 | |
| 18 | inherit pkgconfig binconfig ptest |
| 19 | |
| 20 | PACKAGECONFIG ??= "readline" |
| 21 | PACKAGECONFIG[readline] = ",,readline" |
| 22 | |
| 23 | TARGET_CC_ARCH += " -fPIC ${LDFLAGS}" |
| 24 | EXTRA_OEMAKE = "'CC=${CC} -fPIC' 'MYCFLAGS=${CFLAGS} -fPIC' MYLDFLAGS='${LDFLAGS}' 'AR=ar rcD' 'RANLIB=ranlib -D'" |
| 25 | |
| 26 | do_configure:prepend() { |
| 27 | sed -i -e s:/usr/local:${prefix}:g src/luaconf.h |
| 28 | sed -i -e s:lib/lua/:${baselib}/lua/:g src/luaconf.h |
| 29 | } |
| 30 | |
| 31 | do_compile () { |
| 32 | oe_runmake ${@bb.utils.contains('PACKAGECONFIG', 'readline', 'linux-readline', 'linux', d)} |
| 33 | } |
| 34 | |
| 35 | do_install () { |
| 36 | oe_runmake \ |
| 37 | 'INSTALL_TOP=${D}${prefix}' \ |
| 38 | 'INSTALL_BIN=${D}${bindir}' \ |
| 39 | 'INSTALL_INC=${D}${includedir}/' \ |
| 40 | 'INSTALL_MAN=${D}${mandir}/man1' \ |
| 41 | 'INSTALL_SHARE=${D}${datadir}/lua' \ |
| 42 | 'INSTALL_LIB=${D}${libdir}' \ |
| 43 | 'INSTALL_CMOD=${D}${libdir}/lua/5.4' \ |
| 44 | install |
| 45 | install -d ${D}${libdir}/pkgconfig |
| 46 | |
Andrew Geissler | 615f2f1 | 2022-07-15 14:00:58 -0500 | [diff] [blame] | 47 | sed -e s/@VERSION@/${PV}/ -e s#@LIBDIR@#${libdir}# -e s#@INCLUDEDIR@#${includedir}# ${WORKDIR}/lua.pc.in > ${WORKDIR}/lua.pc |
Andrew Geissler | 7e0e3c0 | 2022-02-25 20:34:39 +0000 | [diff] [blame] | 48 | install -m 0644 ${WORKDIR}/lua.pc ${D}${libdir}/pkgconfig/ |
| 49 | rmdir ${D}${datadir}/lua/5.4 |
| 50 | rmdir ${D}${datadir}/lua |
| 51 | } |
| 52 | |
| 53 | do_install_ptest () { |
| 54 | cp -R --no-dereference --preserve=mode,links -v ${WORKDIR}/lua-${PV_testsuites}-tests ${D}${PTEST_PATH}/test |
| 55 | } |
| 56 | |
Patrick Williams | 8e7b46e | 2023-05-01 14:19:06 -0500 | [diff] [blame] | 57 | do_install_ptest:append:libc-musl () { |
| 58 | # locale tests does not work on musl, due to limited locale implementation |
| 59 | # https://wiki.musl-libc.org/open-issues.html#Locale-limitations |
| 60 | sed -i -e 's|os.setlocale("pt_BR") or os.setlocale("ptb")|false|g' ${D}${PTEST_PATH}/test/literals.lua |
| 61 | } |
| 62 | |
Andrew Geissler | 7e0e3c0 | 2022-02-25 20:34:39 +0000 | [diff] [blame] | 63 | BBCLASSEXTEND = "native nativesdk" |
Andrew Geissler | fc113ea | 2023-03-31 09:59:46 -0500 | [diff] [blame] | 64 | |
| 65 | inherit multilib_script |
| 66 | MULTILIB_SCRIPTS = "${PN}-dev:${includedir}/luaconf.h" |