void-packages/srcpkgs/mame/template

103 lines
2.6 KiB
Bash

# Template file for 'mame'
pkgname=mame
version=0182
revision=1
wrksrc="mame-mame${version}"
homepage="http://mamedev.org"
distfiles="https://github.com/mamedev/mame/archive/mame${version}.tar.gz"
short_desc="The Multiple Arcade Machine Emulator"
maintainer="Jürgen Buchmüller <pullmoll@t-online.de>"
license="GPL-2"
checksum=9ecb35afaa6006ccf027f4dfc91ac818d3a894e6e4c3732b6f3706ee40ed240b
hostmakedepends="perl pkg-config python automoc4"
makedepends="libstdc++-devel SDL2_ttf-devel $(vopt_if qt qt5-devel) lua-devel
libjpeg-turbo-devel libflac-devel libuv-devel sqlite-devel portaudio-devel portmidi-devel"
depends="liberation-fonts-ttf"
nocross=yes
replaces="sdlmame>=0 sdlmess>=0"
case "$XBPS_TARGET_MACHINE" in
i686*) nodebug=yes
esac
CXXFLAGS="-std=c++14 -I${XBPS_CROSS_BASE}/usr/include/lua5.3"
LDFLAGS="-Wl,-fuse-ld=gold"
build_options="qt"
if [ -z "$CROSS_BUILD" ]; then
build_options_default="qt"
fi
do_build() {
local opts="REGENIE=1"
opts+=" NOWERROR=1"
opts+=" TOOLS=1"
opts+=" VERBOSE=1"
opts+=" OPTIMIZE=3"
opts+=" USE_SYSTEM_LIB_EXPAT=1"
opts+=" USE_SYSTEM_LIB_ZLIB=1"
opts+=" USE_SYSTEM_LIB_JPEG=1"
opts+=" USE_SYSTEM_LIB_FLAC=1"
opts+=" USE_SYSTEM_LIB_LUA=1"
opts+=" USE_SYSTEM_LIB_SQLITE3=1"
opts+=" USE_SYSTEM_LIB_PORTMIDI=1"
opts+=" USE_SYSTEM_LIB_PORTAUDIO=1"
opts+=" USE_SYSTEM_LIB_UV=1"
opts+=" USE_SYSTEM_LIB_SDL2=1"
if [ "$build_option_qt" ]; then
opts+=" USE_QTDEBUG=1"
fi
if [ "${CROSS_BUILD}" ]; then
# Doesn't work yet
opts+=" CROSS_BUILD=1 OVERRIDE_CC=${CC} OVERRIDE_CXX=${CXX} OVERRIDE_LD=${CC}"
fi
case "$XBPS_TARGET_MACHINE" in
i686*) # Build mamearcade and mess separately to
# overcome linker memory exhaustion
opts+=" SYMBOLS=0"
make ${opts} ${makejobs}
;;
*) # Build all in one mame[64]
make ${opts} ${makejobs}
;;
esac
}
do_install() {
local f
# Install the mame script
vbin ${FILESDIR}/${pkgname}.sh ${pkgname}
# Install the main application(s)
for f in mame mame64 mamearcade mamearcade64; do
if [ -r ${f} ]; then
vinstall ${f} 755 usr/share/${pkgname} mame
fi
done
for f in mess mess64; do
if [ -r ${f} ]; then
vinstall ${f} 755 usr/share/${pkgname} mess
fi
done
# Install the tools
for f in chdman jedutil regrep pngcmp romcmp src2html srcclean \
ldverify ldresample unidasm castool floptool imgtool; do
vinstall ${f} 755 usr/share/${pkgname}
if [ -f docs/man/${f}.1 ]; then
vman docs/man/${f}.1
fi
done
for f in mame mess; do
if [ -r docs/man/${f}.6 ]; then
vman docs/man/${f}.6
fi
done
# Install the extra bits
for f in artwork bgfx docs hash hlsl keymaps plugins samples; do
vcopy ${f} usr/share/${pkgname}
done
}