1
0
mirror of https://github.com/gryf/gryf-overlay.git synced 2025-12-27 08:52:29 +01:00

sdlmame version bump

This commit is contained in:
2018-04-30 12:44:45 +02:00
parent c6bbecd22f
commit f444afa130
2 changed files with 237 additions and 0 deletions

View File

@@ -1 +1,8 @@
AUX sdlmame-0.174-cxx14.patch 812 BLAKE2B 5c306e1f2d4f4a433bfb5e8efbef1bdfc7615cc3c58e52d2de5c0ee24718d5a0dc333daeb81634aca4e1f9e036cefc7f2a66697b293f7d7c8b0f662f0e64d4a3 SHA512 988eec1f288e2b82ce9aea863c2cf7368fc598ce6c3ccada1c50c0f05f0600d84d4bd0891a5ccd256810c2f0c4206ea0c4b37ad2de1193605de6b682a2afcbe5
AUX sdlmame-0.174-qt.patch 829 BLAKE2B be945301fb35135f12bcd63eafaa72cc3b4d52f735097d59e62f59de61aba24d673c9214ac80af41c325ba346e249d18625d6a40ff7896bd3fe5048544d1d69e SHA512 68ce8a500acfda83152bdb6a2dd798ca29099c3671864f4a30557b3b878b2d4b71c6bbff18291a8e0a43a5a736ec0f0952385b5867bf7d6129ce154537aabd96
AUX vector.ini 116 BLAKE2B 7dbc58708e0c371c6d8116891a37048d5477b1b92b61c26441f15fff81f8dd01bf8f49cc1bddd256c56ecba592a8dac5fb1674fab5f0adb488410dc6e1d13025 SHA512 6d84eb7b9c4e9f134b57e64ba9ae30dcaaa620296830f7c9858611fde9064f803bd7d230a989a5cce34d8b815b5a98d323b19d3eef3d4c688b5c32b96b299f5f
DIST mame-0.174.zip 95944685 BLAKE2B e97027edf7be293e599499bd428c663c1fc13498e2fe10ee356aa56ef8ba85d6ea003ba65a8cbc41d1159246eed354585fc18bf9507b47dc1774b87f5737b48d SHA512 9db4d98fb5f5373529808f3bc41fddefa65ebbf7c26d946ebf886cab25e5abf7c4d539d96dfd6af5e62f4366b2bb0b0b59d40fe7a722698f3707eb8ea4c12a0b
DIST mame-0.197.zip 118072715 BLAKE2B 28384d9f2b8df380eb8d910391b07322f4f6746746dc58c0703d9b7a6783b745dc3f1389ef1d5b281d438af783901c39f768af682297fe2399dce6d5d6d8dbb6 SHA512 4149a5f3180e32218285dcb5feee1e4bbf01aa9d8f440a0c079febbf2e2978f2c7bff00bda2293ae0f171289c4ee407c71cf3cf5d2bd386736bc4f5f31e28b0c
EBUILD sdlmame-0.174.ebuild 6334 BLAKE2B 4f9d9dca92e57a723bc1744d2977ee4562fd7b2c16aac9a9ebfa1b257c82537d1cd53d3e3fad4485f4294241f8a92cfb3b1038095d698baecc665c7f6d11da0d SHA512 e9b8a1e8e96f89470e456581e0d7a2cd4d51928ea6a333f1883e8cdf380d84d747a8b4f247d31339337f3f0fbf492e3b140517735b34f96c85d2066d0dfe727c
EBUILD sdlmame-0.197.ebuild 6125 BLAKE2B 7646bfab77971eb52190fb325a1a1caa8b868a810ed620cd2e18b38598bbd7305954524da406ad3f26e4efadfe3d968341ea0910b03986e5681662fde16b8d76 SHA512 ba15bb019be7e1a2ee51c4b2b93e83eef76296d0b0e6f96a4eebcc68e101c078c4998e1dbee8e575f22c88bab1f1e12dff0ca4592aa895138cc8632640a790f1
MISC metadata.xml 1574 BLAKE2B 2d3e905abf49766f07570dcf385cd2001e7de8af5eaedca80a700208108c3eb7d59dd6a497469513e23f3734f8a7b64ad54f191847cc2fc8e3aed4752b5cf65f SHA512 390af6a62a54f4b49a669cc29a247fed9edc4c8ed6ddb973799ca4071e33c37a7f3eb6b64c6fbfb3e69266cd26da3c77762a37e2975724806b4352fa8ba124b5

View File

@@ -0,0 +1,230 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
PYTHON_COMPAT=( python2_7 )
inherit eutils python-any-r1 toolchain-funcs qmake-utils games
MY_PV="${PV/.}"
DESCRIPTION="Multiple Arcade Machine Emulator + Multi Emulator Super System (MESS)"
HOMEPAGE="http://mamedev.org/"
SRC_URI="https://github.com/mamedev/mame/releases/download/mame${MY_PV}/mame${MY_PV}s.zip -> mame-${PV}.zip"
LICENSE="GPL-2+ BSD-2 MIT CC0-1.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="alsa +arcade +mess opengl openmp tools"
REQUIRED_USE="|| ( arcade mess )"
# MESS (games-emulation/sdlmess) has been merged into MAME upstream since mame-0.162 (see below)
# MAME/MESS build combined (default) +arcade +mess (mame)
# MAME build only +arcade -mess (mamearcade)
# MESS build only -arcade +mess (mess)
# games-emulation/sdlmametools is dropped and enabled instead by the 'tools' useflag
RDEPEND="!games-emulation/sdlmametools
!games-emulation/sdlmess
dev-db/sqlite:3
dev-libs/expat
media-libs/fontconfig
media-libs/flac
media-libs/libsdl2[joystick,opengl?,sound,video,X]
media-libs/portaudio
media-libs/sdl2-ttf
sys-libs/zlib
virtual/jpeg:0
virtual/opengl
alsa? ( media-libs/alsa-lib
media-libs/portmidi )
x11-libs/libX11
x11-libs/libXinerama
${PYTHON_DEPS}"
DEPEND="${RDEPEND}
${PYTHON_DEPS}
app-arch/unzip
virtual/pkgconfig
x11-proto/xineramaproto"
S=${WORKDIR}
# Function to disable a makefile option
disable_feature() {
sed -i -e "/^[ ]*$1.*=/s:^:# :" makefile || die
}
# Function to enable a makefile option
enable_feature() {
sed -i -e "/^#.*$1.*=/s:^#[ ]*::" makefile || die
}
pkg_setup() {
games_pkg_setup
python-any-r1_pkg_setup
}
src_unpack() {
default
unzip ./mame.zip 2>&1 >/dev/null
rm -f mame.zip || die
}
src_prepare() {
#epatch \
# "${FILESDIR}"/${P}-cxx14.patch
# Disable using bundled libraries
enable_feature USE_SYSTEM_LIB_EXPAT
enable_feature USE_SYSTEM_LIB_FLAC
enable_feature USE_SYSTEM_LIB_JPEG
# Use bundled lua for now to ensure correct compilation (ref. b.g.o #407091)
# enable_feature USE_SYSTEM_LIB_LUA
enable_feature USE_SYSTEM_LIB_PORTAUDIO
enable_feature USE_SYSTEM_LIB_SQLITE3
enable_feature USE_SYSTEM_LIB_ZLIB
# Disable warnings being treated as errors and enable verbose build output
enable_feature NOWERROR
enable_feature VERBOSE
use amd64 && enable_feature PTR64
use tools && enable_feature TOOLS
disable_feature NO_X11 # bgfx needs X
use openmp && enable_feature OPENMP
if use alsa ; then
enable_feature USE_SYSTEM_LIB_PORTMIDI
else
enable_feature NO_USE_MIDI
fi
sed -i \
-e 's/-Os//' \
-e '/^\(CC\|CXX\|AR\) /s/=/?=/' \
3rdparty/genie/build/gmake.linux/genie.make || die
}
src_compile() {
local targetargs
use arcade && ! use mess && targetargs="SUBTARGET=arcade"
! use arcade && use mess && targetargs="SUBTARGET=mess"
function my_emake() {
# Workaround conflicting $ARCH variable used by both Gentoo's
# portage and by Mame's build scripts
PYTHON_EXECUTABLE=${PYTHON} \
OVERRIDE_CC=$(tc-getCC) \
OVERRIDE_CXX=$(tc-getCXX) \
OVERRIDE_LD=$(tc-getCXX) \
QT_HOME="$(qt5_get_libdir)/qt5" \
ARCH= \
emake "$@" \
AR=$(tc-getAR)
}
my_emake -j1 generate
my_emake ${targetargs} \
SDL_INI_PATH="\$\$\$\$HOME/.sdlmame;${GAMES_SYSCONFDIR}/${PN}" \
if use tools ; then
my_emake -j1 TARGET=ldplayer
fi
}
src_install() {
local MAMEBIN
local suffix="$(use amd64 && echo 64)"
local f
function mess_install() {
dosym ${MAMEBIN} "${GAMES_BINDIR}"/mess${suffix}
dosym ${MAMEBIN} "${GAMES_BINDIR}"/sdlmess
newman docs/man/mess.6 sdlmess.6
doman docs/man/mess.6
}
if use arcade ; then
if use mess ; then
MAMEBIN="mame${suffix}"
mess_install
else
MAMEBIN="mamearcade${suffix}"
fi
doman docs/man/mame.6
newman docs/man/mame.6 ${PN}.6
elif use mess ; then
MAMEBIN="mess${suffix}"
mess_install
fi
dogamesbin ${MAMEBIN}
dosym ${MAMEBIN} "${GAMES_BINDIR}/${PN}"
insinto "${GAMES_DATADIR}/${PN}"
doins -r keymaps $(use mess && echo hash)
# Create default mame.ini and inject Gentoo settings into it
# Note that '~' does not work and '$HOME' must be used
./${MAMEBIN} -noreadconfig -showconfig > "${T}/mame.ini" || die
# -- Paths --
for f in {rom,hash,sample,art,font,crosshair} ; do
sed -i \
-e "s:\(${f}path\)[ \t]*\(.*\):\1 \t\t\$HOME/.${PN}/\2;${GAMES_DATADIR}/${PN}/\2:" \
"${T}/mame.ini" || die
done
for f in {ctrlr,cheat} ; do
sed -i \
-e "s:\(${f}path\)[ \t]*\(.*\):\1 \t\t\$HOME/.${PN}/\2;${GAMES_SYSCONFDIR}/${PN}/\2;${GAMES_DATADIR}/${PN}/\2:" \
"${T}/mame.ini" || die
done
# -- Directories
for f in {cfg,nvram,memcard,input,state,snapshot,diff,comment} ; do
sed -i \
-e "s:\(${f}_directory\)[ \t]*\(.*\):\1 \t\t\$HOME/.${PN}/\2:" \
"${T}/mame.ini" || die
done
# -- Keymaps --
sed -i \
-e "s:\(keymap_file\)[ \t]*\(.*\):\1 \t\t\$HOME/.${PN}/\2:" \
"${T}/mame.ini" || die
for f in keymaps/km*.map ; do
sed -i \
-e "/^keymap_file/a \#keymap_file \t\t${GAMES_DATADIR}/${PN}/keymaps/${f##*/}" \
"${T}/mame.ini" || die
done
insinto "${GAMES_SYSCONFDIR}/${PN}"
doins "${T}/mame.ini"
insinto "${GAMES_SYSCONFDIR}/${PN}"
doins "${FILESDIR}/vector.ini"
cd docs
make html
cd ..
dodoc -r docs/build/html/*
keepdir \
"${GAMES_DATADIR}/${PN}"/{ctrlr,cheat,roms,samples,artwork,crosshair} \
"${GAMES_SYSCONFDIR}/${PN}"/{ctrlr,cheat}
if use tools ; then
for f in castool chdman floptool imgtool jedutil ldresample ldverify romcmp ; do
newgamesbin ${f} ${PN}-${f}
newman docs/man/${f}.1 ${PN}-${f}.1
done
newgamesbin ldplayer${suffix} ${PN}-ldplayer
newman docs/man/ldplayer.1 ${PN}-ldplayer.1
fi
prepgamesdirs
}
pkg_postinst() {
games_pkg_postinst
elog "It is strongly recommended to change either the system-wide"
elog " ${GAMES_SYSCONFDIR}/${PN}/mame.ini or use a per-user setup at ~/.${PN}/mame.ini"
elog
if use opengl ; then
elog "You built ${PN} with opengl support and should set"
elog "\"video\" to \"opengl\" in mame.ini to take advantage of that"
elog
elog "For more info see http://wiki.mamedev.org"
fi
}