diff options
| author | Conrad Kostecki <conikost@gentoo.org> | 2020-12-01 00:24:26 +0100 |
|---|---|---|
| committer | Conrad Kostecki <conikost@gentoo.org> | 2020-12-01 11:15:06 +0100 |
| commit | a7d176da22f2ec428c88cd2514c190f757d9ee26 (patch) | |
| tree | 71ddeec3211ff68a279b85d28c64d602bd5437e9 /dev-lua/lua-cjson/lua-cjson-2.1.0.8-r100.ebuild | |
| parent | de890203c4ffbac72bd789fe67cac6746eb28a2b (diff) | |
| download | gentoo-a7d176da22f2ec428c88cd2514c190f757d9ee26.tar.gz gentoo-a7d176da22f2ec428c88cd2514c190f757d9ee26.tar.bz2 gentoo-a7d176da22f2ec428c88cd2514c190f757d9ee26.zip | |
dev-lua/lua-cjson: migrate to lua eclass
Closes: https://bugs.gentoo.org/752618
Package-Manager: Portage-3.0.9, Repoman-3.0.2
Signed-off-by: Conrad Kostecki <conikost@gentoo.org>
Diffstat (limited to 'dev-lua/lua-cjson/lua-cjson-2.1.0.8-r100.ebuild')
| -rw-r--r-- | dev-lua/lua-cjson/lua-cjson-2.1.0.8-r100.ebuild | 105 |
1 files changed, 105 insertions, 0 deletions
diff --git a/dev-lua/lua-cjson/lua-cjson-2.1.0.8-r100.ebuild b/dev-lua/lua-cjson/lua-cjson-2.1.0.8-r100.ebuild new file mode 100644 index 000000000000..c7ff3172c0be --- /dev/null +++ b/dev-lua/lua-cjson/lua-cjson-2.1.0.8-r100.ebuild @@ -0,0 +1,105 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +LUA_COMPAT=( lua5-{1..3} luajit ) + +inherit lua toolchain-funcs + +DESCRIPTION="A fast JSON encoding/parsing module for Lua" +HOMEPAGE="https://www.kyne.com.au/~mark/software/lua-cjson.php https://github.com/openresty/lua-cjson" +SRC_URI="https://github.com/openresty/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~x86" +IUSE="+internal-fpconv test +threads" +REQUIRED_USE=" + threads? ( internal-fpconv ) + ${LUA_REQUIRED_USE} +" +RESTRICT="!test? ( test )" + +RDEPEND="${LUA_DEPS}" +DEPEND="${RDEPEND}" +BDEPEND="test? ( dev-lang/perl )" + +DOCS=( "manual.txt" "NEWS" "performance.txt" "README.md" "THANKS" ) + +PATCHES=( + "${FILESDIR}/${PN}-2.1.0.8-sparse_array_test_fix.patch" + "${FILESDIR}/${PN}-2.1.0.8-lua52.patch" +) + +src_prepare() { + default + + # Don't install tests + sed -e '/cd tests/d' -i Makefile || die + + lua_copy_sources +} + +lua_src_compile() { + pushd "${BUILD_DIR}" || die + + local myemakeargs=( + "CC=$(tc-getCC)" + "CFLAGS=${CFLAGS}" + "LDFLAGS=${LDFLAGS}" + "LUA_INCLUDE_DIR=$(lua_get_include_dir)" + ) + + emake "${myemakeargs[@]}" + + popd +} + +src_compile() { + lua_foreach_impl lua_src_compile +} + +lua_src_test() { + if ! [[ ${ELUA} == "lua5.3" ]]; then + pushd "${BUILD_DIR}" || die + cd tests || die + + ln -s "${BUILD_DIR}"/cjson.so ./ || die + ln -s "${S}"/lua/cjson ./ || die + + ./genutf8.pl || die + ./test.lua || die + + popd + else + ewarn "Not running tests under ${ELUA} because they are known to fail" + ewarn "See: https://github.com/openresty/lua-cjson/pull/50" + return + fi +} + +src_test() { + lua_foreach_impl lua_src_test +} + +lua_src_install() { + pushd "${BUILD_DIR}" || die + + local myemakeargs=( + "DESTDIR=${D}" + "LUA_CMODULE_DIR=$(lua_get_lmod_dir)" + "LUA_MODULE_DIR=$(lua_get_lmod_dir)" + "PREFIX=${EPREFIX}/usr" + ) + + emake "${myemakeargs[@]}" install install-extra + + popd +} + +src_install() { + lua_foreach_impl lua_src_install + + einstalldocs +} |
