summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/PySDL2/PySDL2-0.9.16.ebuild')
-rw-r--r--dev-python/PySDL2/PySDL2-0.9.16.ebuild68
1 files changed, 68 insertions, 0 deletions
diff --git a/dev-python/PySDL2/PySDL2-0.9.16.ebuild b/dev-python/PySDL2/PySDL2-0.9.16.ebuild
new file mode 100644
index 000000000000..76ccec4c0b4b
--- /dev/null
+++ b/dev-python/PySDL2/PySDL2-0.9.16.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python (ctypes) bindings for SDL2 libraries"
+HOMEPAGE="
+ https://github.com/py-sdl/py-sdl2/
+ https://pypi.org/project/PySDL2/
+"
+
+LICENSE="|| ( public-domain CC0-1.0 ZLIB )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# Optional deps:
+# - dev-python/numpy,
+# - dev-python/pillow,
+# - media-libs/sdl2-* (loaded dynamically via ctypes).
+#
+# If a reverse dependency needs the specific module, it should
+# explicitly depend on the optional module in question. You also
+# probably need to explicitly require some media-libs/libsdl2 flags.
+RDEPEND="media-libs/libsdl2"
+
+# Require all of SDL2 libraries and at least the most common subsystems
+# for better test coverage.
+DEPEND="
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ media-libs/libsdl2[joystick,sound,video]
+ media-libs/sdl2-gfx
+ media-libs/sdl2-image[gif,jpeg,png,tiff,webp]
+ || (
+ media-libs/sdl2-mixer[flac]
+ media-libs/sdl2-mixer[midi]
+ media-libs/sdl2-mixer[mod]
+ media-libs/sdl2-mixer[mp3]
+ media-libs/sdl2-mixer[opus]
+ )
+ media-libs/sdl2-ttf
+ )"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # libsdl2 itself is broken in numerous ways
+ # https://bugs.gentoo.org/916120
+ sdl2/test/gamecontroller_test.py
+ # https://bugs.gentoo.org/916118
+ sdl2/test/hidapi_test.py::test_SDL_hid_enumerate
+ )
+
+ local -x SDL_VIDEODRIVER=dummy
+ local -x SDL_AUDIODRIVER=dummy
+ local -x SDL_RENDER_DRIVER=software
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -x
+}