Commit ddef0ce2 authored by Bkg2k's avatar Bkg2k

feat(core): add mame2016 core

parent a4dec3f5
......@@ -131,6 +131,7 @@ menu "Libretro Cores"
source "$BR2_EXTERNAL_RECALBOX_PATH/package/libretro-beetle-psx-hw/Config.in"
source "$BR2_EXTERNAL_RECALBOX_PATH/package/libretro-mame2010/Config.in"
source "$BR2_EXTERNAL_RECALBOX_PATH/package/libretro-mame2015/Config.in"
source "$BR2_EXTERNAL_RECALBOX_PATH/package/libretro-mame2016/Config.in"
source "$BR2_EXTERNAL_RECALBOX_PATH/package/libretro-desmume/Config.in"
source "$BR2_EXTERNAL_RECALBOX_PATH/package/libretro-melonds/Config.in"
source "$BR2_EXTERNAL_RECALBOX_PATH/package/libretro-px68k/Config.in"
......
......@@ -294,6 +294,7 @@ BR2_PACKAGE_LIBRETRO_VICE=y
BR2_PACKAGE_LIBRETRO_HANDY=y
BR2_PACKAGE_LIBRETRO_MAME2010=y
BR2_PACKAGE_LIBRETRO_MAME2015=y
BR2_PACKAGE_LIBRETRO_MAME2016=y
BR2_PACKAGE_LIBRETRO_PX68K=y
BR2_PACKAGE_LIBRETRO_THEODORE=y
BR2_PACKAGE_LIBRETRO_ATARI800=y
......
......@@ -350,6 +350,7 @@ BR2_PACKAGE_LIBRETRO_BEETLE_PSX=y
BR2_PACKAGE_LIBRETRO_BEETLE_PSX_HW=y
BR2_PACKAGE_LIBRETRO_MAME2010=y
BR2_PACKAGE_LIBRETRO_MAME2015=y
BR2_PACKAGE_LIBRETRO_MAME2016=y
BR2_PACKAGE_LIBRETRO_DESMUME=y
BR2_PACKAGE_LIBRETRO_MELONDS=y
BR2_PACKAGE_LIBRETRO_PX68K=y
......
......@@ -351,6 +351,7 @@ BR2_PACKAGE_LIBRETRO_BEETLE_PSX=y
BR2_PACKAGE_LIBRETRO_BEETLE_PSX_HW=y
BR2_PACKAGE_LIBRETRO_MAME2010=y
BR2_PACKAGE_LIBRETRO_MAME2015=y
BR2_PACKAGE_LIBRETRO_MAME2016=y
BR2_PACKAGE_LIBRETRO_DESMUME=y
BR2_PACKAGE_LIBRETRO_MELONDS=y
BR2_PACKAGE_LIBRETRO_PX68K=y
......
config BR2_PACKAGE_LIBRETRO_MAME2016
bool "libretro-mame2016"
depends on BR2_PACKAGE_RETROARCH
depends on BR2_INSTALL_LIBSTDCPP
select BR2_PACKAGE_ZLIB
select BR2_PACKAGE_RECALBOX_ROMFS_MAME
select BR2_PACKAGE_RECALBOX_ROMFS_NEOGEO
help
A libretro mame2016 core for ARM - Based on MAME 0.174.
http://www.libretro.com
comment "LIBRETRO_MAME2016 needs a toolchain w/ C++"
depends on !BR2_INSTALL_LIBSTDCPP
################################################################################
#
# MAME2016
#
################################################################################
LIBRETRO_MAME2016_VERSION = e06d731644217f46bf5a7613222632d41a327f93
LIBRETRO_MAME2016_SITE = $(call github,libretro,mame2016-libretro,$(LIBRETRO_MAME2016_VERSION))
LIBRETRO_MAME2016_LICENSE = MAME
LIBRETRO_MAME2016_OPTS = PTR64=0
# x86_64
ifeq ($(BR2_x86_64),y)
LIBRETRO_MAME2016_OPTS = PTR64=1
endif
LIBRETRO_MAME2016_OPTS += platform="unix"
LIBRETRO_MAME2016_OPTS += LIBRETRO_CPU="$(BR2_ARCH)"
LIBRETRO_MAME2016_OPTS += LIBRETRO_OS="unix"
LIBRETRO_MAME2016_OPTS += CONFIG="libretro"
LIBRETRO_MAME2016_OPTS += OSD="retro"
LIBRETRO_MAME2016_OPTS += ARCHOPTS="$(COMPILER_COMMONS_BOARD_OPTIONS)"
LIBRETRO_MAME2016_OPTS += OPTIMIZE=3
LIBRETRO_MAME2016_OPTS += LTO=1
LIBRETRO_MAME2016_OPTS += NOWERROR=1
LIBRETRO_MAME2016_OPTS += PYTHON_EXECUTABLE=python2
LIBRETRO_MAME2016_OPTS += REGENIE=1
LIBRETRO_MAME2016_OPTS += VERBOSE=1
LIBRETRO_MAME2016_OPTS += SUBTARGET=arcade
define LIBRETRO_MAME2016_BUILD_CMDS
mkdir -p $(@D)/build/gmake/libretro/obj/x64/libretro/src/osd/retro
mkdir -p $(@D)/3rdparty/genie/build/gmake.linux/obj/Release/src/host
$(MAKE) CXX="$(TARGET_CXX)" CC="$(TARGET_CC)" LD="$(TARGET_LD)" RANLIB="$(TARGET_RANLIB)" AR="$(TARGET_CC)-ar" -C $(@D)/ -f makefile $(LIBRETRO_MAME2016_OPTS)
endef
define LIBRETRO_MAME2016_INSTALL_TARGET_CMDS
$(INSTALL) -D $(@D)/mamearcade2016_libretro.so \
$(TARGET_DIR)/usr/lib/libretro/mame2016_libretro.so
mkdir -p $(TARGET_DIR)/recalbox/share_init/bios/mame2016/samples
cp -R $(@D)/metadata/* $(TARGET_DIR)/recalbox/share_init/bios/mame2016
endef
$(eval $(generic-package))
......@@ -6,6 +6,7 @@ config BR2_PACKAGE_RECALBOX_ROMFS_MAME
|| BR2_PACKAGE_ADVANCEMAME \
|| BR2_PACKAGE_LIBRETRO_MAME2010 \
|| BR2_PACKAGE_LIBRETRO_MAME2015 \
|| BR2_PACKAGE_LIBRETRO_MAME2016 \
|| BR2_PACKAGE_LIBRETRO_MAME2003_PLUS
help
share_init/roms and xml for mame
......@@ -5,7 +5,7 @@
################################################################################
# Package generated with :
# ./scripts/linux/empack.py --system mame --extension '.zip .ZIP' --fullname 'Mame' --platform arcade --theme mame libretro:mame2003:BR2_PACKAGE_LIBRETRO_MAME2003 libretro:mame2000:BR2_PACKAGE_LIBRETRO_MAME2000 advancemame:advancemame:BR2_PACKAGE_ADVANCEMAME libretro:mame2010:BR2_PACKAGE_LIBRETRO_MAME2010 libretro:mame2010:BR2_PACKAGE_LIBRETRO_MAME2015 libretro:mame2003_plus:BR2_PACKAGE_LIBRETRO_MAME2003_PLUS
# ./scripts/linux/empack.py --system mame --extension '.zip .ZIP' --fullname 'Mame' --platform arcade --theme mame libretro:mame2003:BR2_PACKAGE_LIBRETRO_MAME2003 libretro:mame2000:BR2_PACKAGE_LIBRETRO_MAME2000 advancemame:advancemame:BR2_PACKAGE_ADVANCEMAME libretro:mame2010:BR2_PACKAGE_LIBRETRO_MAME2010 libretro:mame2010:BR2_PACKAGE_LIBRETRO_MAME2015 libretro:mame2010:BR2_PACKAGE_LIBRETRO_MAME2016 libretro:mame2003_plus:BR2_PACKAGE_LIBRETRO_MAME2003_PLUS
# Name the 3 vars as the package requires
RECALBOX_ROMFS_MAME_SOURCE =
......@@ -21,16 +21,22 @@ SOURCE_ROMDIR_MAME = $(RECALBOX_ROMFS_MAME_PKGDIR)/roms
# variables are global across buildroot
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_ADVANCEMAME)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015)$(BR2_PACKAGE_LIBRETRO_MAME2003_PLUS),)
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_ADVANCEMAME)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015)$(BR2_PACKAGE_LIBRETRO_MAME2016)$(BR2_PACKAGE_LIBRETRO_MAME2003_PLUS),)
define CONFIGURE_MAIN_MAME_START
$(call RECALBOX_ROMFS_CALL_ADD_SYSTEM,$(SYSTEM_XML_MAME),Mame,$(SYSTEM_NAME_MAME),.zip .ZIP,arcade,mame)
endef
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_ADVANCEMAME)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015)$(BR2_PACKAGE_LIBRETRO_MAME2003_PLUS),)
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_ADVANCEMAME)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015)$(BR2_PACKAGE_LIBRETRO_MAME2016)$(BR2_PACKAGE_LIBRETRO_MAME2003_PLUS),)
define CONFIGURE_MAME_LIBRETRO_START
$(call RECALBOX_ROMFS_CALL_START_EMULATOR,$(SYSTEM_XML_MAME),libretro)
endef
ifeq ($(BR2_PACKAGE_LIBRETRO_MAME2016),y)
define CONFIGURE_MAME_LIBRETRO_MAME2016_DEF
$(call RECALBOX_ROMFS_CALL_ADD_CORE,$(SYSTEM_XML_MAME),mame2016)
endef
endif
ifeq ($(BR2_PACKAGE_LIBRETRO_MAME2015),y)
define CONFIGURE_MAME_LIBRETRO_MAME2015_DEF
$(call RECALBOX_ROMFS_CALL_ADD_CORE,$(SYSTEM_XML_MAME),mame2015)
......@@ -87,6 +93,8 @@ endif
define RECALBOX_ROMFS_MAME_CONFIGURE_CMDS
$(CONFIGURE_MAIN_MAME_START)
$(CONFIGURE_MAME_LIBRETRO_START)
$(CONFIGURE_MAME_LIBRETRO_MAME2016_DEF)
$(CONFIGURE_MAME_LIBRETRO_MAME2015_DEF)
$(CONFIGURE_MAME_LIBRETRO_MAME2010_DEF)
$(CONFIGURE_MAME_LIBRETRO_MAME2003_DEF)
$(CONFIGURE_MAME_LIBRETRO_MAME2000_DEF)
......
......@@ -6,6 +6,7 @@ config BR2_PACKAGE_RECALBOX_ROMFS_NEOGEO
|| BR2_PACKAGE_LIBRETRO_FBALPHA \
|| BR2_PACKAGE_PIFBA \
|| BR2_PACKAGE_LIBRETRO_MAME2015 \
|| BR2_PACKAGE_LIBRETRO_MAME2016 \
|| BR2_PACKAGE_LIBRETRO_MAME2010
help
share_init/roms and xml for neogeo
\ No newline at end of file
......@@ -5,7 +5,7 @@
################################################################################
# Package generated with :
# ./scripts/linux/empack.py --system neogeo --extension '.zip .ZIP .7z .7Z' --fullname 'Neo-Geo' --platform neogeo --theme neogeo libretro:mame2003:BR2_PACKAGE_LIBRETRO_MAME2003 libretro:mame2000:BR2_PACKAGE_LIBRETRO_MAME2000 libretro:fbalpha:BR2_PACKAGE_LIBRETRO_FBALPHA fba2x:fba2x:BR2_PACKAGE_PIFBA libretro:mame2010:BR2_PACKAGE_LIBRETRO_MAME2010 libretro:mame2010:BR2_PACKAGE_LIBRETRO_MAME2015
# ./scripts/linux/empack.py --system neogeo --extension '.zip .ZIP .7z .7Z' --fullname 'Neo-Geo' --platform neogeo --theme neogeo libretro:mame2003:BR2_PACKAGE_LIBRETRO_MAME2003 libretro:mame2000:BR2_PACKAGE_LIBRETRO_MAME2000 libretro:fbalpha:BR2_PACKAGE_LIBRETRO_FBALPHA fba2x:fba2x:BR2_PACKAGE_PIFBA libretro:mame2010:BR2_PACKAGE_LIBRETRO_MAME2010 libretro:mame2010:BR2_PACKAGE_LIBRETRO_MAME2015 libretro:mame2010:BR2_PACKAGE_LIBRETRO_MAME2016
# Name the 3 vars as the package requires
RECALBOX_ROMFS_NEOGEO_SOURCE =
......@@ -21,16 +21,22 @@ SOURCE_ROMDIR_NEOGEO = $(RECALBOX_ROMFS_NEOGEO_PKGDIR)/roms
# variables are global across buildroot
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_LIBRETRO_FBALPHA)$(BR2_PACKAGE_PIFBA)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015),)
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_LIBRETRO_FBALPHA)$(BR2_PACKAGE_PIFBA)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015)$(BR2_PACKAGE_LIBRETRO_MAME2016),)
define CONFIGURE_MAIN_NEOGEO_START
$(call RECALBOX_ROMFS_CALL_ADD_SYSTEM,$(SYSTEM_XML_NEOGEO),Neo-Geo,$(SYSTEM_NAME_NEOGEO),.zip .ZIP .7z .7Z,neogeo,neogeo)
endef
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_LIBRETRO_FBALPHA)$(BR2_PACKAGE_PIFBA)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015),)
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_LIBRETRO_FBALPHA)$(BR2_PACKAGE_PIFBA)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015)$(BR2_PACKAGE_LIBRETRO_MAME2016),)
define CONFIGURE_NEOGEO_LIBRETRO_START
$(call RECALBOX_ROMFS_CALL_START_EMULATOR,$(SYSTEM_XML_NEOGEO),libretro)
endef
ifeq ($(BR2_PACKAGE_LIBRETRO_MAME2016),y)
define CONFIGURE_NEOGEO_LIBRETRO_MAME2016_DEF
$(call RECALBOX_ROMFS_CALL_ADD_CORE,$(SYSTEM_XML_NEOGEO),mame2016)
endef
endif
ifeq ($(BR2_PACKAGE_LIBRETRO_MAME2015),y)
define CONFIGURE_NEOGEO_LIBRETRO_MAME2015_DEF
$(call RECALBOX_ROMFS_CALL_ADD_CORE,$(SYSTEM_XML_NEOGEO),mame2015)
......@@ -66,7 +72,7 @@ define CONFIGURE_NEOGEO_LIBRETRO_END
endef
endif
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_LIBRETRO_FBALPHA)$(BR2_PACKAGE_PIFBA)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015),)
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_LIBRETRO_FBALPHA)$(BR2_PACKAGE_PIFBA)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015)$(BR2_PACKAGE_LIBRETRO_MAME2016),)
define CONFIGURE_NEOGEO_FBA2X_START
$(call RECALBOX_ROMFS_CALL_START_EMULATOR,$(SYSTEM_XML_NEOGEO),fba2x)
endef
......@@ -90,6 +96,7 @@ endif
define RECALBOX_ROMFS_NEOGEO_CONFIGURE_CMDS
$(CONFIGURE_MAIN_NEOGEO_START)
$(CONFIGURE_NEOGEO_LIBRETRO_START)
$(CONFIGURE_NEOGEO_LIBRETRO_MAME2016_DEF)
$(CONFIGURE_NEOGEO_LIBRETRO_MAME2015_DEF)
$(CONFIGURE_NEOGEO_LIBRETRO_MAME2010_DEF)
$(CONFIGURE_NEOGEO_LIBRETRO_FBALPHA_DEF)
......
......@@ -295,7 +295,7 @@ ifneq ($(BR2_PACKAGE_LIBRETRO_MINIVMAC),)
endif
# System: mame
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_ADVANCEMAME)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015)$(BR2_PACKAGE_LIBRETRO_MAME2003_PLUS),)
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_ADVANCEMAME)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015)$(BR2_PACKAGE_LIBRETRO_MAME2016)$(BR2_PACKAGE_LIBRETRO_MAME2003_PLUS),)
RECALBOX_ROMFS_DEPENDENCIES += recalbox-romfs-mame
endif
......@@ -340,7 +340,7 @@ ifneq ($(BR2_PACKAGE_LIBRETRO_DESMUME)$(BR2_PACKAGE_LIBRETRO_MELONDS),)
endif
# System: neogeo
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_LIBRETRO_FBALPHA)$(BR2_PACKAGE_PIFBA)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015),)
ifneq ($(BR2_PACKAGE_LIBRETRO_MAME2003)$(BR2_PACKAGE_LIBRETRO_MAME2000)$(BR2_PACKAGE_LIBRETRO_FBALPHA)$(BR2_PACKAGE_PIFBA)$(BR2_PACKAGE_LIBRETRO_MAME2010)$(BR2_PACKAGE_LIBRETRO_MAME2015)$(BR2_PACKAGE_LIBRETRO_MAME2016),)
RECALBOX_ROMFS_DEPENDENCIES += recalbox-romfs-neogeo
endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment