commit: 8cf655f807ec6425decf5c1ff1933b770ca104ff Author: Aliaksei Urbanski <aliaksei.urbanski <AT> gmail <DOT> com> AuthorDate: Thu Apr 25 14:40:42 2024 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Sun Jun 2 00:34:34 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8cf655f8
media-libs/aubio: revbump to 0.4.9-r3 These changes: - add Python 3.12 support - migrate to PEP 517 build - bump EAPI to 8 Bug: https://bugs.gentoo.org/929631 Bug: https://bugs.gentoo.org/909987 Signed-off-by: Aliaksei Urbanski <aliaksei.urbanski <AT> gmail.com> Closes: https://github.com/gentoo/gentoo/pull/36421 Signed-off-by: Sam James <sam <AT> gentoo.org> media-libs/aubio/Manifest | 1 + media-libs/aubio/aubio-0.4.9-r3.ebuild | 167 +++++++++++++++++++++++++++++++++ 2 files changed, 168 insertions(+) diff --git a/media-libs/aubio/Manifest b/media-libs/aubio/Manifest index cafe77d9791a..1fc0bdb0e590 100644 --- a/media-libs/aubio/Manifest +++ b/media-libs/aubio/Manifest @@ -1 +1,2 @@ DIST aubio-0.4.9.tar.bz2 397604 BLAKE2B b849d92678ea8fb20e17921b1a61fdc85a84d4a528acfefa3278169ab5f7fe935217ec37dd9f931202f0f0a1fd3a9518372afbce34cc2dd3ca30c6b4e5d9a301 SHA512 0cb81bb4b15051db3f3f4d160d500af56fdfb237e0a74e3f366f53c2870030aa0a7cee8469a611a9694c36b8866d3d42ffb48241c999de08f3fee43e6d903130 +DIST waf-2.0.27.tar.bz2 693624 BLAKE2B 34dcb84df2f42d7c92988226ae0208a9407a091f79e47b8abe1d3b33105d58df06072bfb3c22a7bb6dfa8f083224642c55fa2c9fc0110a2d49d3d10ea754c928 SHA512 a62dbb1ee89d88969c31d3f634577d80b8a595460d445cae9b42ca423cfcbbb96347b5b67697165833f3dd496b4bc7e312e166af86cb3b97ed57ffe59f46b98a diff --git a/media-libs/aubio/aubio-0.4.9-r3.ebuild b/media-libs/aubio/aubio-0.4.9-r3.ebuild new file mode 100644 index 000000000000..4a910ed12d2e --- /dev/null +++ b/media-libs/aubio/aubio-0.4.9-r3.ebuild @@ -0,0 +1,167 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +DISTUTILS_EXT=1 +DISTUTILS_OPTIONAL=1 +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE='threads(+)' +inherit distutils-r1 waf-utils + +DESCRIPTION="Library for audio labelling" +HOMEPAGE="https://aubio.org/" +WAFVERSION=2.0.27 +WAFTARBALL=waf-${WAFVERSION}.tar.bz2 +SRC_URI=" + https://aubio.org/pub/${P}.tar.bz2 + https://waf.io/${WAFTARBALL} +" + +LICENSE="GPL-3" +SLOT="0/5" +KEYWORDS="~amd64 ~loong ~ppc ~ppc64 ~sparc ~x86" +IUSE="doc double-precision examples ffmpeg fftw jack libsamplerate sndfile python test" + +REQUIRED_USE="${PYTHON_REQUIRED_USE} + ?? ( double-precision libsamplerate ) + doc? ( python ) +" + +RESTRICT="!test? ( test )" + +RDEPEND=" + ffmpeg? ( >=media-video/ffmpeg-2.6:0= ) + fftw? ( sci-libs/fftw:3.0= ) + jack? ( virtual/jack ) + libsamplerate? ( media-libs/libsamplerate ) + python? ( + ${PYTHON_DEPS} + dev-python/numpy[${PYTHON_USEDEP}] + ) + sndfile? ( media-libs/libsndfile ) +" + +DEPEND="${RDEPEND} + ${PYTHON_DEPS} + app-text/txt2man + virtual/pkgconfig + doc? ( + app-text/doxygen + dev-python/sphinx[${PYTHON_USEDEP}] + ) +" +BDEPEND="${DISTUTILS_DEPS}" + +DOCS=( AUTHORS ChangeLog README.md ) +PYTHON_SRC_DIR="${S}" + +PATCHES=( + "${FILESDIR}"/${P}-docdir.patch + "${FILESDIR}"/ffmpeg5.patch +) + +src_prepare() { + default + + sed -e "s:doxygen:doxygen_disabled:" -i wscript || die + + sed -e "s/, 'sphinx.ext.intersphinx'//" -i doc/conf.py || die + + # ERROR: "Skipped: no test sounds, add some in 'python/tests/sounds/'!" + rm python/tests/test_source.py || die + + if ! use test; then + sed -e "/bld.*tests/d" -i wscript || die + fi + + # update waf to fix Python 3.12 compatibility + sed -r \ + -e "s:(WAFVERSION=).*:\1${WAFVERSION}:" \ + -e "s:(WAFURL=).*:\1'${DISTDIR}/${WAFTARBALL}':" \ + -e 's:^fetchwaf$:cp "${WAFURL}" "${WAFTARBALL}":' \ + -i scripts/get_waf.sh || die + emake expandwaf +} + +src_configure() { + python_setup + + local mywafconfargs=( + --enable-complex + --docdir="${EPREFIX}"/usr/share/doc/${PF} + $(use_enable doc docs) + $(use_enable double-precision double) + $(use_enable fftw fftw3) + $(use_enable ffmpeg avcodec) + $(use_enable jack) + $(use_enable libsamplerate samplerate) + $(use_enable sndfile) + ) + + use double-precision || mywafconfargs+=( $(use_enable fftw fftw3f) ) + + waf-utils_src_configure "${mywafconfargs[@]}" + + if use python ; then + cd "${PYTHON_SRC_DIR}" || die + distutils-r1_src_configure + fi +} + +src_compile() { + waf-utils_src_compile --notests + + if use python ; then + cd "${PYTHON_SRC_DIR}" || die + distutils-r1_src_compile + + if use doc ; then + # No API function available for this use case + pushd "${S}"/doc &>/dev/null || die + python_setup + LD_LIBRARY_PATH="${S}/build/src:${LD_LIBRARY_PATH}" \ + PYTHONPATH="${S%%/}-${EPYTHON/./_}/lib${PYTHONPATH:+:${PYTHONPATH}}" \ + emake dirhtml + fi + + cd "${S}" || die + fi +} + +src_test() { + waf-utils_src_compile --alltests + + if use python ; then + cd "${PYTHON_SRC_DIR}" || die + distutils-r1_src_test + fi +} + +python_test() { + LD_LIBRARY_PATH="${S}/build/src:${LD_LIBRARY_PATH}" eunittest python/tests +} + +src_install() { + waf-utils_src_install + + if use examples; then + # install dist_noinst_SCRIPTS from Makefile.am + dodoc -r examples + fi + + if use python ; then + cd "${PYTHON_SRC_DIR}" || die + DOCS="" distutils-r1_src_install + newdoc python/README.md README.python + fi + + if use doc; then + dodoc doc/*.txt + docinto html + dodoc -r doc/_build/dirhtml/. + fi + + find "${ED}" -name "*.a" -delete || die +}
