commit:     46fb23a804060b77e1d115f5a4ad98b3df08f61b
Author:     Jason Zaman <perfinion <AT> gentoo <DOT> org>
AuthorDate: Sun May  4 16:57:22 2025 +0000
Commit:     Jason Zaman <perfinion <AT> gentoo <DOT> org>
CommitDate: Sun May  4 16:58:02 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46fb23a8

dev-embedded/libftdi: Add python3_13

Tests pass and my personal uses of FTDI chips works from python3.13

Closes: https://bugs.gentoo.org/952289
Signed-off-by: Jason Zaman <perfinion <AT> gentoo.org>

 dev-embedded/libftdi/libftdi-1.5-r8.ebuild | 92 ++++++++++++++++++++++++++++++
 1 file changed, 92 insertions(+)

diff --git a/dev-embedded/libftdi/libftdi-1.5-r8.ebuild 
b/dev-embedded/libftdi/libftdi-1.5-r8.ebuild
new file mode 100644
index 000000000000..495518e62389
--- /dev/null
+++ b/dev-embedded/libftdi/libftdi-1.5-r8.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="${PN}1-${PV}"
+PYTHON_COMPAT=( python3_{11..13} )
+inherit cmake python-single-r1
+
+if [[ ${PV} == 9999* ]] ; then
+       inherit git-r3
+       EGIT_REPO_URI="git://developer.intra2net.com/${PN}"
+else
+       
SRC_URI="https://www.intra2net.com/en/developer/${PN}/download/${MY_P}.tar.bz2";
+       S="${WORKDIR}/${MY_P}"
+       KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc 
~x86"
+fi
+
+DESCRIPTION="Userspace access to FTDI USB interface chips"
+HOMEPAGE="https://www.intra2net.com/en/developer/libftdi/";
+
+LICENSE="LGPL-2"
+SLOT="1"
+IUSE="cxx doc examples python test tools"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+       virtual/libusb:1
+       cxx? ( dev-libs/boost )
+       doc? ( !dev-embedded/libftdi:0[doc] )
+       python? ( ${PYTHON_DEPS} )
+       tools? ( dev-libs/confuse:= )
+"
+DEPEND="${RDEPEND}
+       test? ( dev-libs/boost )
+"
+BDEPEND="
+       doc? ( app-text/doxygen )
+       python? ( >=dev-lang/swig-4.2.0 )
+"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-tests-no-cxx.patch
+       "${FILESDIR}"/${P}-cmake-cxx.patch
+       "${FILESDIR}"/${P}-py312.patch
+       "${FILESDIR}"/${P}-cmake4.patch
+       "${FILESDIR}"/${P}-swig-4.3.patch
+)
+
+pkg_setup() {
+       use python && python-single-r1_pkg_setup
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DFTDIPP=$(usex cxx)
+               -DDOCUMENTATION=$(usex doc)
+               -DEXAMPLES=$(usex examples)
+               -DPYTHON_BINDINGS=$(usex python)
+               -DBUILD_TESTS=$(usex test)
+               -DFTDI_EEPROM=$(usex tools)
+               -DCMAKE_SKIP_BUILD_RPATH=ON
+               -DSTATICLIBS=OFF
+       )
+       cmake_src_configure
+}
+
+src_test() {
+       cd "${BUILD_DIR}/test" || die
+       LD_LIBRARY_PATH="${BUILD_DIR}/src" ./test_libftdi1 -l all || die
+}
+
+src_install() {
+       cmake_src_install
+
+       use python && python_optimize
+       dodoc AUTHORS ChangeLog README TODO
+
+       if use doc ; then
+               # Clean up man pages with too generic names. #356369
+               rm -vf "${BUILD_DIR}"/doc/man/man3/_* || die
+
+               doman "${BUILD_DIR}"/doc/man/man3/*
+               dodoc -r "${BUILD_DIR}"/doc/html
+       fi
+
+       if use examples ; then
+               docinto examples
+               dodoc examples/*.c
+       fi
+}

Reply via email to