commit:     f5026823c6ff2f8dc71f108a0231f55a6621f860
Author:     Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Fri Dec  6 00:46:46 2024 +0000
Commit:     Nicolas PARLANT <ppn <AT> parhuet <DOT> fr>
CommitDate: Fri Dec  6 20:45:49 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=f5026823

dev-lua/cqueues: add 20200726_p20241204

use EGIT_COMMIT to keep update instead of patch

Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr>

 dev-lua/cqueues/Manifest                          |   1 +
 dev-lua/cqueues/cqueues-20200726_p20241204.ebuild | 157 ++++++++++++++++++++++
 2 files changed, 158 insertions(+)

diff --git a/dev-lua/cqueues/Manifest b/dev-lua/cqueues/Manifest
index a4309ac2f..913c6afde 100644
--- a/dev-lua/cqueues/Manifest
+++ b/dev-lua/cqueues/Manifest
@@ -1 +1,2 @@
+DIST cqueues-20200726_p20241204.tar.gz 511991 BLAKE2B 
13aeb72435fbfd84e3af11f7d79547ca72b2863ffff4d24d1e14115225973f175b19440732c1d9f4f57c22ef454b3abfe503e7b18de145b4c04f44e87297365c
 SHA512 
9e510c3da50ce601d7fde8cf4e3f4262aa9ec1e81099e4411cf233a138338f5098de8eddce5600732ff7ad97329a7eb501f7c51b911b0c3dd82cd4f0220e4c99
 DIST cqueues-rel-20200726.tar.gz 511659 BLAKE2B 
2e8da34d4818e96d6872d0e544ff39465f4b55527146dd0003a80a4f11be34601fc34a123a8bd7535f3437afb4825ab9995d63141991c0b4c520c365decbaf37
 SHA512 
f2198a2a887bca445fe480949e05ecc94c3112827dbd65d2de0258316beee12f6052fa2670560daab708421e669dde0ac581b365af6bb94a3fc6f322c8bc7547

diff --git a/dev-lua/cqueues/cqueues-20200726_p20241204.ebuild 
b/dev-lua/cqueues/cqueues-20200726_p20241204.ebuild
new file mode 100644
index 000000000..1b546a8d4
--- /dev/null
+++ b/dev-lua/cqueues/cqueues-20200726_p20241204.ebuild
@@ -0,0 +1,157 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit lua toolchain-funcs
+
+DESCRIPTION="Stackable Continuation Queues"
+HOMEPAGE="https://github.com/wahern/cqueues";
+HOMEPAGE+=" http://25thandclement.com/~william/projects/cqueues.html";
+EGIT_COMMIT="8c0142577d3cb1f24917879997678bef0d084815"
+SRC_URI="https://github.com/wahern/${PN}/archive/${EGIT_COMMIT}.tar.gz -> 
${P}.tar.gz"
+
+S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="examples"
+
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+DEPEND="
+       ${LUA_DEPS}
+       dev-libs/openssl:0=
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+       dev-lua/compat53[${LUA_USEDEP}]
+       virtual/pkgconfig
+"
+
+DOCS=( "doc/." )
+
+lua_src_prepare() {
+       pushd "${BUILD_DIR}" || die
+
+       if [[ ${ELUA} != luajit ]]; then
+               LUA_VERSION="$(ver_cut 1-2 $(lua_get_version))"
+               # these two tests are forced upstream for luajit only
+               rm 
"${BUILD_DIR}"/regress/{44-resolvers-gc,51-join-defunct-thread}.lua || die
+       else
+               # Thanks to dev-lua/luaossl for this workaround
+               # This is a workaround for luajit, as it confirms to lua5.1
+               # and the 'GNUmakefile' doesn't understand LuaJITs version.
+               LUA_VERSION="5.1"
+       fi
+
+       if [[ ${LUA_VERSION} != 5.3 ]]; then
+               # this test is forced upstream for lua5-3 only
+               rm "${BUILD_DIR}"/regress/152-thread-integer-passing.lua || die
+       fi
+
+       # install tests for lua_version only
+       sed -e 's:for V in 5.1 5.2 5.3 5.4:for V in '${LUA_VERSION}':' \
+               -i "${BUILD_DIR}"/regress/GNUmakefile || die
+
+       popd
+}
+
+src_prepare() {
+       default
+       rm -r vendor || die
+       sed \
+               -e '/HAVE_API_FN =/d' \
+               -e '/ALL_CFLAGS += -g/d' \
+               -e '/ALL_LDFLAGS += -L/d' \
+               -e 's:-O2::' \
+               -i GNUmakefile || die
+
+       # use header from dev-lua/compat53 instead of vendor
+       sed     -e 's:-DCOMPAT53_PREFIX=cqueues::' \
+               -e 's:$$(d)/../vendor/compat53/c-api/compat-5.3.h::' \
+               -e '/)\/compat53/,/)\/compat53/d' \
+               -i src/GNUmakefile || die
+
+       sed -e 's:"../vendor/compat53/c-api\/compat-5.3.h":<compat-5.3.h>:' \
+               -i src/cqueues.h || die
+
+       # tests deleted :
+       # 22, 73, 87 = weak/old ssl
+       # 30,62,153 = network required
+       rm      regress/22-client-dtls.lua \
+               regress/73-starttls-buffering.lua \
+               regress/87-alpn-disappears.lua \
+               regress/30-starttls-completion.lua \
+               regress/62-noname.lua \
+               regress/153-dns-resolvers.lua || die
+
+       lua_copy_sources
+       lua_foreach_impl lua_src_prepare
+}
+
+lua_src_compile() {
+       pushd "${BUILD_DIR}" || die
+
+       if [[ ${ELUA} != luajit ]]; then
+               LUA_VERSION="$(ver_cut 1-2 $(lua_get_version))"
+       else
+               LUA_VERSION="5.1"
+       fi
+
+       emake CC=$(tc-getCC) \
+               all${LUA_VERSION}
+
+       popd
+}
+
+src_compile() {
+       lua_foreach_impl lua_src_compile
+}
+
+lua_src_test() {
+       pushd "${BUILD_DIR}" || die
+
+       if [[ ${ELUA} != luajit ]]; then
+               LUA_VERSION="$(ver_cut 1-2 $(lua_get_version))"
+       else
+               LUA_VERSION="5.1"
+       fi
+
+       emake CC=$(tc-getCC) check
+
+       popd
+}
+
+src_test() {
+       lua_foreach_impl lua_src_test
+}
+
+lua_src_install() {
+       pushd "${BUILD_DIR}" || die
+
+       if [[ ${ELUA} != luajit ]]; then
+               LUA_VERSION="$(ver_cut 1-2 $(lua_get_version))"
+       else
+               LUA_VERSION="5.1"
+       fi
+
+       emake CC=$(tc-getCC) \
+               "DESTDIR=${D}" \
+               "lua${LUA_VERSION/./}cpath=$(lua_get_cmod_dir)" \
+               "lua${LUA_VERSION/./}path=$(lua_get_lmod_dir)" \
+               "prefix=${EPREFIX}/usr" \
+               install${LUA_VERSION}
+
+       popd
+}
+
+src_install() {
+       lua_foreach_impl lua_src_install
+
+       use examples && dodoc -r "examples/."
+       einstalldocs
+}

Reply via email to