mirror of
https://github.com/gryf/gryf-overlay.git
synced 2026-07-06 18:26:31 +02:00
Compare commits
2 Commits
eef3519b46
...
a3dc0fb6c2
| Author | SHA1 | Date | |
|---|---|---|---|
| a3dc0fb6c2 | |||
| 5af358d194 |
@@ -1,5 +1,4 @@
|
||||
AUX sdlmame.png 15733 BLAKE2B 7a4dea45062338a86a290d8a20b82fb7283e11c93191e0c3d337d08e15cbc383b64363c9ac2520666f3f3ac05249bd0da51f2b0dc3f292c4509d9ed88340ffa8 SHA512 2610fdf6768fab6ca16b7f2bd2b32abf11de4fa57e77c025b0857f213f26ab3b1d6220722f742092d818564b553e8444d0e6a06676b3a16997910113b271a7f5
|
||||
AUX vector.ini 116 BLAKE2B 7dbc58708e0c371c6d8116891a37048d5477b1b92b61c26441f15fff81f8dd01bf8f49cc1bddd256c56ecba592a8dac5fb1674fab5f0adb488410dc6e1d13025 SHA512 6d84eb7b9c4e9f134b57e64ba9ae30dcaaa620296830f7c9858611fde9064f803bd7d230a989a5cce34d8b815b5a98d323b19d3eef3d4c688b5c32b96b299f5f
|
||||
DIST mame-0.260.tar.gz 205251800 BLAKE2B 32c84208f11df3a6eb63460a0cf6e9455e5fba8ce74c59946d2c759c7e762b448722f843e785b872c920f07a62b60ac0a2e8c909c1e3149eb5ea60abc335e07d SHA512 87b9d157d62456d1a3f4b751ff869d8366ea90566304f1e5ce5b1cef60d1879a249b9ca2c281355c8abb6c7e1cdba1f57b3fb7209e3cc2f11adf0c7f6f960b12
|
||||
EBUILD sdlmame-0.260.ebuild 6149 BLAKE2B 3f3ba9ac8da59b9a32a9ae7a1f196fbb189bc43cc1799c47f429832bf115a17508d9a4ab2ddb8a375ce8aacd5713731467e7070a5ffb95d6c301ca016cf3b6c2 SHA512 f711a712ee3a59572b077ca01b954330ee9883c27e3da163424db298b3aa83d3cabf08e4177af5f8af8507904dbacfcc13dae957705a7fcfc4d3946f92834d1d
|
||||
MISC sdlmame-0.284 6253 BLAKE2B 9b42855918c2bb8c12556624668a7ed11f2530dfe351a7b56771b67edfe3f4ee5cd6f853cf6e10fd51b8fb66e3317bf933ec1e7c37d7ef70cc5afbd8fb681504 SHA512 12b848468e24f5f82e7f8066926f732776c210ca67ebbbc4dbc345c56f8e3be9e06d57e263334a2c1cecb1221c6ac2c3c07d93a57d66e95cc10c0758d84e8d83
|
||||
DIST mame-0.288.tar.gz 212563943 BLAKE2B ef7a4d25c5da0a48f155add7d7118bc20fac090dc7a293c70ff781f5f009b2798aaff0782fb2225918aff45a645591835be66291b609c718a530c212c3468e10 SHA512 1241c413eaf7cb1c7336bedfafb8a4b269214e32dba00e9bdf5dc61bb47be3b966f3c656d8efe6b99c2d2ef81e4ae94965d2b59c5d75da1b0d97f36342baec2f
|
||||
EBUILD sdlmame-0.288.ebuild 5460 BLAKE2B 08a363c3eb86340ab1942f57a49c4968f59e1bc395ceb061792bbcbacdce71210e8eb1ae462545840bd5ad43890e981d538b38f634c0f3c07cf104c86785fa17 SHA512 5a87544139fb3b2440b0da7c14368c5c271b3c4602b9e80bc9a2d534d45a589b2b222f1a2932843cbaf0d807c3daf1322af6b11e71ac9bb80d0ef8a8a3aba025
|
||||
|
||||
+53
-76
@@ -1,8 +1,5 @@
|
||||
# Copyright 2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
PYTHON_COMPAT=( python2_7 python3_{10..15} )
|
||||
PYTHON_COMPAT=( python3_{8..15} )
|
||||
inherit desktop python-any-r1 toolchain-funcs qmake-utils xdg-utils
|
||||
|
||||
MY_PV="${PV/.}"
|
||||
@@ -13,41 +10,44 @@ SRC_URI="https://github.com/mamedev/mame/archive/mame${MY_PV}.tar.gz -> mame-${P
|
||||
|
||||
LICENSE="GPL-2+ BSD-2 MIT CC0-1.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="alsa +arcade debug +mess opengl openmp -pulseaudio tools"
|
||||
REQUIRED_USE="|| ( arcade mess )"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="alsa debug opengl openmp tools"
|
||||
|
||||
# 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
|
||||
RDEPEND="dev-db/sqlite:3
|
||||
dev-libs/expat
|
||||
media-libs/fontconfig
|
||||
media-libs/flac
|
||||
media-libs/libsdl2[joystick,opengl?,sound,video,X]
|
||||
media-libs/libpulse
|
||||
media-libs/portaudio
|
||||
media-libs/sdl2-ttf
|
||||
sys-libs/zlib
|
||||
virtual/jpeg:0
|
||||
virtual/opengl
|
||||
alsa? ( media-libs/alsa-lib
|
||||
media-libs/portmidi )
|
||||
pulseaudio? ( media-sound/pulseaudio )
|
||||
debug? ( dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtwidgets:5 )
|
||||
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"
|
||||
x11-libs/libXinerama
|
||||
dev-libs/libutf8proc
|
||||
media-libs/glm
|
||||
dev-libs/rapidjson
|
||||
dev-libs/pugixml"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
x11-base/xorg-proto"
|
||||
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
|
||||
@@ -65,6 +65,10 @@ pkg_setup() {
|
||||
src_prepare() {
|
||||
default
|
||||
# Disable using bundled libraries
|
||||
enable_feature USE_SYSTEM_LIB_UTF8PROC
|
||||
enable_feature USE_SYSTEM_LIB_GLM
|
||||
enable_feature USE_SYSTEM_LIB_RAPIDJSON
|
||||
enable_feature USE_SYSTEM_LIB_PUGIXML
|
||||
enable_feature USE_SYSTEM_LIB_EXPAT
|
||||
enable_feature USE_SYSTEM_LIB_FLAC
|
||||
enable_feature USE_SYSTEM_LIB_JPEG
|
||||
@@ -77,8 +81,7 @@ src_prepare() {
|
||||
# Disable warnings being treated as errors and enable verbose build output
|
||||
enable_feature NOWERROR
|
||||
enable_feature VERBOSE
|
||||
|
||||
! use pulseaudio && enable_feature NO_USE_PULSEAUDIO
|
||||
enable_feature IGNORE_GIT
|
||||
|
||||
use amd64 && enable_feature PTR64
|
||||
use debug && enable_feature DEBUG
|
||||
@@ -93,7 +96,7 @@ src_prepare() {
|
||||
fi
|
||||
|
||||
sed -i \
|
||||
-e 's/-Os//' \
|
||||
-e 's/ -Os//' \
|
||||
-e '/^\(CC\|CXX\|AR\) /s/=/?=/' \
|
||||
3rdparty/genie/build/gmake.linux/genie.make || die
|
||||
}
|
||||
@@ -101,101 +104,76 @@ src_prepare() {
|
||||
src_compile() {
|
||||
local targetargs
|
||||
local qtdebug=$(usex debug 1 0)
|
||||
local ini_path=".;${USER_INI_PATH};${SYS_INI_PATH}"
|
||||
|
||||
use arcade && ! use mess && targetargs="SUBTARGET=arcade"
|
||||
! use arcade && use mess && targetargs="SUBTARGET=mess"
|
||||
# hack to replace shitty lua escape quotation
|
||||
sed -i \
|
||||
-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.*|\1'${ini_path}'"|' \
|
||||
src/osd/sdl3/sdlopts.cpp || die
|
||||
# untill its fixed: https://github.com/mamedev/mame/issues/10927
|
||||
|
||||
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_SELECT=qt5 \
|
||||
QT_HOME="$(qt5_get_libdir)/qt5" \
|
||||
QT_SELECT=qt6 \
|
||||
QT_HOME="$(qt6_get_libdir)/qt6" \
|
||||
ARCH= \
|
||||
emake "$@" \
|
||||
emake ${targetargs} \
|
||||
USE_QTDEBUG=${qtdebug} \
|
||||
AR=$(tc-getAR)
|
||||
}
|
||||
my_emake -j1 generate
|
||||
|
||||
my_emake ${targetargs} \
|
||||
SDL_INI_PATH="\$\$\$\$HOME/.sdlmame;/etc/${PN}" \
|
||||
USE_QTDEBUG=${qtdebug}
|
||||
|
||||
#if use tools ; then
|
||||
# my_emake -j1 TARGET=ldplayer USE_QTDEBUG=${qtdebug}
|
||||
#fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local MAMEBIN
|
||||
local suffix="$(use debug && echo d)"
|
||||
local f
|
||||
|
||||
function mess_install() {
|
||||
dosym ${MAMEBIN} "/usr/bin/mess${suffix}"
|
||||
dosym ${MAMEBIN} "/usr/bin/sdlmess"
|
||||
}
|
||||
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
|
||||
local MAMEBIN=mame
|
||||
dobin ${MAMEBIN}
|
||||
dosym ${MAMEBIN} "/usr/bin/${PN}"
|
||||
doman docs/man/mame.6
|
||||
|
||||
insinto "/usr/share/${PN}"
|
||||
doins -r keymaps $(use mess && echo hash)
|
||||
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
|
||||
@@ -207,14 +185,13 @@ src_install() {
|
||||
fi
|
||||
|
||||
newicon "${FILESDIR}/${PN}.png" "${PN}".png
|
||||
|
||||
}
|
||||
|
||||
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