commit:     f3b87fb167f3669954fe6cdbb52500fe27f8b326
Author:     Aisha Tammy <gentoo <AT> aisha <DOT> cc>
AuthorDate: Fri Dec 29 01:33:50 2023 +0000
Commit:     Aisha Tammy <gentoo <AT> aisha <DOT> cc>
CommitDate: Fri Dec 29 01:34:32 2023 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=f3b87fb1

net-libs/kcgi: add 0.13.3

Signed-off-by: Aisha Tammy <gentoo <AT> aisha.cc>

 net-libs/kcgi/Manifest           |  1 +
 net-libs/kcgi/kcgi-0.13.3.ebuild | 96 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 97 insertions(+)

diff --git a/net-libs/kcgi/Manifest b/net-libs/kcgi/Manifest
index f043144c50..40810127ea 100644
--- a/net-libs/kcgi/Manifest
+++ b/net-libs/kcgi/Manifest
@@ -1,2 +1,3 @@
 DIST kcgi-0.12.5.tgz 247454 BLAKE2B 
1aebd9d62977e22a6a6538b591c40efab53282fd6f28809330c34bfb825798b837003cf0b492f3c3bc79c2ebf3054b466b9e290c156aceee553ef8af6e0a7f07
 SHA512 
61c28f165b0c1024e4b22fd4e725d79c4e2800b0c6a7fae1473e33608b3299b5ad8630d87ccccaab3e12358dfb6d1c3cd0eb0ed20fa0da1bcc35cc6df8106440
 DIST kcgi-0.13.0.tgz 243127 BLAKE2B 
e3f4f42450cf3ba5b7f3199e11d1ee57bd2b16f55d662c6989f486811fb49fb1dcba62864320ee1962db5b0cde026db832d6935c14a79f43d4b19383a630f392
 SHA512 
b07168d87ad55a403120bfe79ac37e29803047bf663bb50ead0a758a1636b9fc77fd3aba45eb52b2f80cd103f1878e861d99e22bc6eefd2dd742ac82f4dbc969
+DIST kcgi-0.13.3.tgz 249621 BLAKE2B 
a503031e8d0cd87eaab7920d1392f51276af723e59baee85a7fd02abfd294d151cc2ccf633207d7e40704fe9d71779d5d8c5582fc28fba02b41b62a924ce7003
 SHA512 
272ffec2fa31dc465b66c0c67ed5f5e1d9e5ebafbe17e84586299f4a266c1344d127ef04fda284b91a596fc4c6bc06f6e50a784b62bf198c9d3d06c210ae2282

diff --git a/net-libs/kcgi/kcgi-0.13.3.ebuild b/net-libs/kcgi/kcgi-0.13.3.ebuild
new file mode 100644
index 0000000000..6edf6fc1c9
--- /dev/null
+++ b/net-libs/kcgi/kcgi-0.13.3.ebuild
@@ -0,0 +1,96 @@
+# Copyright 2019-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic multilib multiprocessing toolchain-funcs
+
+DESCRIPTION="Minimal CGI library for web applications"
+HOMEPAGE="https://kristaps.bsd.lv/kcgi/";
+
+if [[ ${PV} == 9999 ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/kristapsdz/${PN}";
+else
+       SRC_URI="https://kristaps.bsd.lv/${PN}/snapshots/${P}.tgz";
+       KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="ISC"
+SLOT="0"
+IUSE="static-libs test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="sys-devel/bmake"
+RDEPEND="
+       app-crypt/libmd
+       virtual/libcrypt
+"
+DEPEND="${RDEPEND}
+       test? ( net-misc/curl[static-libs(-)] )
+"
+
+src_prepare() {
+       default
+
+       # ld: multiple definition of `dummy'
+       local deselect=( sandbox-{capsicum,darwin,pledge,seccomp-filter}.o )
+       case ${CHOST} in
+               *-linux-*)
+                       deselect=( "${deselect[@]/sandbox-seccomp-filter.o}" )
+                       ;;
+               *-darwin*)
+                       deselect=( "${deselect[@]/sandbox-darwin.o}" )
+                       ;;
+               *-freebsd*)
+                       deselect=( "${deselect[@]/sandbox-capsicum.o}" )
+                       ;;
+               *-openbsd*)
+                       deselect=( "${deselect[@]/sandbox-pledge.o}" )
+                       ;;
+       esac
+
+       for obj in "${deselect[@]}"; do
+               # elements are not deleted completely from the array
+               if [[ -n "${obj}" ]]; then
+                       sed "/${obj}/d" -i Makefile || die
+               fi
+       done
+}
+
+src_configure() {
+       tc-export CC AR
+       append-cflags -fPIC
+
+       append-cppflags -DENABLE_SECCOMP_FILTER=1
+       append-cppflags -DSANDBOX_SECCOMP_DEBUG  # seccomp may cause problems
+
+       # note: not an autoconf configure script
+       conf_args=(
+               CPPFLAGS="${CPPFLAGS}"
+               LDFLAGS="${LDFLAGS}"
+               PREFIX="${EPREFIX}"/usr
+               MANDIR="${EPREFIX}"/usr/share/man
+               LIBDIR="${EPREFIX}"/usr/$(get_libdir)
+               SBINDIR="${EPREFIX}"/usr/sbin
+       )
+
+       ./configure "${conf_args[@]}" || die
+}
+
+src_compile() {
+       bmake || die
+}
+
+src_test() {
+       # TODO: add `afl` tests
+       bmake regress || die
+}
+
+src_install() {
+       bmake DESTDIR="${D}" \
+           DATADIR="${EPREFIX}/usr/share/doc/${PF}/examples" \
+           install || die
+
+       einstalldocs
+}

Reply via email to