summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2005-08-18 22:48:57 +0000
committerMike Frysinger <vapier@gentoo.org>2005-08-18 22:48:57 +0000
commitda7a9a37a800499edcf19910568aaaa6919510a3 (patch)
tree3a0d1763449a7cb7500ab43ef6b106acb2896223 /games-emulation
parentold (diff)
downloadhistorical-da7a9a37a800499edcf19910568aaaa6919510a3.tar.gz
historical-da7a9a37a800499edcf19910568aaaa6919510a3.tar.bz2
historical-da7a9a37a800499edcf19910568aaaa6919510a3.zip
Add patch from upstream to fix a coredump in some games #102987 by Avuton Olrich.
Package-Manager: portage-2.0.51.22-r2
Diffstat (limited to 'games-emulation')
-rw-r--r--games-emulation/xmame/ChangeLog11
-rw-r--r--games-emulation/xmame/Manifest19
-rw-r--r--games-emulation/xmame/files/digest-xmame-0.99-r11
-rw-r--r--games-emulation/xmame/files/xmame-0.99-mcr3.patch15
-rw-r--r--games-emulation/xmame/xmame-0.99-r1.ebuild215
5 files changed, 255 insertions, 6 deletions
diff --git a/games-emulation/xmame/ChangeLog b/games-emulation/xmame/ChangeLog
index 4c3016b36055..88928d037dc5 100644
--- a/games-emulation/xmame/ChangeLog
+++ b/games-emulation/xmame/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for games-emulation/xmame
-# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-emulation/xmame/ChangeLog,v 1.47 2005/08/16 21:54:53 mr_bones_ Exp $
+# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/xmame/ChangeLog,v 1.48 2005/08/18 22:48:57 vapier Exp $
+
+*xmame-0.99-r1 (18 Aug 2005)
+
+ 18 Aug 2005; Mike Frysinger <vapier@gentoo.org>
+ +files/xmame-0.99-mcr3.patch, +xmame-0.99-r1.ebuild:
+ Add patch from upstream to fix a coredump in some games #102987 by Avuton
+ Olrich.
*xmame-0.99 (16 Aug 2005)
diff --git a/games-emulation/xmame/Manifest b/games-emulation/xmame/Manifest
index a5e3a2b9d933..b8c0d6d67244 100644
--- a/games-emulation/xmame/Manifest
+++ b/games-emulation/xmame/Manifest
@@ -1,9 +1,20 @@
-MD5 e44da7fe9271f2f2e299cc34df120830 metadata.xml 1537
-MD5 9df5a6361c30f9aa5b35318f242f43dd xmame-0.99.ebuild 5743
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
MD5 bdab5c404861382db38cea41f7bd559c xmame-0.97.ebuild 5743
+MD5 e44da7fe9271f2f2e299cc34df120830 metadata.xml 1537
MD5 d3bb7f074f158a0d42e852eba6a50458 xmame-0.83.1.ebuild 6788
-MD5 ecdd1c8758d45f10639110c92c593c01 ChangeLog 9499
+MD5 52651251b98567adb069adcb63c01538 ChangeLog 9718
+MD5 2ded01c16b712ef73363c9c5bf8dc76f xmame-0.99-r1.ebuild 5790
MD5 240bd404f0deb6cd68bf6a98a5fb76db files/0.83.1-glx-fix.patch 386
-MD5 7ce8d08fd7cafebd74de85322bf9c478 files/digest-xmame-0.99 65
+MD5 7ce8d08fd7cafebd74de85322bf9c478 files/digest-xmame-0.99-r1 65
MD5 b7b222bea49106d5f4f8e945a2a1bae2 files/digest-xmame-0.97 65
MD5 bd94e56aecab93b1d9e02b6fb3d8a0e9 files/digest-xmame-0.83.1 67
+MD5 2dd9cfc7467cb3d1e313af9f7ce19aba files/xmame-0.99-mcr3.patch 324
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.2 (GNU/Linux)
+
+iD8DBQFDBRBygIKl8Uu19MoRAop4AJ9MVUdnoYDgqLeWaWLRc6PFci+uWwCeOH8U
+4gZajFOEM64HgrmF/5ECnhs=
+=17SU
+-----END PGP SIGNATURE-----
diff --git a/games-emulation/xmame/files/digest-xmame-0.99-r1 b/games-emulation/xmame/files/digest-xmame-0.99-r1
new file mode 100644
index 000000000000..58abc8ac837f
--- /dev/null
+++ b/games-emulation/xmame/files/digest-xmame-0.99-r1
@@ -0,0 +1 @@
+MD5 dec9cc95fb6fad7708f2d1c8e80166ae xmame-0.99.tar.bz2 15782826
diff --git a/games-emulation/xmame/files/xmame-0.99-mcr3.patch b/games-emulation/xmame/files/xmame-0.99-mcr3.patch
new file mode 100644
index 000000000000..8f4104a8d7ba
--- /dev/null
+++ b/games-emulation/xmame/files/xmame-0.99-mcr3.patch
@@ -0,0 +1,15 @@
+Fix core-dump with some games
+
+http://bugs.gentoo.org/102987
+http://thread.gmane.org/gmane.comp.emulators.xmame.devel/5314
+
+--- xmame-0.99/src/drivers/mcr3.c
++++ xmame-0.99/src/drivers/mcr3.c
+@@ -1083,6 +1083,7 @@
+
+ /* video hardware */
+ MDRV_VIDEO_START(mcrmono)
++ MDRV_VIDEO_UPDATE(mcr3)
+ MACHINE_DRIVER_END
+
+
diff --git a/games-emulation/xmame/xmame-0.99-r1.ebuild b/games-emulation/xmame/xmame-0.99-r1.ebuild
new file mode 100644
index 000000000000..a70691d8d96f
--- /dev/null
+++ b/games-emulation/xmame/xmame-0.99-r1.ebuild
@@ -0,0 +1,215 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/xmame/xmame-0.99-r1.ebuild,v 1.1 2005/08/18 22:48:57 vapier Exp $
+
+inherit flag-o-matic toolchain-funcs eutils games
+
+TARGET="${PN}"
+
+DESCRIPTION="Multiple Arcade Machine Emulator for X11"
+HOMEPAGE="http://x.mame.net/"
+SRC_URI="http://x.mame.net/download/xmame-${PV}.tar.bz2"
+
+LICENSE="XMAME"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ppc ~sparc x86"
+IUSE="alsa arts dga esd expat ggi joystick lirc mmx net opengl sdl svga X xv"
+
+RDEPEND="sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ arts? ( kde-base/arts )
+ dga? ( virtual/x11 )
+ esd? ( >=media-sound/esound-0.2.29 )
+ expat? ( dev-libs/expat )
+ ggi? ( media-libs/libggi )
+ lirc? ( app-misc/lirc )
+ opengl? (
+ virtual/x11
+ virtual/opengl
+ virtual/glu )
+ sdl? ( >=media-libs/libsdl-1.2.0 )
+ svga? ( media-libs/svgalib )
+ X? ( virtual/x11 )
+ xv? ( virtual/x11 )"
+DEPEND="${RDEPEND}
+ x86? ( dev-lang/nasm )"
+# Icc sucks. bug #41342
+# icc? ( dev-lang/icc )
+
+S=${WORKDIR}/xmame-${PV}
+
+toggle_feature() {
+ if use $1 ; then
+ sed -i \
+ -e "/$2.*=/s:#::" Makefile \
+ || die "sed Makefile ($1 / $2) failed"
+ fi
+}
+
+toggle_feature2() {
+ use $1 && toggle_feature $2 $3
+}
+
+src_unpack() {
+ local mycpu=
+
+ unpack ${A}
+ cd "${S}"
+
+ epatch "${FILESDIR}"/${P}-mcr3.patch #102987
+
+ case ${ARCH} in
+ x86) mycpu="i386";;
+ ia64) mycpu="ia64";;
+ amd64) mycpu="amd64";;
+ ppc) mycpu="risc";;
+ sparc) mycpu="risc";;
+ hppa) mycpu="risc";;
+ alpha) mycpu="alpha";;
+ mips) mycpu="mips";;
+ esac
+
+ sed -i \
+ -e '/^BUILD_EXPAT/s/^/#/' \
+ -e "/^PREFIX/s:=.*:=/usr:" \
+ -e "/^MY_CPU/s:i386:${mycpu}:" \
+ -e "/^BINDIR/s:=.*:=${GAMES_BINDIR}:" \
+ -e "/^MANDIR/s:=.*:=/usr/share/man/man6:" \
+ -e "/^XMAMEROOT/s:=.*:=${GAMES_DATADIR}/${TARGET}:" \
+ -e "/^TARGET/s:mame:${TARGET:1}:" \
+ -e "/^CFLAGS =/d" \
+ Makefile \
+ || die "sed Makefile failed"
+
+ if use ppc ; then
+ sed -i \
+ -e '/LD.*--relax/s:^# ::' Makefile \
+ || die "sed Makefile (ppc/LD) failed"
+ fi
+
+
+ toggle_feature x86 X86_MIPS3_DRC
+ toggle_feature2 x86 mmx EFFECT_MMX_ASM
+ toggle_feature joystick JOY_STANDARD
+ toggle_feature2 joystick X XINPUT_DEVICES
+ use net && ewarn "Network support is currently (${PV}) broken :("
+ #toggle_feature net XMAME_NET # Broken
+ toggle_feature esd SOUND_ESOUND
+ toggle_feature alsa SOUND_ALSA
+ toggle_feature arts SOUND_ARTS
+ toggle_feature dga X11_DGA
+ toggle_feature xv X11_XV
+ toggle_feature expat BUILD_EXPAT
+ toggle_feature opengl X11_OPENGL
+ toggle_feature lirc LIRC
+
+ case ${ARCH} in
+ x86|ia64|amd64)
+ append-flags -Wno-unused -fomit-frame-pointer -fstrict-aliasing -fstrength-reduce
+ use amd64 || append-flags -ffast-math #54270
+ [[ $(gcc-major-version) -eq 3 ]] \
+ && append-flags -falign-functions=2 -falign-jumps=2 -falign-loops=2 \
+ || append-flags -malign-functions=2 -malign-jumps=2 -malign-loops=2
+ ;;
+ ppc)
+ append-flags -Wno-unused -funroll-loops -fstrength-reduce -fomit-frame-pointer -ffast-math -fsigned-char
+ ;;
+ hppa)
+ append-flags -ffunction-sections
+ ;;
+ esac
+
+ sed -i \
+ -e "s:[Xx]mame:${TARGET}:g" \
+ doc/*.6 \
+ || die "sed man pages failed"
+ # no, we don't want to install setuid (bug #81693)
+ sed -i \
+ -e 's/^doinstallsuid/notforus/' \
+ -e 's/doinstallsuid/doinstall/' \
+ -e '/^QUIET/s:^:#:' src/unix/unix.mak \
+ || die "sed src/unix/unix.mak failed"
+}
+
+src_compile() {
+ local disp=0
+ if use sdl ; then
+ emake DISPLAY_METHOD=SDL || die "emake failed (SDL)"
+ disp=1
+ fi
+ if use svga ; then
+ emake DISPLAY_METHOD=svgalib || die "emake failed (svgalib)"
+ disp=1
+ fi
+ if use ggi ; then
+ #emake DISPLAY_METHOD=ggi || die "emake failed (ggi)"
+ #disp=1
+ ewarn "GGI support is currently (${PV}) broken :("
+ fi
+ if [ ${disp} -eq 0 ] || use opengl || use X || use dga || use xv ; then
+ emake DISPLAY_METHOD=x11 || die "emake failed (x11)"
+ fi
+}
+
+src_install() {
+ local disp=0
+
+ sed -i \
+ -e "s:^PREFIX.*:PREFIX=${D}/usr:" \
+ -e "s:^BINDIR.*:BINDIR=${D}/${GAMES_BINDIR}:" \
+ -e "s:^MANDIR.*:MANDIR=${D}/usr/share/man/man6:" \
+ -e "s:^XMAMEROOT.*:XMAMEROOT=${D}/${GAMES_DATADIR}/${TARGET}:" \
+ Makefile \
+ || die "sed Makefile failed"
+
+ if use sdl ; then
+ make DISPLAY_METHOD=SDL install || die "install failed (sdl)"
+ disp=1
+ fi
+ if use svga ; then
+ make DISPLAY_METHOD=svgalib install || die "install failed (svga)"
+ disp=1
+ fi
+ if use ggi ; then
+ #make DISPLAY_METHOD=ggi install || die "install failed (ggi)"
+ #disp=1
+ ewarn "GGI support is currently (${PV}) broken :("
+ fi
+ if [ ${disp} -eq 0 ] || use opengl || use X || use dga || use xv ; then
+ make DISPLAY_METHOD=x11 install || die "install failed (x11)"
+ fi
+ exeinto "${GAMES_LIBDIR}/${PN}"
+ doexe chdman || die "doexe failed"
+ if [[ ${PN} == "xmame" ]] ; then
+ doexe xml2info || die "doexe failed"
+ fi
+
+ dodir "${GAMES_DATADIR}/${PN}"
+ cp -r ctrlr "${D}/${GAMES_DATADIR}/${PN}/" || die "cp failed"
+ dodoc doc/{changes.*,*.txt,mame/*,${TARGET}rc.dist} README todo \
+ || die "dodoc failed"
+ dohtml -r doc/* || die "dohtml failed"
+
+ # default to sdl since the client is a bit more featureful
+ if use sdl ; then
+ dosym "${TARGET}.SDL" "${GAMES_BINDIR}/${TARGET}"
+ elif [ ${disp} -eq 0 ] || use opengl || use X || use dga || use xv ; then
+ dosym "${TARGET}.x11" "${GAMES_BINDIR}/${TARGET}"
+ elif use svga ; then
+ dosym ${TARGET}.svgalib "${GAMES_BINDIR}/${TARGET}"
+ #elif use ggi ; then
+ #dosym ${TARGET}.ggi "${GAMES_BINDIR}/${TARGET}"
+ fi
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ einfo "Your available MAME binaries are: ${TARGET}"
+ if useq opengl || useq X || useq dga || useq xv ; then
+ einfo " ${TARGET}.x11"
+ fi
+ useq sdl && einfo " ${TARGET}.SDL"
+ #useq ggi && einfo " ${TARGET}.ggi"
+ useq svga && einfo " ${TARGET}.svgalib"
+}