diff options
-rw-r--r-- | dev-lua/luv/Manifest | 1 | ||||
-rw-r--r-- | dev-lua/luv/luv-1.32.0.0.ebuild | 61 |
2 files changed, 62 insertions, 0 deletions
diff --git a/dev-lua/luv/Manifest b/dev-lua/luv/Manifest index c1c8d348e6b8..9ae02938e738 100644 --- a/dev-lua/luv/Manifest +++ b/dev-lua/luv/Manifest @@ -1,2 +1,3 @@ DIST luv-1.30.1.1.tar.gz 88948 BLAKE2B 8b6da2ac0c63222a508f9f37b6a724edab21285f21ff1fa95fe334ae800bf76a49114e41531d7584bc8ce171e4c373167cb713cf70bef6ac2c822b88398bbe17 SHA512 c9001cbea2f58a867b6ddf11ac54d16bfaa15f37f3453758d303c58b960177c7c1a65e8c5636ce07161711c898af7dfda0ed9cb4cfb8d7d6430b3843fd0acfa2 +DIST luv-1.32.0.0.tar.gz 91349 BLAKE2B e4a90b3241e2fe650f62e34439ed75f9ba53168d6bd96b8685fc5600d6f9cbb1bb598a7d40d918ab9123cf4bad99f872a79d0664056d35caba52d1eda9046020 SHA512 7db52afc1ca79052e349be7a37deb67066ee9005f8d7f7d0dae62bd83a93b4140103ee6dddeca2e02a3fc37b3880a5c18904429886af1d441f8de0cfabf5bd8c DIST luv-lua-compat-0.7.tar.gz 51383 BLAKE2B ae86f314de971fcd7d8706009d59d684c035fb661ecf392c581a3c317cc1a396321ef7af0418d8f23151c52c66613a0749e8fa9ac889a183c2ffe749091dae35 SHA512 665ece98422a105b818cffd96eea5788696fbb854d2ba41d2d387e8bd25c1fa9de601468e55e22e9e749979a66d4d2e0f7dfd656e5bf27b489d37bb07c96f48d diff --git a/dev-lua/luv/luv-1.32.0.0.ebuild b/dev-lua/luv/luv-1.32.0.0.ebuild new file mode 100644 index 000000000000..7b036e6da7fe --- /dev/null +++ b/dev-lua/luv/luv-1.32.0.0.ebuild @@ -0,0 +1,61 @@ +# Copyright 2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake-utils unpacker + +# e.g. MY_PV = a.b.c-d +MY_PV="$(ver_rs 3 -)" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="Bare libuv bindings for lua" +HOMEPAGE="https://github.com/luvit/luv" + +LUA_COMPAT_PV="0.7" +SRC_URI=" + https://github.com/luvit/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz + https://github.com/keplerproject/lua-compat-5.3/archive/v${LUA_COMPAT_PV}.tar.gz -> ${PN}-lua-compat-${LUA_COMPAT_PV}.tar.gz +" + +LICENSE="Apache-2.0 MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="luajit test" +RESTRICT="!test? ( test )" + +BDEPEND="virtual/pkgconfig" +DEPEND=" + >=dev-libs/libuv-1.32.0:= + luajit? ( dev-lang/luajit:2 ) + !luajit? ( dev-lang/lua:0 ) +" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + # Fix libdir + # Match '/lib/' and '/lib"' without capturing / or ", replacing with libdir + sed -i -r "s/\/lib(\"|\/)/\/$(get_libdir)\1/g" CMakeLists.txt || die "Failed to sed CMakeLists.txt" + cmake-utils_src_prepare +} + +src_configure() { + lua_compat_dir="${WORKDIR}/lua-compat-5.3-${LUA_COMPAT_PV}" + local mycmakeargs=( + -DBUILD_MODULE=OFF + -DLUA_BUILD_TYPE=System + -DLUA_COMPAT53_DIR="${lua_compat_dir}" + -DWITH_LUA_ENGINE=$(usex luajit LuaJIT Lua) + -DWITH_SHARED_LIBUV=ON + ) + cmake-utils_src_configure +} + +src_test() { + local elua="$(usex luajit luajit lua)" + # We need to copy the library back so that the tests see it + ln -s "${BUILD_DIR}/libluv.so" "./luv.so" || die "Failed to symlink library for tests" + ${elua} "tests/run.lua" || die "Tests failed" +} |