commit:     0ea783eda9e39558855016fb1be2e2677f271e75
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed May 28 17:16:35 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed May 28 17:16:35 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0ea783ed

dev-libs/libdnet: add missing runtime dep for USE=python

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/libdnet/libdnet-1.18.0-r3.ebuild | 116 ++++++++++++++++++++++++++++++
 1 file changed, 116 insertions(+)

diff --git a/dev-libs/libdnet/libdnet-1.18.0-r3.ebuild 
b/dev-libs/libdnet/libdnet-1.18.0-r3.ebuild
new file mode 100644
index 000000000000..367acc250b29
--- /dev/null
+++ b/dev-libs/libdnet/libdnet-1.18.0-r3.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..12} )
+DISTUTILS_EXT=1
+DISTUTILS_OPTIONAL=1
+DISTUTILS_USE_PEP517=setuptools
+
+inherit autotools distutils-r1
+
+DESCRIPTION="Simplified, portable interface to several low-level networking 
routines"
+HOMEPAGE="https://github.com/ofalk/libdnet";
+SRC_URI="https://github.com/ofalk/${PN}/archive/${P}.tar.gz";
+S="${WORKDIR}/${PN}-${P}"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="python test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+DEPEND="
+       dev-libs/libbsd
+       python? (
+               ${PYTHON_DEPS}
+               dev-python/netifaces[${PYTHON_USEDEP}]
+       )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+       python? (
+               ${DISTUTILS_DEPS}
+               dev-python/cython[${PYTHON_USEDEP}]
+       )
+       test? ( dev-libs/check )
+"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-1.18.0-fix-incompatible-function-pointer.patch"
+)
+
+DOCS=( README.md THANKS )
+
+src_prepare() {
+       default
+
+       sed -i \
+               -e 's/libcheck.a/libcheck.so/g' \
+               configure.ac || die
+       sed -i \
+               -e "s/lib\/libcheck/$(get_libdir)\/libcheck/g" \
+               configure.ac || die
+       sed -i \
+               -e 's|-L$libdir ||g' \
+               dnet-config.in || die
+       sed -i \
+               -e '/^SUBDIRS/s|python||g' \
+               Makefile.am || die
+
+       # Stale e.g. pkg-config macros w/ bashisms
+       rm aclocal.m4 {config,m4}/libtool.m4 || die
+
+       AT_M4DIR="config" eautoreconf
+
+       if use python; then
+               cd python || die
+               distutils-r1_src_prepare
+       fi
+}
+
+src_configure() {
+       econf \
+               $(use_with python) \
+               $(use_enable test check)
+}
+
+src_compile() {
+       default
+
+       if use python; then
+               cd python || die
+               distutils-r1_src_compile
+       fi
+}
+
+src_test() {
+       # https://bugs.gentoo.org/778797#c4
+       # check_ip needs privileges and check_fw can't work on Linux
+       emake check XFAIL_TESTS="check_fw check_ip"
+
+       # Needs network access, tries to access 8.8.8.8 to get IP/interfaces.
+       # We could maybe run a daemon or just patch it to avoid that.
+       #if use python; then
+       #       cd python || die
+       #       distutils-r1_src_test
+       #fi
+}
+
+python_test() {
+       eunittest
+}
+
+src_install() {
+       default
+
+       if use python; then
+               cd python || die
+               unset DOCS
+               distutils-r1_src_install
+       fi
+
+       find "${ED}" -name '*.la' -delete || die
+}

Reply via email to