pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

libretro-bsnes-mercury: Import libretro-bsnes-mercury



Module Name:	pkgsrc-wip
Committed By:	Nia Alarie <nia.alarie%gmail.com@localhost>
Pushed By:	nee
Date:		Sun May 14 14:48:15 2017 +0100
Changeset:	9cd876e9c0b121a8da41580ddd01e3bad44bf714

Modified Files:
	Makefile
Added Files:
	libretro-bsnes-mercury-accuracy/DESCR
	libretro-bsnes-mercury-accuracy/Makefile
	libretro-bsnes-mercury-accuracy/PLIST
	libretro-bsnes-mercury-performance/DESCR
	libretro-bsnes-mercury-performance/Makefile
	libretro-bsnes-mercury-performance/PLIST
	libretro-bsnes-mercury/DESCR
	libretro-bsnes-mercury/Makefile
	libretro-bsnes-mercury/Makefile.common
	libretro-bsnes-mercury/PLIST
	libretro-bsnes-mercury/distinfo
	libretro-bsnes-mercury/patches/patch-nall_platform.hpp
	libretro-bsnes-mercury/patches/patch-target-libretro_Makefile

Log Message:
libretro-bsnes-mercury: Import libretro-bsnes-mercury

Libretro is a simple but powerful development interface that allows
for the easy creation of emulators, games and multimedia applications
that can plug straight into any libretro-compatible frontend. This
development interface is open to others so that they can run these
pluggable emulator and game cores also in their own programs or
devices.

bsnes-mercury is a Super Nintendo Entertainment System / Super
Famicom video game system emulator that can be used as a libretro
core.

It is a fork of bsnes aiming to restore some useful features that
have been removed, as well as improving performance a bit. Maximum
accuracy is still uncompromisable; anything that affects accuracy
is optional and off by default.

It has has 3 different profiles: Performance, Balanced, and Accuracy.
The Balanced version is recommended for modern PCs. Use the Accuracy
profile only for extreme cases. For more information, see:

https://wiki.libretro.com/index.php?title=Nintendo_SNES_Core_Compatibility

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=9cd876e9c0b121a8da41580ddd01e3bad44bf714

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                                           |  3 ++
 libretro-bsnes-mercury-accuracy/DESCR              | 21 ++++++++++++++
 libretro-bsnes-mercury-accuracy/Makefile           |  9 ++++++
 libretro-bsnes-mercury-accuracy/PLIST              |  2 ++
 libretro-bsnes-mercury-performance/DESCR           | 21 ++++++++++++++
 libretro-bsnes-mercury-performance/Makefile        |  9 ++++++
 libretro-bsnes-mercury-performance/PLIST           |  2 ++
 libretro-bsnes-mercury/DESCR                       | 21 ++++++++++++++
 libretro-bsnes-mercury/Makefile                    | 10 +++++++
 libretro-bsnes-mercury/Makefile.common             | 32 ++++++++++++++++++++++
 libretro-bsnes-mercury/PLIST                       |  2 ++
 libretro-bsnes-mercury/distinfo                    |  8 ++++++
 .../patches/patch-nall_platform.hpp                | 23 ++++++++++++++++
 .../patches/patch-target-libretro_Makefile         | 15 ++++++++++
 14 files changed, 178 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index 4fd7264a05..bf9b9ae820 100644
--- a/Makefile
+++ b/Makefile
@@ -1713,6 +1713,9 @@ SUBDIR+=	librem
 SUBDIR+=	libreoffice-git
 SUBDIR+=	libretro-4do
 SUBDIR+=	libretro-core-info
+SUBDIR+=	libretro-bsnes-mercury
+SUBDIR+=	libretro-bsnes-mercury-accuracy
+SUBDIR+=	libretro-bsnes-mercury-performance
 SUBDIR+=	libretro-desmume
 SUBDIR+=	libretro-fbalpha
 SUBDIR+=	libretro-fbalpha2012
diff --git a/libretro-bsnes-mercury-accuracy/DESCR b/libretro-bsnes-mercury-accuracy/DESCR
new file mode 100644
index 0000000000..86632a3230
--- /dev/null
+++ b/libretro-bsnes-mercury-accuracy/DESCR
@@ -0,0 +1,21 @@
+Libretro is a simple but powerful development interface that allows
+for the easy creation of emulators, games and multimedia applications
+that can plug straight into any libretro-compatible frontend. This
+development interface is open to others so that they can run these
+pluggable emulator and game cores also in their own programs or
+devices.
+
+bsnes-mercury is a Super Nintendo Entertainment System / Super
+Famicom video game system emulator that can be used as a libretro
+core.
+
+It is a fork of bsnes aiming to restore some useful features that
+have been removed, as well as improving performance a bit. Maximum
+accuracy is still uncompromisable; anything that affects accuracy
+is optional and off by default.
+
+It has has 3 different profiles: Performance, Balanced, and Accuracy.
+The Balanced version is recommended for modern PCs. Use the Accuracy
+profile only for extreme cases. For more information, see:
+
+https://wiki.libretro.com/index.php?title=Nintendo_SNES_Core_Compatibility
diff --git a/libretro-bsnes-mercury-accuracy/Makefile b/libretro-bsnes-mercury-accuracy/Makefile
new file mode 100644
index 0000000000..e4ef632c4d
--- /dev/null
+++ b/libretro-bsnes-mercury-accuracy/Makefile
@@ -0,0 +1,9 @@
+# $NetBSD$
+
+BSNES_PROFILE=	accuracy
+
+.include "../../wip/libretro-bsnes-mercury/Makefile.common"
+
+COMMENT=	Libretro core for (more) accurate SNES/Super Famicom emulation
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/libretro-bsnes-mercury-accuracy/PLIST b/libretro-bsnes-mercury-accuracy/PLIST
new file mode 100644
index 0000000000..1eae4b8de3
--- /dev/null
+++ b/libretro-bsnes-mercury-accuracy/PLIST
@@ -0,0 +1,2 @@
+@comment $NetBSD$
+lib/libretro/bsnes_mercury_accuracy_libretro.so
diff --git a/libretro-bsnes-mercury-performance/DESCR b/libretro-bsnes-mercury-performance/DESCR
new file mode 100644
index 0000000000..86632a3230
--- /dev/null
+++ b/libretro-bsnes-mercury-performance/DESCR
@@ -0,0 +1,21 @@
+Libretro is a simple but powerful development interface that allows
+for the easy creation of emulators, games and multimedia applications
+that can plug straight into any libretro-compatible frontend. This
+development interface is open to others so that they can run these
+pluggable emulator and game cores also in their own programs or
+devices.
+
+bsnes-mercury is a Super Nintendo Entertainment System / Super
+Famicom video game system emulator that can be used as a libretro
+core.
+
+It is a fork of bsnes aiming to restore some useful features that
+have been removed, as well as improving performance a bit. Maximum
+accuracy is still uncompromisable; anything that affects accuracy
+is optional and off by default.
+
+It has has 3 different profiles: Performance, Balanced, and Accuracy.
+The Balanced version is recommended for modern PCs. Use the Accuracy
+profile only for extreme cases. For more information, see:
+
+https://wiki.libretro.com/index.php?title=Nintendo_SNES_Core_Compatibility
diff --git a/libretro-bsnes-mercury-performance/Makefile b/libretro-bsnes-mercury-performance/Makefile
new file mode 100644
index 0000000000..63c6b58a03
--- /dev/null
+++ b/libretro-bsnes-mercury-performance/Makefile
@@ -0,0 +1,9 @@
+# $NetBSD$
+
+BSNES_PROFILE=	performance
+
+.include "../../wip/libretro-bsnes-mercury/Makefile.common"
+
+COMMENT=	Libretro core for performant SNES/Super Famicom emulation
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/libretro-bsnes-mercury-performance/PLIST b/libretro-bsnes-mercury-performance/PLIST
new file mode 100644
index 0000000000..0dff1448c9
--- /dev/null
+++ b/libretro-bsnes-mercury-performance/PLIST
@@ -0,0 +1,2 @@
+@comment $NetBSD$
+lib/libretro/bsnes_mercury_performance_libretro.so
diff --git a/libretro-bsnes-mercury/DESCR b/libretro-bsnes-mercury/DESCR
new file mode 100644
index 0000000000..86632a3230
--- /dev/null
+++ b/libretro-bsnes-mercury/DESCR
@@ -0,0 +1,21 @@
+Libretro is a simple but powerful development interface that allows
+for the easy creation of emulators, games and multimedia applications
+that can plug straight into any libretro-compatible frontend. This
+development interface is open to others so that they can run these
+pluggable emulator and game cores also in their own programs or
+devices.
+
+bsnes-mercury is a Super Nintendo Entertainment System / Super
+Famicom video game system emulator that can be used as a libretro
+core.
+
+It is a fork of bsnes aiming to restore some useful features that
+have been removed, as well as improving performance a bit. Maximum
+accuracy is still uncompromisable; anything that affects accuracy
+is optional and off by default.
+
+It has has 3 different profiles: Performance, Balanced, and Accuracy.
+The Balanced version is recommended for modern PCs. Use the Accuracy
+profile only for extreme cases. For more information, see:
+
+https://wiki.libretro.com/index.php?title=Nintendo_SNES_Core_Compatibility
diff --git a/libretro-bsnes-mercury/Makefile b/libretro-bsnes-mercury/Makefile
new file mode 100644
index 0000000000..3d6dd6e6d1
--- /dev/null
+++ b/libretro-bsnes-mercury/Makefile
@@ -0,0 +1,10 @@
+# $NetBSD$
+
+BSNES_PROFILE=	balanced
+
+.include "Makefile.common"
+
+PKGNAME=	${DISTNAME}
+COMMENT=	Libretro core for balanced SNES/Super Famicom emulation
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/libretro-bsnes-mercury/Makefile.common b/libretro-bsnes-mercury/Makefile.common
new file mode 100644
index 0000000000..b9180481e1
--- /dev/null
+++ b/libretro-bsnes-mercury/Makefile.common
@@ -0,0 +1,32 @@
+# $NetBSD$
+#
+# used by wip/libretro-bsnes-mercury/Makefile
+# used by wip/libretro-bsnes-mercury-accuracy/Makefile
+# used by wip/libretro-bsnes-mercury-performance/Makefile
+
+DISTNAME=	libretro-bsnes-mercury-20170510
+PKGNAME=	${DISTNAME:S/libretro-bsnes-mercury/libretro-bsnes-mercury-${BSNES_PROFILE}/}
+CATEGORIES=	emulators
+MASTER_SITES=	${MASTER_SITE_GITHUB:=libretro/}
+LICENSE=	gnu-gpl-v3
+
+GITHUB_PROJECT=	bsnes-mercury
+GITHUB_TAG=	29a435783b1da1dcaeeb64fed022f089e6bbf2ec
+
+WRKSRC=		${WRKDIR}/${GITHUB_PROJECT}-${GITHUB_TAG}
+
+USE_TOOLS=	gmake
+
+USE_LANGUAGES=	c c++
+
+BUILD_MAKE_FLAGS+=	profile=${BSNES_PROFILE}
+BUILD_MAKE_FLAGS+=	compiler=${CXX}
+
+INSTALLATION_DIRS+=	${PREFIX}/lib/libretro
+
+DISTINFO_FILE=	${.CURDIR}/../../wip/libretro-bsnes-mercury/distinfo
+PATCHDIR=	${.CURDIR}/../../wip/libretro-bsnes-mercury/patches
+
+do-install:
+	${INSTALL_LIB} ${WRKSRC}/out/bsnes_mercury_${BSNES_PROFILE}_libretro.so \
+	    ${DESTDIR}${PREFIX}/lib/libretro/bsnes_mercury_${BSNES_PROFILE}_libretro.so
diff --git a/libretro-bsnes-mercury/PLIST b/libretro-bsnes-mercury/PLIST
new file mode 100644
index 0000000000..2dcdd86094
--- /dev/null
+++ b/libretro-bsnes-mercury/PLIST
@@ -0,0 +1,2 @@
+@comment $NetBSD$
+lib/libretro/bsnes_mercury_balanced_libretro.so
diff --git a/libretro-bsnes-mercury/distinfo b/libretro-bsnes-mercury/distinfo
new file mode 100644
index 0000000000..2b67433346
--- /dev/null
+++ b/libretro-bsnes-mercury/distinfo
@@ -0,0 +1,8 @@
+$NetBSD$
+
+SHA1 (libretro-bsnes-mercury-20170510-29a435783b1da1dcaeeb64fed022f089e6bbf2ec.tar.gz) = e190f59036cfb93a5e3cb67d5ba52b511d03f00d
+RMD160 (libretro-bsnes-mercury-20170510-29a435783b1da1dcaeeb64fed022f089e6bbf2ec.tar.gz) = 52ed4c523da5ca76259c4a580b4f72a3988ec109
+SHA512 (libretro-bsnes-mercury-20170510-29a435783b1da1dcaeeb64fed022f089e6bbf2ec.tar.gz) = d8211a3b2caa517793784d12441a998454d79bab183366748d3f56d3f854d085460421f7538c2d08c1eb9a4449bdf1aeedb062c7b99507f733a168fbcc75fac0
+Size (libretro-bsnes-mercury-20170510-29a435783b1da1dcaeeb64fed022f089e6bbf2ec.tar.gz) = 1334780 bytes
+SHA1 (patch-nall_platform.hpp) = 5a3765fcc9e4bce71b234b033d6b2401843e0232
+SHA1 (patch-target-libretro_Makefile) = f24752a781c4e9f62fbe9ab67d3240806f887cc6
diff --git a/libretro-bsnes-mercury/patches/patch-nall_platform.hpp b/libretro-bsnes-mercury/patches/patch-nall_platform.hpp
new file mode 100644
index 0000000000..ab3bc9c3d1
--- /dev/null
+++ b/libretro-bsnes-mercury/patches/patch-nall_platform.hpp
@@ -0,0 +1,23 @@
+$NetBSD$
+
+The BSDs all keep endian.h in /usr/include/machine.
+
+--- nall/platform.hpp.orig	2017-05-10 15:54:49.000000000 +0000
++++ nall/platform.hpp
+@@ -32,6 +32,7 @@ namespace Math {
+ 
+ #include <sys/types.h>
+ #include <sys/stat.h>
++#include <sys/param.h>
+ 
+ #if defined(_WIN32)
+   #include <io.h>
+@@ -41,7 +42,7 @@ namespace Math {
+   #undef interface
+   #define dllexport __declspec(dllexport)
+ #else
+-#ifdef __APPLE__
++#if defined(__APPLE__) || defined(BSD)
+   #include <machine/endian.h>
+ #else
+   #include <endian.h>
diff --git a/libretro-bsnes-mercury/patches/patch-target-libretro_Makefile b/libretro-bsnes-mercury/patches/patch-target-libretro_Makefile
new file mode 100644
index 0000000000..e843bcfb73
--- /dev/null
+++ b/libretro-bsnes-mercury/patches/patch-target-libretro_Makefile
@@ -0,0 +1,15 @@
+$NetBSD$
+
+No -ldl on BSD.
+
+--- target-libretro/Makefile.orig	2017-05-10 15:54:49.000000000 +0000
++++ target-libretro/Makefile
+@@ -46,7 +46,7 @@ build: $(objects)
+ ifeq ($(platform),linux)
+ 	$(compiler) -o out/bsnes_mercury_$(profile)_libretro.so -shared $(objects) -ldl -Wl,--no-undefined -Wl,--version-script=$(ui)/link.T $(link)
+ else ifeq ($(platform),bsd)
+-	$(compiler) -o out/bsnes_mercury_$(profile)_libretro.so -shared $(objects) -ldl -Wl,--no-undefined -Wl,--version-script=$(ui)/link.T $(link)
++	$(compiler) -o out/bsnes_mercury_$(profile)_libretro.so -shared $(objects) -Wl,--no-undefined -Wl,--version-script=$(ui)/link.T $(link)
+ else ifneq (,$(findstring ios,$(platform)))
+ 	$(compiler) -o out/bsnes_mercury_$(profile)_libretro_ios.dylib -dynamiclib $(objects) -isysroot $(IOSSDK) -arch armv7 $(link)
+ else ifeq ($(platform),macosx)


Home | Main Index | Thread Index | Old Index