mirror of
https://github.com/gryf/gryf-overlay.git
synced 2026-06-21 09:25:26 +02:00
games-emulation/sdlmame: cleanup ebuild.
- added symlink for sdlmame - remove qt5 leftovers in favor of qt6, as upstream is using it for debugger - changed config path and make it coherent with SDL osd version - other small adjustments
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
AUX sdlmame.png 15733 BLAKE2B 7a4dea45062338a86a290d8a20b82fb7283e11c93191e0c3d337d08e15cbc383b64363c9ac2520666f3f3ac05249bd0da51f2b0dc3f292c4509d9ed88340ffa8 SHA512 2610fdf6768fab6ca16b7f2bd2b32abf11de4fa57e77c025b0857f213f26ab3b1d6220722f742092d818564b553e8444d0e6a06676b3a16997910113b271a7f5
|
||||
AUX vector.ini 116 BLAKE2B 7dbc58708e0c371c6d8116891a37048d5477b1b92b61c26441f15fff81f8dd01bf8f49cc1bddd256c56ecba592a8dac5fb1674fab5f0adb488410dc6e1d13025 SHA512 6d84eb7b9c4e9f134b57e64ba9ae30dcaaa620296830f7c9858611fde9064f803bd7d230a989a5cce34d8b815b5a98d323b19d3eef3d4c688b5c32b96b299f5f
|
||||
DIST mame-0.288.tar.gz 212563943 BLAKE2B ef7a4d25c5da0a48f155add7d7118bc20fac090dc7a293c70ff781f5f009b2798aaff0782fb2225918aff45a645591835be66291b609c718a530c212c3468e10 SHA512 1241c413eaf7cb1c7336bedfafb8a4b269214e32dba00e9bdf5dc61bb47be3b966f3c656d8efe6b99c2d2ef81e4ae94965d2b59c5d75da1b0d97f36342baec2f
|
||||
EBUILD sdlmame-0.288.ebuild 5430 BLAKE2B da5909e35ecb872a04a0f3e6451a18791cca232fe70ed279d8cad94d68fa3b65655ae9d52370b1d4730924c9b35d7124c5db2ac87bc40951947eb5002785966d SHA512 727ab38d6d7a571f822b29b4b5c7985b05a9c0049f9655c0fe5d368f89def18379861b41d1805200279b63657e3de40693fbd9096c4e30fe015930f2f0a8f52b
|
||||
EBUILD sdlmame-0.288.ebuild 5464 BLAKE2B 06334be7d688bce3fded8509de9244900501de1b87474a95737cba1bc8d818273704a8a38ba7b3d05848bce4ff6eccdbcd56d40445551f0992e19d3ecef1d3e8 SHA512 f6c853187733c1547fa500d5b892f56a03cc5c737f2d460b1b7bc62422efa82fef4f85f1f098ceadbaa4340b5fd7fee896b75ed64f3aeb2aa8dd6bf6e81d7986
|
||||
|
||||
@@ -24,11 +24,15 @@ RDEPEND="dev-db/sqlite:3
|
||||
sys-libs/zlib
|
||||
virtual/jpeg:0
|
||||
virtual/opengl
|
||||
alsa? ( media-libs/alsa-lib
|
||||
media-libs/portmidi )
|
||||
debug? ( dev-qt/qtcore:6
|
||||
dev-qt/qtgui:6
|
||||
dev-qt/qtwidgets:6 )
|
||||
alsa? (
|
||||
media-libs/alsa-lib
|
||||
media-libs/portmidi
|
||||
)
|
||||
debug? (
|
||||
dev-qt/qtcore:6
|
||||
dev-qt/qtgui:6
|
||||
dev-qt/qtwidgets:6
|
||||
)
|
||||
x11-libs/libX11
|
||||
x11-libs/libXinerama
|
||||
dev-libs/libutf8proc
|
||||
@@ -41,6 +45,9 @@ DEPEND="${RDEPEND}
|
||||
BDEPEND="${PYTHON_DEPS}"
|
||||
S="${WORKDIR}/mame-mame${MY_PV}"
|
||||
|
||||
USER_INI_PATH="\$HOME/.config/${PN}"
|
||||
SYS_INI_PATH="/etc/${PN}"
|
||||
|
||||
# Function to disable a makefile option
|
||||
disable_feature() {
|
||||
sed -i -e "/^[ ]*$1.*=/s:^:# :" makefile || die
|
||||
@@ -97,14 +104,15 @@ src_prepare() {
|
||||
src_compile() {
|
||||
local targetargs
|
||||
local qtdebug=$(usex debug 1 0)
|
||||
local ini_path=".;${USER_INI_PATH};${SYS_INI_PATH}"
|
||||
|
||||
# hack to replace shitty lua escape quotation
|
||||
sed -i \
|
||||
-e 's+#define INI_PATH "$HOME/.APP_NAME;.;ini"+#define INI_PATH "$HOME/.config/sdlmame;/etc/sdlmame"+' \
|
||||
-e 's|\(#define INI_PATH\) "$HOME/.APP_NAME.*|\1 "'${ini_path}'"|' \
|
||||
src/osd/sdl/sdlopts.cpp || die
|
||||
# and for futureproof:
|
||||
sed -i \
|
||||
-e 's+#define INI_PATH "$HOME/.APP_NAME;.;ini"+#define INI_PATH "$HOME/.config/sdlmame;/etc/sdlmame"+' \
|
||||
-e 's|\(#define INI_PATH\) "$HOME/.APP_NAME.*|\1 "'${ini_path}'"|' \
|
||||
src/osd/sdl3/sdlopts.cpp || die
|
||||
# untill its fixed: https://github.com/mamedev/mame/issues/10927
|
||||
|
||||
@@ -114,8 +122,8 @@ src_compile() {
|
||||
OVERRIDE_CC=$(tc-getCC) \
|
||||
OVERRIDE_CXX=$(tc-getCXX) \
|
||||
OVERRIDE_LD=$(tc-getCXX) \
|
||||
QT_SELECT=qt5 \
|
||||
QT_HOME="$(qt5_get_libdir)/qt5" \
|
||||
QT_SELECT=qt6 \
|
||||
QT_HOME="$(qt6_get_libdir)/qt6" \
|
||||
ARCH= \
|
||||
emake ${targetargs} \
|
||||
USE_QTDEBUG=${qtdebug} \
|
||||
@@ -124,51 +132,48 @@ src_compile() {
|
||||
|
||||
src_install() {
|
||||
local MAMEBIN=mame
|
||||
dobin $MAMEBIN
|
||||
dobin ${MAMEBIN}
|
||||
dosym ${MAMEBIN} "/usr/bin/${PN}"
|
||||
doman docs/man/mame.6
|
||||
|
||||
insinto "/usr/share/${PN}"
|
||||
doins -r keymaps 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;/usr/share/${PN}/\2:" \
|
||||
-e "s:\(${f}path\)[ \t]*\(.*\):\1 \t\t${USER_INI_PATH}/\2;/usr/share/${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;/etc/${PN}/\2;/usr/share/${PN}/\2:" \
|
||||
-e "s:\(${f}path\)[ \t]*\(.*\):\1 \t\t${USER_INI_PATH}/\2;${SYS_INI_PATH}/\2;/usr/share/${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:" \
|
||||
-e "s:\(${f}_directory\)[ \t]*\(.*\):\1 \t\t${USER_INI_PATH}/\2:" \
|
||||
"${T}/mame.ini" || die
|
||||
done
|
||||
# -- Keymaps --
|
||||
sed -i \
|
||||
-e "s:\(keymap_file\)[ \t]*\(.*\):\1 \t\t\$HOME/.${PN}/\2:" \
|
||||
-e "s:\(keymap_file\)[ \t]*\(.*\):\1 \t\t${USER_INI_PATH}/\2:" \
|
||||
"${T}/mame.ini" || die
|
||||
for f in keymaps/km*.map ; do
|
||||
sed -i \
|
||||
-e "/^keymap_file/a \#keymap_file \t\t/usr/share/${PN}/keymaps/${f##*/}" \
|
||||
"${T}/mame.ini" || die
|
||||
done
|
||||
insinto "/etc/${PN}"
|
||||
doins "${T}/mame.ini"
|
||||
|
||||
insinto "/etc/${PN}"
|
||||
doins "${FILESDIR}/vector.ini"
|
||||
insinto ${SYS_INI_PATH}
|
||||
doins "${T}/mame.ini" "${FILESDIR}/vector.ini"
|
||||
|
||||
#dodoc docs/{config,mame,newvideo}.txt
|
||||
keepdir \
|
||||
"/usr/share/${PN}"/{ctrlr,cheat,roms,samples,artwork,crosshair} \
|
||||
"/etc/${PN}"/{ctrlr,cheat}
|
||||
"${SYS_INI_PATH}"/{ctrlr,cheat}
|
||||
|
||||
if use tools ; then
|
||||
for f in castool chdman floptool imgtool jedutil ldresample ldverify romcmp ; do
|
||||
@@ -186,7 +191,7 @@ pkg_postinst() {
|
||||
xdg_desktop_database_update
|
||||
|
||||
elog "It is strongly recommended to change either the system-wide"
|
||||
elog " /etc/${PN}/mame.ini or use a per-user setup at ~/.${PN}/mame.ini"
|
||||
elog " ${SYS_INI_PATH}/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"
|
||||
|
||||
Reference in New Issue
Block a user