From 349bf1b7cc36b5ad2b4febe87f16ada708205c79 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Micha=C5=82=20G=C3=B3rny?= Date: Thu, 1 Oct 2015 21:02:14 +0200 Subject: [PATCH] games-emulation/m64py: Version bump to 0.2.3. The new version uses Python 3, and PyQt5. It is also thoroughly broken and throws uncatched exceptions that result in segmentation faults. Package-Manager: portage-2.2.20 --- games-emulation/m64py/Manifest | 1 + games-emulation/m64py/m64py-0.2.3.ebuild | 72 ++++++++++++++++++++++++ profiles/package.mask | 5 ++ 3 files changed, 78 insertions(+) create mode 100644 games-emulation/m64py/m64py-0.2.3.ebuild diff --git a/games-emulation/m64py/Manifest b/games-emulation/m64py/Manifest index ece95c8dc3aa..6e4466e8dac1 100644 --- a/games-emulation/m64py/Manifest +++ b/games-emulation/m64py/Manifest @@ -1 +1,2 @@ DIST m64py-0.2.1.tar.gz 304897 SHA256 6461b494291f22c10ccd60cda4d4750da3c1514e1d5bc2354bad95a9f4cc1525 SHA512 02d5bc4a501f3c9a5851f242119ad6436be9a59b832f27483591353cfad6975da677a124e61330a4430f1813259f5a423bc8413423ee43a3570d74239e33b487 WHIRLPOOL 5998dd86de565e09c392cef6a9bb94978c6ebbfb3169fc30ae075d291ded187efc16fcf0d380c3ae7a85ae74f3b333de786a202a17320348a0d75595f7e5c024 +DIST m64py-0.2.3.tar.gz 304241 SHA256 87dccbad9f27ab1eae3fb9957ef039e23379d264e68f8ef7470ec38a523ef020 SHA512 5471d2ce96007c5cb5492f7ba3bc2a8843455dfea811b114c68862fa5c06a636e6dd6a4304e60bf2273377330b0eb01f2dcdc0340d02ec498ae44cdd2ccc01ff WHIRLPOOL 2d7727c56a67f6ca3901eb846d46dea881cf6361fe1bbcec6ef2d10247320d92d42d2ea9e75f247faef482f715b051a2c6394e814b83fa5f0c71bd5d1aabf8ba diff --git a/games-emulation/m64py/m64py-0.2.3.ebuild b/games-emulation/m64py/m64py-0.2.3.ebuild new file mode 100644 index 000000000000..18371403589f --- /dev/null +++ b/games-emulation/m64py/m64py-0.2.3.ebuild @@ -0,0 +1,72 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python3_4 ) + +inherit distutils-r1 + +DESCRIPTION="A frontend for Mupen64Plus" +HOMEPAGE="http://m64py.sourceforge.net/" +SRC_URI="mirror://sourceforge/m64py/${P}.tar.gz" + +LICENSE="GPL-3 LGPL-3 public-domain GPL-2 BSD CC-BY-SA-3.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +# SDL & libmupen64plus are through ctypes, so they rely on specific ABI +RDEPEND="media-libs/libsdl:0/0[joystick] + dev-python/PyQt5[opengl,${PYTHON_USEDEP}] + >=games-emulation/mupen64plus-core-2.0-r1:0/2" + +python_prepare_all() { + # set the correct search path + cat >> src/m64py/platform.py <<-_EOF_ + SEARCH_DIRS = ["/usr/$(get_libdir)/mupen64plus"] +_EOF_ + + # comment out SDL2 support since our mupen64plus uses SDL1 + sed -e '/from m64py\.SDL2/s:^:#:' \ + -e '/QT2SDL2\[/s:^:#:' \ + -e '/KEYCODE2SCANCODE\[/s:^:#:' \ + -e '/SCANCODE2KEYCODE\[/s:^:#:' \ + -i src/m64py/frontend/keymap.py || die + sed -e '/--sdl2/d' \ + -e '/SDL2/s:=.*$:= False:' \ + -i src/m64py/opts.py || die + + distutils-r1_python_prepare_all +} + +pkg_postinst() { + local vr + for vr in ${REPLACING_VERSIONS}; do + if ! version_is_at_least 0.2.1-r1 ${vr}; then + ewarn + ewarn "Starting with mupen64plus-2.0-r1, the plugin install path has changed." + ewarn "In order for m64py to find mupen64plus, you will either need to set" + ewarn "new paths in configuration dialog or remove your configuration file." + ewarn "The new paths are:" + ewarn + ewarn " Library file: /usr/$(get_libdir)/libmupen64plus.so.2.0.0" + ewarn " Plugins directory: /usr/$(get_libdir)/mupen64plus" + ewarn " Data directory: /usr/share/mupen64plus" + fi + done + + if ! type -P rar >/dev/null && ! type -P unrar >/dev/null; then + elog + elog "In order to gain RAR archive support, please install either app-arch/rar" + elog "or app-arch/unrar." + fi + + if ! type -P 7z >/dev/null \ + && ! has_version "dev-python/pylzma[${PYTHON_USEDEP}]"; then + elog + elog "In order to gain 7z archive support, please install either app-arch/p7zip" + elog "or dev-python/pylzma." + fi +} diff --git a/profiles/package.mask b/profiles/package.mask index 90e036e7bfcb..25d9a65977e5 100644 --- a/profiles/package.mask +++ b/profiles/package.mask @@ -30,6 +30,11 @@ #--- END OF EXAMPLES --- +# Michał Górny (1 Oct 2015) +# Thoroughly broken for me since the switch to Python 3 / PyQt5. Masking +# to account for opt-in testing. +=games-emulation/m64py-0.2.3 + # Patrice Clement (1 Oct 2015) # Project is over 10 years old and seems to have stalled. # Masked for removal in 30 days. See bug 561954. -- 2.26.2