Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 6 Jan 2024 16:19:46 GMT
From:      Jose Alonso Cardenas Marquez <acm@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 0dbb00b369ce - main - emulators/py-m64py: New port: a frontend for Mupen64Plus
Message-ID:  <202401061619.406GJk60044717@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by acm:

URL: https://cgit.FreeBSD.org/ports/commit/?id=0dbb00b369ce2d199a747563c529562d0d0639be

commit 0dbb00b369ce2d199a747563c529562d0d0639be
Author:     Jose Alonso Cardenas Marquez <acm@FreeBSD.org>
AuthorDate: 2024-01-06 16:18:36 +0000
Commit:     Jose Alonso Cardenas Marquez <acm@FreeBSD.org>
CommitDate: 2024-01-06 16:18:36 +0000

    emulators/py-m64py: New port: a frontend for Mupen64Plus
    
    M64Py is a Qt5 front-end (GUI) for Mupen64Plus, a cross-platform plugin-based
    Nintendo 64 emulator. Front-end is written in Python and it provides a
    user-friendly interface over the Mupen64Plus shared library.
---
 emulators/Makefile                                 |  1 +
 emulators/py-m64py/Makefile                        | 41 ++++++++++++++++++++++
 emulators/py-m64py/distinfo                        |  3 ++
 .../py-m64py/files/patch-src_m64py_platform.py     | 18 ++++++++++
 emulators/py-m64py/pkg-descr                       |  3 ++
 5 files changed, 66 insertions(+)

diff --git a/emulators/Makefile b/emulators/Makefile
index 83e3e7b1d611..6d2d06eb2761 100644
--- a/emulators/Makefile
+++ b/emulators/Makefile
@@ -106,6 +106,7 @@
     SUBDIR += ppsspp
     SUBDIR += ppsspp-qt5
     SUBDIR += py-gns3-converter
+    SUBDIR += py-m64py
     SUBDIR += py-unicorn
     SUBDIR += qemu
     SUBDIR += qemu-cheri
diff --git a/emulators/py-m64py/Makefile b/emulators/py-m64py/Makefile
new file mode 100644
index 000000000000..109876167cfd
--- /dev/null
+++ b/emulators/py-m64py/Makefile
@@ -0,0 +1,41 @@
+PORTNAME=	m64py
+DISTVERSION=	0.2.5.${RELEASE_DATE}
+CATEGORIES=	emulators python
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	acm@FreeBSD.org
+COMMENT=	a frontend for Mupen64Plus
+WWW=		https://github.com/mupen64plus/mupen64plus-ui-python
+
+LICENSE=	GPLv2
+LICENSE_FILE=	${WRKSRC}/LICENSES
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}qt5-pyqt>0:devel/py-qt5-pyqt@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pysdl2>0:devel/py-pysdl2@${PY_FLAVOR}
+LIB_DEPENDS=	libmupen64plus.so.2:emulators/mupen64plus-core
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}qt5-pyqt>0:devel/py-qt5-pyqt@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pysdl2>0:devel/py-pysdl2@${PY_FLAVOR} \
+		${LOCALBASE}/lib/mupen64plus/mupen64plus-audio-sdl.so:emulators/mupen64plus-audio-sdl \
+		${LOCALBASE}/lib/mupen64plus/mupen64plus-input-sdl.so:emulators/mupen64plus-input-sdl \
+		${LOCALBASE}/lib/mupen64plus/mupen64plus-video-rice.so:emulators/mupen64plus-video-rice \
+		${LOCALBASE}/lib/mupen64plus/mupen64plus-rsp-hle.so:emulators/mupen64plus-rsp-hle
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	mupen64plus
+GH_PROJECT=	mupen64plus-ui-python
+GH_TAGNAME=	90093ce3b353ff0fbe3277eb5d75130debdf0fab
+
+USES=		desktop-file-utils python qt:5 shebangfix
+USE_PYTHON=	autoplist distutils
+USE_QT=		linguisttools
+
+NO_ARCH=	yes
+
+SHEBANG_FILES=	${WRKSRC}/bin/m64py
+
+RELEASE_DATE=	20231226
+
+post-patch:
+	${REINPLACE_CMD} -i "" -e 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/src/m64py/platform.py
+
+.include <bsd.port.mk>
diff --git a/emulators/py-m64py/distinfo b/emulators/py-m64py/distinfo
new file mode 100644
index 000000000000..6d59871e6f1a
--- /dev/null
+++ b/emulators/py-m64py/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1704512889
+SHA256 (mupen64plus-mupen64plus-ui-python-0.2.5.20231226-90093ce3b353ff0fbe3277eb5d75130debdf0fab_GH0.tar.gz) = efa253ad87e5ef9d2509a343d3d217c2e143cd6d0b3031431db2f28553d8f21a
+SIZE (mupen64plus-mupen64plus-ui-python-0.2.5.20231226-90093ce3b353ff0fbe3277eb5d75130debdf0fab_GH0.tar.gz) = 14669607
diff --git a/emulators/py-m64py/files/patch-src_m64py_platform.py b/emulators/py-m64py/files/patch-src_m64py_platform.py
new file mode 100644
index 000000000000..8490ad7a9c7a
--- /dev/null
+++ b/emulators/py-m64py/files/patch-src_m64py_platform.py
@@ -0,0 +1,18 @@
+--- src/m64py/platform.py.orig	2023-12-26 23:01:25 UTC
++++ src/m64py/platform.py
+@@ -31,6 +31,15 @@ if sys.platform.startswith("linux"):
+         "/usr/lib/i386-linux-gnu/mupen64plus",
+         "."
+     ]
++elif sys.platform.startswith("freebsd"):
++    DLL_EXT = ".so"
++    DLL_FILTER = ""
++    DEFAULT_DYNLIB = "libmupen64plus.so.2"
++    SEARCH_DIRS = [
++        "%%LOCALBASE%%/lib/",
++        "%%LOCALBASE%%/lib/mupen64plus/",
++        "."
++    ]
+ elif sys.platform.startswith("openbsd"):
+     DLL_EXT = ".so"
+     DLL_FILTER = ""
diff --git a/emulators/py-m64py/pkg-descr b/emulators/py-m64py/pkg-descr
new file mode 100644
index 000000000000..34b3572be179
--- /dev/null
+++ b/emulators/py-m64py/pkg-descr
@@ -0,0 +1,3 @@
+M64Py is a Qt5 front-end (GUI) for Mupen64Plus, a cross-platform plugin-based
+Nintendo 64 emulator. Front-end is written in Python and it provides a
+user-friendly interface over the Mupen64Plus shared library.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202401061619.406GJk60044717>