Add libretro-mame2010.

This commit is contained in:
nia 2018-12-25 15:34:07 +00:00
parent a454c5b5c5
commit fdd675a87b
7 changed files with 163 additions and 0 deletions

View File

@ -1897,6 +1897,7 @@ SUBDIR+= libretro-fmsx
SUBDIR+= libretro-gearboy
SUBDIR+= libretro-gearsystem
SUBDIR+= libretro-mame2003
SUBDIR+= libretro-mame2010
SUBDIR+= libretro-mame2014
SUBDIR+= libretro-melonds
SUBDIR+= libretro-parallel-n64

8
libretro-mame2010/DESCR Normal file
View File

@ -0,0 +1,8 @@
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.
MAME is the Multiple Arcade Machine Emulator. This is based on MAME
0.139 with backported improvements.

View File

@ -0,0 +1,67 @@
# $NetBSD$
DISTNAME= libretro-mame2010-20180417
CATEGORIES= emulators
MASTER_SITES= ${MASTER_SITE_GITHUB:=libretro/}
GITHUB_PROJECT= mame2010-libretro
GITHUB_TAG= 70732f9137f6bb2bde4014746ea8bc613173dd1e
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= https://docs.libretro.com/library/mame_2010/
COMMENT= Libretro core based on the MAME 0.139 arcade game emulator
LICENSE= mame-license
EXTRACT_USING= bsdtar
USE_TOOLS+= gmake
USE_LANGUAGES= c c++
MAKE_FLAGS+= platform=unix
MAKE_FLAGS+= GIT_VERSION="-pkgsrc"
MAKE_FLAGS+= BUILD_ZLIB=0
.include "../../mk/endian.mk"
.if ${MACHINE_ENDIAN} == "big"
CFLAGS+= -DMSB_FIRST
.endif
.include "../../mk/bsd.prefs.mk"
.if !empty(OPSYS:M*BSD) || ${OPSYS} == "DragonFly" || ${OPSYS} == "Bitrig"
CFLAGS+= -DSDLMAME_BSD
.endif
.if ${OPSYS} != "Linux"
CFLAGS+= -DNO_AFFINITY_NP
.endif
.if ${MACHINE_ARCH} != "x86_64" && ${MACHINE_ARCH} != "i386"
MAKE_FLAGS+= FORCE_DRC_C_BACKEND=1
.endif
.if !empty(USE_CROSS_COMPILE:M[yY][eE][sS])
MAKE_FLAGS+= NATIVECC=${NATIVE_CXX:Q}
MAKE_FLAGS+= NATIVELD=${NATIVE_CXX:Q}
.else
MAKE_FLAGS+= NATIVECC=${CXX:Q}
MAKE_FLAGS+= NATIVELD=${CXX:Q}
.endif
.for platform in ${LP64PLATFORMS}
. if ${MACHINE_PLATFORM:M${platform}}
MAKE_FLAGS+= PTR64=1
. endif
.endfor
MAKE_FLAGS+= CC=${CXX:Q}
MAKE_FLAGS+= LD=${CXX:Q}
INSTALLATION_DIRS+= ${PREFIX}/lib/libretro
do-install:
${INSTALL_LIB} ${WRKSRC}/mame2010_libretro.so \
${DESTDIR}${PREFIX}/lib/libretro/mame2010_libretro.so
.include "../../devel/zlib/buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"

2
libretro-mame2010/PLIST Normal file
View File

@ -0,0 +1,2 @@
@comment $NetBSD$
lib/libretro/mame2010_libretro.so

View File

@ -0,0 +1,8 @@
$NetBSD$
SHA1 (libretro-mame2010-20180417-70732f9137f6bb2bde4014746ea8bc613173dd1e.tar.gz) = c755106da94893012afb9d31bf488e0bd71f983d
RMD160 (libretro-mame2010-20180417-70732f9137f6bb2bde4014746ea8bc613173dd1e.tar.gz) = a39a85b9d96ca17edb25b941963f8217069bc22e
SHA512 (libretro-mame2010-20180417-70732f9137f6bb2bde4014746ea8bc613173dd1e.tar.gz) = 6b8bc3111eebe19387f6927ee24ba4edef6505c7540c87b872d2930c4b786010ebc63f97b14be427c00182838cffb5e8d707ab38d295ac1144eb4787ada4cfd0
Size (libretro-mame2010-20180417-70732f9137f6bb2bde4014746ea8bc613173dd1e.tar.gz) = 23952671 bytes
SHA1 (patch-Makefile) = 5831dcc18098b9f654736822b7783fcca2433f3e
SHA1 (patch-src_emu_emucore.h) = ecb9617e260559aeb685e9625195f2ad6c99244d

View File

@ -0,0 +1,55 @@
$NetBSD$
Avoid overriding build settings.
--- Makefile.orig 2018-04-17 17:16:44.000000000 +0000
+++ Makefile
@@ -55,14 +55,9 @@ LIBS =
#-------------------------------------------------
# start with empties for everything
-CCOMFLAGS = -DDISABLE_MIDI
-CONLYFLAGS =
-COBJFLAGS =
-CPPONLYFLAGS =
+CCOMFLAGS += -DDISABLE_MIDI
# LDFLAGS are used generally; LDFLAGSEMULATOR are additional
# flags only used when linking the core emulator
-LDFLAGS =
-LDFLAGSEMULATOR =
GIT_VERSION ?= " $(shell git rev-parse --short HEAD || echo unknown)"
ifneq ($(GIT_VERSION)," unknown")
@@ -143,15 +138,6 @@ ifeq ($(VRENDER),opengl)
LIBS += -lGL
endif
LDFLAGS += $(SHARED)
- NATIVELD = g++
- NATIVELDFLAGS = -Wl,--warn-common -lstdc++
- NATIVECC = g++
- NATIVECFLAGS = -std=gnu99
- CC_AS = gcc
- CC = g++
- AR = @ar
- LD = g++
- CCOMFLAGS += $(PLATCFLAGS) -ffast-math
LIBS += -lstdc++ -lpthread
# Android
@@ -568,7 +554,7 @@ DEFS += -DFLAC__NO_DLL
# CFLAGS is defined based on C or C++ targets
# (remember, expansion only happens when used, so doing it here is ok)
-CFLAGS = $(CCOMFLAGS) $(CPPONLYFLAGS)
+CFLAGS += $(CCOMFLAGS) $(CPPONLYFLAGS)
# we compile C-only to C89 standard with GNU extensions
# we compile C++ code to C++98 standard with GNU extensions
@@ -588,7 +574,6 @@ ifeq ($(MDEBUG),1)
CCOMFLAGS += -O0 -g
else
# add the optimization flag
-CCOMFLAGS += -O$(OPTIMIZE)
endif
# add the error warning flag

View File

@ -0,0 +1,22 @@
$NetBSD$
Avoid colliding with libc symbols on NetBSD.
--- src/emu/emucore.h.orig 2018-04-17 17:16:44.000000000 +0000
+++ src/emu/emucore.h
@@ -502,6 +502,7 @@ inline void fatalerror_exitcode(running_
//**************************************************************************
// population count
+#ifndef __NetBSD__
inline int popcount(UINT32 val)
{
int count;
@@ -510,6 +511,7 @@ inline int popcount(UINT32 val)
val &= val - 1;
return count;
}
+#endif
// convert a series of 32 bits into a float