summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-emulation')
-rw-r--r--games-emulation/xmame/ChangeLog7
-rw-r--r--games-emulation/xmame/files/0.82.1-glx-fix.patch11
-rw-r--r--games-emulation/xmame/files/digest-xmame-0.82.11
-rw-r--r--games-emulation/xmame/xmame-0.82.1.ebuild245
4 files changed, 263 insertions, 1 deletions
diff --git a/games-emulation/xmame/ChangeLog b/games-emulation/xmame/ChangeLog
index c11ffc59bc0e..a3950e168cc3 100644
--- a/games-emulation/xmame/ChangeLog
+++ b/games-emulation/xmame/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for games-emulation/xmame
# Copyright 2002-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-emulation/xmame/ChangeLog,v 1.19 2004/06/06 23:21:50 agriffis Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/xmame/ChangeLog,v 1.20 2004/06/07 03:15:41 mr_bones_ Exp $
+
+*xmame-0.82.1 (06 Jun 2004)
+
+ 06 Jun 2004; Michael Sterrett <mr_bones_@gentoo.org> xmame-0.82.1.ebuild:
+ version bump
06 Jun 2004; Aron Griffis <agriffis@gentoo.org> xmame-0.78.1.ebuild,
xmame-0.79.1.ebuild, xmame-0.80.1.ebuild, xmame-0.81.1.ebuild:
diff --git a/games-emulation/xmame/files/0.82.1-glx-fix.patch b/games-emulation/xmame/files/0.82.1-glx-fix.patch
new file mode 100644
index 000000000000..cbcb32d8a7dc
--- /dev/null
+++ b/games-emulation/xmame/files/0.82.1-glx-fix.patch
@@ -0,0 +1,11 @@
+--- src/unix/osd_cpu.h.orig 2004-04-20 14:30:49.000000000 -0700
++++ src/unix/osd_cpu.h 2004-04-20 14:31:48.000000000 -0700
+@@ -38,7 +38,7 @@
+ #endif
+ #endif
+
+-#ifndef __ARCH_solaris
++#if !defined __ARCH_solaris && !defined xgl
+ /* grrr work around some stupid header conflicts */
+ #if !defined __XF86_DGA_C && !defined __XOPENGL_C_ && !defined LONG64
+ typedef signed char INT8;
diff --git a/games-emulation/xmame/files/digest-xmame-0.82.1 b/games-emulation/xmame/files/digest-xmame-0.82.1
new file mode 100644
index 000000000000..760afea7d115
--- /dev/null
+++ b/games-emulation/xmame/files/digest-xmame-0.82.1
@@ -0,0 +1 @@
+MD5 b0598b587c59a022f22337ced8f6cfd6 xmame-0.82.1.tar.bz2 12833581
diff --git a/games-emulation/xmame/xmame-0.82.1.ebuild b/games-emulation/xmame/xmame-0.82.1.ebuild
new file mode 100644
index 000000000000..1a0830d5f98b
--- /dev/null
+++ b/games-emulation/xmame/xmame-0.82.1.ebuild
@@ -0,0 +1,245 @@
+# Copyright 1999-2004 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/xmame/xmame-0.82.1.ebuild,v 1.1 2004/06/07 03:15:41 mr_bones_ Exp $
+
+inherit flag-o-matic gcc 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="x86 ppc sparc alpha hppa amd64 ia64"
+IUSE="sdl dga xv alsa esd opengl X 3dfx svga ggi arts joystick net"
+
+RDEPEND="sys-libs/zlib
+ sdl? ( >=media-libs/libsdl-1.2.0 )
+ alsa? ( media-libs/alsa-lib )
+ xv? ( virtual/x11 )
+ dga? ( virtual/x11 )
+ X? ( virtual/x11 )
+ esd? ( >=media-sound/esound-0.2.29 )
+ svga? ( media-libs/svgalib )
+ ggi? ( media-libs/libggi )
+ arts? ( kde-base/arts )"
+DEPEND="${RDEPEND}
+ x86? ( dev-lang/nasm )
+ >=sys-apps/sed-4"
+# Icc sucks. bug #41342
+# icc? ( dev-lang/icc )
+
+S="${WORKDIR}/xmame-${PV}"
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ epatch ${FILESDIR}/${PV}-glx-fix.patch
+ sed -i \
+ -e 's:JOY_BUTTONS 16:JOY_BUTTONS 32:' src/unix/devices.h \
+ || die "setting joybuttons failed" #36818
+
+ case "${ARCH}" in
+ x86)
+ sed -i \
+ -e '/X86_ASM_68000 =/s:#::' \
+ -e '/X86_MIPS3_DRC =/s:#::' Makefile \
+ || die "sed Makefile (x86) failed"
+ if use joystick ; then
+ sed -i \
+ -e '/JOY_I386.*=/s:#::' Makefile \
+ || die "sed Makefile (joystick) failed"
+ fi
+ ;;
+ ia64)
+ sed -i \
+ -e '/^MY_CPU/s:i386:ia64:' Makefile \
+ || die "sed Makefile (ia64) failed"
+ if use joystick ; then
+ sed -i \
+ -e '/JOY_I386.*=/s:#::' Makefile \
+ || die "sed Makefile (joystick) failed"
+ fi
+ ;;
+ amd64)
+ sed -i \
+ -e '/^MY_CPU/s:i386:amd64:' Makefile \
+ || die "sed Makefile (amd64) failed"
+ if use joystick ; then
+ sed -i \
+ -e '/JOY_I386.*=/s:#::' Makefile \
+ || die "sed Makefile (joystick) failed"
+ fi
+ ;;
+ ppc|sparc|hppa)
+ sed -i \
+ -e '/^MY_CPU/s:i386:risc:' Makefile \
+ || die "sed Makefile (ppc|sparc|hppa) failed"
+ ;;
+ alpha)
+ sed -i \
+ -e '/^MY_CPU/s:i386:alpha:' Makefile \
+ || die "sed Makefile (alpha) failed"
+ ;;
+ mips)
+ sed -i \
+ -e '/^MY_CPU/s:i386:mips:' Makefile \
+ || die "sed Makefile (mips) failed"
+ ;;
+ esac
+
+ if use net ; then
+ sed -i \
+ -e '/XMAME_NET/s:#::' Makefile \
+ || die "sed Makefile (net) failed"
+ fi
+ if use esd ; then
+ sed -i \
+ -e '/SOUND_ESOUND/s:#::' Makefile \
+ || die "sed Makefile (esd) failed"
+ fi
+ if use alsa ; then
+ sed -i \
+ -e '/SOUND_ALSA/s:#::' Makefile \
+ || die "sed Makefile (alsa) failed"
+ fi
+ if use arts ; then
+ sed -i \
+ -e '/SOUND_ARTS/s:#::' Makefile \
+ || die "sed Makefile (arts) failed"
+ fi
+ if use sdl ; then
+ sed -i \
+ -e '/SOUND_SDL/s:#::' Makefile \
+ || die "sed Makefile (sdl) failed"
+ fi
+ if use dga ; then
+ sed -i \
+ -e '/X11_DGA/s:#::' Makefile \
+ || die "sed Makefile (dga) failed"
+ if use 3dfx ; then
+ sed -i \
+ -e '/TDFX_DGA_WORKAROUND/s:#::' Makefile \
+ || die "sed Makefile (dga) failed"
+ fi
+ fi
+
+ if use xv ; then
+ sed -i \
+ -e '/X11_XV/s:#::' Makefile \
+ || die "sed Makefile (xv) failed"
+ fi
+
+ case ${ARCH} in
+ x86|ia64|amd64) append-flags -Wno-unused -fomit-frame-pointer -fstrict-aliasing -fstrength-reduce -ffast-math
+ [ $(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 "/^PREFIX/s:=.*:=/usr:" \
+ -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 "s:^CFLAGS =:CFLAGS=${CFLAGS}:" Makefile \
+ || die "sed Makefile 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
+ fi
+ if use opengl ; then
+ emake DISPLAY_METHOD=xgl || die "emake failed (xgl)"
+ disp=1
+ fi
+ if [ ${disp} -eq 0 ] || 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:Xmame:${TARGET}:g" \
+ -e "s:xmame:${TARGET}:g" doc/*.6 \
+ || die "sed man pages failed"
+ 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
+ fi
+ if use opengl ; then
+ make DISPLAY_METHOD=xgl install || die "install failed (xgl)"
+ disp=1
+ fi
+ if [ ${disp} -eq 0 ] || use X || use dga || use xv ; then
+ make DISPLAY_METHOD=x11 install || die "install failed (x11)"
+ 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"
+
+ if use opengl ; then
+ dosym "${TARGET}.xgl" "${GAMES_BINDIR}/${TARGET}"
+ elif [ ${disp} -eq 0 ] || use X || use dga || use xv ; then
+ dosym "${TARGET}.x11" "${GAMES_BINDIR}/${TARGET}"
+ elif use sdl ; then
+ dosym "${TARGET}.SDL" "${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 use X || use dga || use xv ; then
+ einfo " ${TARGET}.x11"
+ fi
+ use sdl > /dev/null && einfo " ${TARGET}.SDL"
+ use ggi > /dev/null && einfo " ${TARGET}.ggi"
+ use svga > /dev/null && einfo " ${TARGET}.svgalib"
+ use opengl > /dev/null && einfo " ${TARGET}.xgl"
+}