summaryrefslogtreecommitdiff
path: root/dev-python/python-rtmidi
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-06-14 15:13:45 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-06-14 15:13:45 +0100
commitb9e8f3cc44aed3b6da71c7510c6287bf7bbbc66b (patch)
tree4b47f3026f10252cff69e7a4346215a4da4f0f1c /dev-python/python-rtmidi
parent3d952d0bfe7b386699eb32d1431deb0c538f044d (diff)
gentoo auto-resync : 14:06:2023 - 15:13:45
Diffstat (limited to 'dev-python/python-rtmidi')
-rw-r--r--dev-python/python-rtmidi/Manifest4
-rw-r--r--dev-python/python-rtmidi/files/python-rtmidi-1.5.1-build_backend.patch33
-rw-r--r--dev-python/python-rtmidi/files/python-rtmidi-1.5.1-unbundle_rtmidi.patch55
-rw-r--r--dev-python/python-rtmidi/python-rtmidi-1.5.1.ebuild53
4 files changed, 145 insertions, 0 deletions
diff --git a/dev-python/python-rtmidi/Manifest b/dev-python/python-rtmidi/Manifest
index 29aeaefa886c..0f7dca712c9c 100644
--- a/dev-python/python-rtmidi/Manifest
+++ b/dev-python/python-rtmidi/Manifest
@@ -1,4 +1,8 @@
AUX python-rtmidi-1.4.9-unbundle_rtmidi.patch 2137 BLAKE2B b27c438fa93c00fd458fd8083302838ad0ca96c09c89f0993c6fdc09681f8eccddca53445925c1b437860faa488115d2bc33076a202a5dd730f44cef298c9831 SHA512 6d42f2fe1d533d85ae7ac32b903fc087d4932904905fd778e1979aaed3d4dd6e45db4a49ab87089d67a68ac24b724ef0c7e52eb815badb98d972d3de8cd70677
+AUX python-rtmidi-1.5.1-build_backend.patch 770 BLAKE2B 3c5a9d3774f182287ad45a8075682f685345b37064c6c7bd9a2bb7c54954105c84fd8740a5eea88cf0270fc4f726a6d7119d196cdb792f13d2db2fbbb7903fe4 SHA512 5fc2daecd2b02e4c4fd5a370710e0280eebfbf5423ea23036a1b938a095c4a27a8ccd70723bd3e51e33ca76af878d9a5788b54a146a08570f7bb06fc0a5cb514
+AUX python-rtmidi-1.5.1-unbundle_rtmidi.patch 1455 BLAKE2B 2cc76ace5758131a069194e9d30c8288ed93a261d41a2b4cf0294e2b4fc7ebee9e0c43b4377143ae8074a03dcc2abf13fd85fdebeebd321efce00e25e43057b1 SHA512 92c11d878018ded30dffa0d06006f8471054321af8d9f58268d4d899121dac66712ddc3a53285c19293fb2d52d4d054b0d803c559e9c01cb8c8f161ce5f2c734
DIST python-rtmidi-1.4.9.tar.gz 251238 BLAKE2B dda4052e893839f88a6756306f8ff4e89ee66ad9716d374efbb7b92a8e9074e98c8d5df0cc82aa3c6e0c77a78fe9b997079623a5147c03eeea9128dfb7605215 SHA512 91c5a0f807549fbe9d87df6e40b8c3db0f9be753616ba51804900195d02120cd972e39c69dd99e60e4ea1b1d9831d0b956b64ce71b2fe03422efc57bccf5cb70
+DIST python-rtmidi-1.5.1.tar.gz 331487 BLAKE2B fafa56132c54c20a702bcdc7dbe87b9eb3384ecf1e53ee76926866ba6f6fb601f55f4525f6b12f477f8659e4da8138940c5037ac0a4f31f472261089f0d25b03 SHA512 656690f397983834a719be6b58db66db066469b356ef00ff8d62666af9b5e3ef572e541cf38e082b2122a31d8895fd52c0392ed6bdec387baf3f5827de411254
EBUILD python-rtmidi-1.4.9.ebuild 1147 BLAKE2B 7a49aced93d0a8aad757f57d91790f49fe61d78bafbd06685f96fcb76ad4b3499ebc4bf36188867a221f4e240d0212f89da47a6b23f498aa18085bec705ac819 SHA512 fb429d92746f974c6b23ac275389b00a331685e89ff4d76c85535f4e4967bf9b5752688b4cb7020197647bf43eb7d02d9c1796bb614b39a4ca6b96c72c7e817d
+EBUILD python-rtmidi-1.5.1.ebuild 1196 BLAKE2B 12ec251f41ebb76a71f3b12e501db06c7f795689b2a6b1c15c82fa9c25e300ac8c266de979bac08f34e06f1e606eb650c158f394445827759a6db1bbe93ae418 SHA512 704f631581a9e641ebbba2484811efa56bc6851659aa17c4e468fea95bbc55bcd7ad11563b9326f7bcf95552733d49b5829f320efd638cb62ff5a6295e066b5d
MISC metadata.xml 388 BLAKE2B b1bce0f609aae5a298c26c80c3dc3aa33eadf32c9de9da22f4a4f808d1cfd8c769b095d12f2264cf9dd04cdbec8a0fb7202b10c04bb43f9112146023aadd398d SHA512 012ad743d364b9266bef852d159235f27b172ec7fceff43737fe8a67478f991dc53532b021c02d8ffc2eea19cdc568046cf90e440afefb46dcdad275a33f71e3
diff --git a/dev-python/python-rtmidi/files/python-rtmidi-1.5.1-build_backend.patch b/dev-python/python-rtmidi/files/python-rtmidi-1.5.1-build_backend.patch
new file mode 100644
index 000000000000..fdb2a14b7c7d
--- /dev/null
+++ b/dev-python/python-rtmidi/files/python-rtmidi-1.5.1-build_backend.patch
@@ -0,0 +1,33 @@
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -1,14 +1,14 @@
+ [build-system]
+-# https://thiblahute.gitlab.io/mesonpep517/
+-build-backend = "mesonpep517.buildapi"
++build-backend = "mesonpy"
+ requires = [
+ "cython",
+ "wheel",
+- "mesonpep517 @ git+https://gitlab.com/SpotlightKid/mesonpep517.git@rtmidi",
++ "meson-python",
+ "ninja"
+ ]
+
+ [project]
++name = "python-rtmidi"
+ description = "A Python binding for the RtMidi C++ library implemented using Cython."
+ authors = [
+ { name="Christopher Arndt", email="info@chrisarndt.de" },
+@@ -41,12 +41,6 @@
+ "music",
+ "rtmidi",
+ ]
+-meson-python-option-name = "python"
+-meson-options = [
+- "-Dwheel=true",
+- "-Dverbose=true",
+- "--buildtype=plain"
+-]
+
+ [project.license]
+ file = "LICENSE.md"
diff --git a/dev-python/python-rtmidi/files/python-rtmidi-1.5.1-unbundle_rtmidi.patch b/dev-python/python-rtmidi/files/python-rtmidi-1.5.1-unbundle_rtmidi.patch
new file mode 100644
index 000000000000..1501a46738d4
--- /dev/null
+++ b/dev-python/python-rtmidi/files/python-rtmidi-1.5.1-unbundle_rtmidi.patch
@@ -0,0 +1,55 @@
+--- a/meson.build
++++ b/meson.build
+@@ -11,6 +11,8 @@
+
+ cpp = meson.get_compiler('cpp')
+
++rtmidi_dep = dependency('rtmidi')
++
+ # Jack API (portable)
+ jack2_dep = dependency('jack', version: '>=1.9.11', required: false)
+ jack1_dep = dependency('jack', version: ['>=0.125.0', '<1.0'], required: false)
+--- a/rtmidi/meson.build
++++ b/rtmidi/meson.build
+@@ -1,7 +1,7 @@
+ # https://mesonbuild.com/Python-module.html
+
+ defines = []
+-dependencies = [python.dependency()]
++dependencies = [python.dependency(), rtmidi_dep]
+ link_args = []
+
+ if host_machine.system() == 'darwin' and coremidi_dep.found() and get_option('coremidi')
+@@ -47,11 +47,10 @@
+ # Build and install the extension module
+ module = python.extension_module(
+ '_rtmidi',
+- [rtmidi_cython, rtmidi_sources],
++ [rtmidi_cython],
+ dependencies: dependencies,
+ cpp_args: defines,
+ link_args: link_args,
+- include_directories: rtmidi_inc,
+ install: true,
+ subdir: 'rtmidi',
+ )
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -1,9 +1,5 @@
+ fs = import('fs')
+
+-rtmidi_sources = files([
+- 'rtmidi/RtMidi.cpp',
+-])
+-rtmidi_inc = include_directories('.', 'rtmidi')
+ rtmidi_mod_pyx = '_rtmidi.pyx'
+ rtmidi_mod_cpp = '_rtmidi.cpp'
+
+@@ -16,7 +12,6 @@
+ 'rtmidi_cython',
+ output: rtmidi_mod_cpp,
+ input: rtmidi_mod_pyx,
+- depend_files: [rtmidi_sources],
+ command: [cython, '-3', '--cplus', '-o', '@OUTPUT@', '@INPUT@'],
+ )
+ else
diff --git a/dev-python/python-rtmidi/python-rtmidi-1.5.1.ebuild b/dev-python/python-rtmidi/python-rtmidi-1.5.1.ebuild
new file mode 100644
index 000000000000..ed64baccc94b
--- /dev/null
+++ b/dev-python/python-rtmidi/python-rtmidi-1.5.1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+DISTUTILS_USE_PEP517=meson-python
+PYPI_NO_NORMALIZE=1
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python bindings for media-libs/rtmidi implemented using Cython"
+HOMEPAGE="
+ https://pypi.org/project/python-rtmidi/
+ https://spotlightkid.github.io/python-rtmidi/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+alsa jack"
+
+# Most of these tests do not play nicely with the sandbox, some only
+# work with exactly the same version of rtmidi as the bundled one, and
+# several fail even with disabled sandbox unless there are actual MIDI
+# I/O devices present.
+RESTRICT="test"
+
+DEPEND="media-libs/rtmidi[alsa?,jack?]"
+RDEPEND="${DEPEND}"
+BDEPEND="<dev-python/cython-2.99[${PYTHON_USEDEP}]
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.5.1-build_backend.patch
+ "${FILESDIR}"/${PN}-1.5.1-unbundle_rtmidi.patch
+)
+
+distutils_enable_sphinx docs
+distutils_enable_tests unittest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # Just in case
+ rm -r src/rtmidi || die
+ rm src/_rtmidi.cpp || die
+}
+
+python_test() {
+ cd "${T}" || die
+ eunittest "${S}"/tests
+}