MAME: initial recipe (#3882)

* MAME: initial recipe

* Cleanup, fixes
This commit is contained in:
miqlas
2019-05-31 21:57:18 +02:00
committed by GitHub
parent 784c6db9d8
commit d8fbde7649
2 changed files with 1138 additions and 0 deletions

View File

@@ -0,0 +1,127 @@
SUMMARY="A a multi-purpose emulation framework"
DESCRIPTION="MAME\'s purpose is to preserve decades of software history. As \
electronic technology continues to rush forward, MAME prevents this important \
\"vintage\" software from being lost and forgotten. This is achieved by \
documenting the hardware and how it functions. The source code to MAME \
serves as this documentation. The fact that the software is usable serves \
primarily to validate the accuracy of the documentation (how else can you \
prove that you have recreated the hardware faithfully?). Over time, MAME \
(originally stood for Multiple Arcade Machine Emulator) absorbed the \
sister-project MESS (Multi Emulator Super System), so MAME now documents a \
wide variety of (mostly vintage) computers, video game consoles and \
calculators, in addition to the arcade video games that were its initial focus."
HOMEPAGE="https://www.mamedev.org/"
COPYRIGHT="1997-2019 MAMEDev and contributors"
LICENSE="GNU GPL v2"
REVISION="1"
srcGitRev="dcf6e1c61be02811aa2205c46a2e006331b3f14d"
SOURCE_URI="https://github.com/mamedev/mame/archive/$srcGitRev.zip"
CHECKSUM_SHA256="9681d79dae311cdab3de91bc21a030cc030511d96fb643aacd4ad404e42896ce"
SOURCE_FILENAME="mame-$srcGitRev.zip"
SOURCE_DIR="mame-$srcGitRev"
PATCHES="mame-$portVersion.patchset"
ARCHITECTURES="!x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86"
bits=64
commandBinDir=$binDir
commandSuffix=$secondaryArchSuffix
if [ "$targetArchitecture" = x86_gcc2 ]
then
bits=32
commandBinDir=$prefix/bin
commandSuffix=
fi
PROVIDES="
mame$secondaryArchSuffix = $portVersion
cmd:castool$commandSuffix
cmd:chdman$commandSuffix
cmd:floptool$commandSuffix
cmd:imgtool$commandSuffix
cmd:jedutil$commandSuffix
cmd:ldresample$commandSuffix
cmd:ldverify$commandSuffix
cmd:mame$commandSuffix
cmd:mame$bits$commandSuffix
cmd:nltool$commandSuffix
cmd:nlwav$commandSuffix
cmd:pngcmp$commandSuffix
cmd:regrep$commandSuffix
cmd:romcmp$commandSuffix
cmd:split$commandSuffix
cmd:src2html$commandSuffix
cmd:srcclean$commandSuffix
cmd:testkeys$commandSuffix
cmd:unidasm$commandSuffix
"
REQUIRES="
haiku$secondaryArchSuffix
# glm$secondaryArchSuffix
# lib:libexpat$secondaryArchSuffix
# lib:libflac$secondaryArchSuffix
lib:libfontconfig$secondaryArchSuffix
lib:libfreetype$secondaryArchSuffix
lib:libGL$secondaryArchSuffix
# lib:libjpeg$secondaryArchSuffix
# lib:liblua$secondaryArchSuffix
lib:libpugixml$secondaryArchSuffix
lib:libSDL2_2.0$secondaryArchSuffix
lib:libSDL2_ttf$secondaryArchSuffix
# lib:libsqlite3$secondaryArchSuffix
# lib:libutf8proc$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
# glm${secondaryArchSuffix}_devel
# devel:libexpat$secondaryArchSuffix
# devel:libflac$secondaryArchSuffix
devel:libfontconfig$secondaryArchSuffix
devel:libfreetype$secondaryArchSuffix
devel:libGL$secondaryArchSuffix
# devel:libjpeg$secondaryArchSuffix
# devel:liblua$secondaryArchSuffix
devel:libpugixml$secondaryArchSuffix
# devel:librapidjson$secondaryArchSuffix
devel:libSDL2_2.0$secondaryArchSuffix
devel:libSDL2_ttf$secondaryArchSuffix
# devel:libsqlite3$secondaryArchSuffix
# devel:libutf8proc$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:libtoolize
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:python2
"
BUILD()
{
LIBS="-lbsd -lnetwork -lpugixml" \
LDFLAGS="-lbsd -lnetwork -lpugixml" \
make \
REGENIE=1 \
TOOLS=1 \
OPTIMIZE=3 \
PRECOMPILE=0 \
$jobArgs
}
INSTALL()
{
mkdir -p $commandBinDir
for f in castool chdman floptool imgtool jedutil ldresample ldverify \
mame$bits nltool nlwav pngcmp regrep romcmp split src2html srcclean \
testkeys unidasm; do
install -m 755 -t "$commandBinDir" $f
done
ln -s "$commandBinDir/mame$bits" "$commandBinDir/mame"
}

File diff suppressed because it is too large Load Diff