Portage is a package management system used by Gentoo Linux
# ChangeLog for games-emulation/xmame
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/games-emulation/xmame/ChangeLog,v 1.71 2007/03/12 14:05:45 genone Exp $
12 Mar 2007; Marius Mauch
Replacing einfo with elog
07 Mar 2007; Chris Gianelloni
Change all instances of [ to [[.
01 Dec 2006; Chris Gianelloni
Removing old virtual/x11 dependency.
08 Jun 2006; Chris Gianelloni
Stable on amd64.
*xmame-0.106 (01 Jun 2006)
01 Jun 2006; Michael Sterrett
version bump
*xmame-0.105 (17 Apr 2006)
17 Apr 2006; Michael Sterrett
version bump
26 Mar 2006; Michael Sterrett
check for existence of utilities before installing them (bug #127601)
24 Mar 2006; Chris Gianelloni
-xmame-0.103.ebuild:
Clean up older ebuilds and port 0.83.1 to modular X.
23 Mar 2006; Michael Sterrett
sync with xmess ebuild
*xmame-0.104 (22 Feb 2006)
22 Feb 2006; Michael Sterrett
version bump
29 Jan 2006; Michael Sterrett
-files/xmame-0.99-mcr3.patch, -files/xmame-0.101-keyboard.patch,
-xmame-0.99-r1.ebuild, -xmame-0.100.ebuild, -xmame-0.101.ebuild,
-xmame-0.102.ebuild:
clean old ebuilds/patches
29 Jan 2006; Michael Sterrett
modular X deps from xmess
25 Jan 2006; Michael Sterrett
remove more hard-coded CFLAGS (bug #119953)
*xmame-0.103 (18 Jan 2006)
18 Jan 2006; Michael Sterrett
version bump
*xmame-0.102 (27 Nov 2005)
27 Nov 2005; Michael Sterrett
version bump
20 Nov 2005; Mike Frysinger
Add support for USE=xinerama #113029 by Avuton Olrich.
28 Oct 2005; Michael Sterrett
+files/xmess-0.101-keyboard.patch, xmess-0.101.ebuild:
Add upstream patch to fix possible keyboard handling issues (bug #110671)
*xmame-0.101 (23 Oct 2005)
23 Oct 2005; Michael Sterrett
version bump
*xmame-0.100 (25 Sep 2005)
25 Sep 2005; Michael Sterrett
version bump
10 Sep 2005; Aron Griffis
Mark 0.99-r1 stable on alpha
02 Sep 2005; Gustavo Zacarias
Stable on sparc
25 Aug 2005; Aron Griffis
stable on ia64
*xmame-0.99-r1 (18 Aug 2005)
18 Aug 2005; Mike Frysinger
+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)
16 Aug 2005; Michael Sterrett
version bump
05 Aug 2005; Michael Sterrett
xmame-0.97.ebuild:
Turn on xinput support if use X and use joystick (bug #101286) with patch
from Erik Hovland; clean old version
*xmame-0.97 (15 Jun 2005)
15 Jun 2005; Michael Sterrett
version bump
30 May 2005; Sven Wegener
Moved from gcc.eclass to toolchain-funcs.eclass, bug #92745.
27 May 2005; Joseph Jezak
Marked ppc stable.
17 May 2005; Michael Sterrett
stable for x86
12 May 2005; Michael Sterrett
LICENSE change (bug #92336)
*xmame-0.96 (12 May 2005)
12 May 2005; Michael Sterrett
version bump
01 Apr 2005; Michael Sterrett
add lirc support (bug #87501); tidy
*xmame-0.95 (30 Mar 2005)
30 Mar 2005; Michael Sterrett
-files/0.82.1-glx-fix.patch, -xmame-0.82.1.ebuild, -xmame-0.90.ebuild,
-xmame-0.92.ebuild, +xmame-0.95.ebuild:
version bump; clean older ebuilds
*xmame-0.94 (16 Mar 2005)
16 Mar 2005; Michael Sterrett
version bump
*xmame-0.92 (25 Feb 2005)
25 Feb 2005; Michael Sterrett
version bump
12 Feb 2005; Michael Sterrett
Don't try to install setuid (bug #81693)
12 Feb 2005; Michael Sterrett
-xmame-0.88.ebuild, -xmame-0.89.ebuild:
clean old versions
*xmame-0.90 (24 Jan 2005)
24 Jan 2005; Michael Sterrett
version bump (bug #78633); removed hard-coded CFLAGS (bug #79008)
*xmame-0.89 (06 Dec 2004)
06 Dec 2004; Michael Sterrett
version bump
30 Nov 2004; Sven Wegener
Added missing ? after USE flag in dependency.
17 Nov 2004; Michael Sterrett
still disable ggi (bug #71574)
*xmame-0.88 (16 Nov 2004)
16 Nov 2004; Michael Sterrett
version bump
02 Sep 2004; Michael Sterrett
Install chdman and xml2info in GAMES_LIBDIR
02 Sep 2004; Michael Sterrett
turn on joystick support always for libsdl; should fix bug #62620
(Works around a bug in the 0.86 release)
*xmame-0.86 (30 Aug 2004)
30 Aug 2004; Mike Frysinger
+xmame-0.86.ebuild:
Version bump #61778.
15 Aug 2004; Michael Hanselmann
Fixed a link-error on PowerPC. Bug #49261. Thanks to Dustin Byford
18 Jun 2004; Michael Sterrett
amd64 compile fix for bug #54270 - thanks to Andrew Williams
*xmame-0.83.1 (15 Jun 2004)
15 Jun 2004; Michael Sterrett
files/0.83.1-glx-fix.patch:
version bump (bug #53789)
*xmame-0.82.1 (06 Jun 2004)
06 Jun 2004; Michael Sterrett
version bump
06 Jun 2004; Aron Griffis
xmame-0.79.1.ebuild, xmame-0.80.1.ebuild, xmame-0.81.1.ebuild:
Fix use invocation
20 Apr 2004; Michael Sterrett
files/0.81.1-glx-fix.patch:
update glx-fix.patch for 0.81.1 (bug #48470)
*xmame-0.81.1 (19 Apr 2004)
19 Apr 2004; Michael Sterrett
version bump
*xmame-0.80.1 (19 Mar 2004)
19 Mar 2004; David Holm
files/0.80.1-glx-fix.patch, files/0.80.1-make.patch:
Version bump, including patch to enable building using multiple jobs.
22 Feb 2004; David Holm
files/0.79.1-glx-fix.patch:
Added some bugfixes from bug #42268. Added to ~x86, ~amd64 and ~ia64.
*xmame-0.79.1 (21 Feb 2004)
21 Feb 2004; David Holm
Version bump. Tested on big-endian.
15 Feb 2004; David Holm
files/0.78.1-big_endian.patch:
Added big-endian fix from Maciej J. Woloszyk, closing bug #40327.
*xmame-0.78.1 (14 Jan 2004)
14 Jan 2004; Mike Frysinger
Version bump #38177 by Starz McCllelan.
*xmame-0.77.1 (30 Nov 2003)
31 Dec 2003; Mike Frysinger
Add patch to fix icc compilation #35607.
Increase number of available joybuttons from 16 to 32 #36818.
Add a local USE flag, net, to control network support #34802.
12 Dec 2003; Mike Frysinger
Add patch to work with alsa-1.0.0 #35108.
30 Nov 2003; Mike Frysinger
Version bump #33889.
*xmame-0.76.1 (25 Oct 2003)
13 Nov 2003; Michael Sterrett
xmame Makefiles don't like parallel make. use -j1 to compile.
03 Nov 2003; Michael Sterrett
replace the arch if/then thing with a case statement; added support for ia64
and amd64 for bug 32628
31 Oct 2003; Michael Sterrett
add icc USE support (bug 31769); DEPEND on sed >= 4 for -i; add more error
checking and error messages
25 Oct 2003; Mike Frysinger
Version bump #Bug 31992.
*xmame-0.74.1-r1 (22 Sep 2003)
22 Sep 2003; Mike Frysinger
Make sure the controllers are installed #29297.
*xmame-0.74.1 (18 Sep 2003)
18 Sep 2003; Mike Frysinger
Version bump #28878.
*xmame-0.72.1 (17 Aug 2003)
17 Aug 2003; Mike Frysinger
Version bump #26763 + remove mips patch.
*xmame-0.71.1 (16 Aug 2003)
16 Aug 2003; Mike Frysinger
Version bump #24986 + mips patch.
*xmame-0.70.1 (11 Jul 2003)
15 Jul 2003; Mike Frysinger
Add glx patch #24383.
11 Jul 2003; Mike Frysinger
Version bump + major rehaul of code. Thanks to Caleb Shay
his ideas/submissions.
*xmame-0.69.1 (05 Jun 2003)
05 Jun 2003; Daniel Ahlberg
Version bump.
*xmame-0.67.2 (28 Apr 2003)
28 Apr 2003; Mike Frysinger
Version bump.
*xmame-0.62.2-r1 (28 Apr 2003)
29 Jun 2003; Daniel Ahlberg
Added missing changelog entry.
*xmame-0.62.2 (13 Jan 2003)
13 Jan 2003; Ryan Phillips
Submitted by Caleb Shay
*xmame-0.62.1_rc2 (27 Dec 2002)
27 Dec 2002; Ryan Phillips
version bump. Submitted by Kfir Ozer. Fixes #11927
*xmame-0.61.1_pre1 (31 Oct 2002)
31 Oct 2002; Ryan Phillips
Version bump.. Submitted by Caleb Shay. Fixes #8904
*xmame-0.60.1-r4 (17 Aug 2002)
14 Aug 2002; Ryan Phillips
thanks to Caleb Shay. Fixes #8904
*xmame-0.60.1-r3 (7 Aug 2002)
7 Aug 2002; Ryan Phillips
Included sed for use var 'opengl'
*xmame-0.60.1-r2 (13 June 2002)
23 Jul 2002; Ryan Phillips
on x86 platforms -O3 doesn't compile. I included a sed statement
to replace -O3 with -O2.
15 Jul 2002; Owen Stampflee
Added KEYWORDS.
13 June 2002; David Chamberlain
This ebuild provides ppc fixes to makefile
*xmame-0.60.1-r1 (7 Jun 2002)
7 Jun 2002; J. Perrot
Check the presence of "dga" in the USE variable and do the
appropriate sed substitution
*xmame-0.60.1 (27 May 2002)
27 May 2002; Ryan Phillips
Updated version and fixes to the xmame symlink. #2958
*xmame-0.59.1 (28 Mar 2002)
28 Mar 2002; Geert Bevin
files/digest-xmame-0.59.1 :
Version upgrade
*xmame-0.56.1 (3 Feb 2002)
3 Feb 2002; T.Neidt
Moved to app-emulation/xmame with the other emulators (Bug 421)
*xmame-0.55.2 (3 Feb 2002)
3 Feb 2002; T.Neidt
Moved to app-emulation/xmame with the other emulators (Bug 421)
*xmame-0.56.1 (1 Feb 2002)
1 Feb 2002; G.Bevin
Added initial ChangeLog which should be updated whenever the package is
updated in any way. This changelog is targetted to users. This means that the
comments should well explained and written in clean English. The details about
writing correct changelogs are explained in the skel.ChangeLog file which you
can find in the root directory of the portage repository.
DIST xmame-0.106.tar.bz2 17117298 RMD160 eab4fa232d59fce5b2216f942f8bc58a992f8d26 SHA1 7ae50f869067e101e053ca18e6f788297fcad9e2 SHA256 a385d86adebc2eb53b560bb522cf569569a74c4104605a8e7d61f1caa0f5e4df
EBUILD xmame-0.106.ebuild 6365 RMD160 6d39ad8e5b91d5449e14b1435e3352051395a910 SHA1 79d29d4b6343b7ebb90ffd8d4eb4b16e37160a67 SHA256 d11ecf63739878b657a2de49e8eee7ce3dfa9983e92685c4fb3aa2250744d62a
MISC ChangeLog 12449 RMD160 11666f29d7c706d462bf0d0c9f06135f53ff129f SHA1 24c5e5be16fba1e8dad415cbb89ee080bb305d52 SHA256 300f7ce98580191d675d9af74ed0bb0070be20e5032f56c512a5c64989381d39
MISC metadata.xml 1476 RMD160 ee26a7d2e020d9563ddce46e51225ea26ae3804c SHA1 36d2fedb93c2c14b4a499c76fba334532fb3df44 SHA256 1fec45ce8166093b45d576c8d0da5db826f6bb09202fbd11e63151121236465a
Mame is an arcade machine emulator. Started in 1997 by Nicola Salmoria, mame started out as a
series of emulators for individual games. This series of emulators was combined into a simgle
multi-game emulator. This is the current form of mame; no longer a one-man show, there are over 100
contributors to the project.
Mame was created by Nicola Salmoria.
Mess is just like mame---a virtual machine emulator, only it doesn't emulate arcade machines but
rather computers and consoles.
Xmame/xmess are the Unix/X11 ports of the mame and mess projects. It makes mame/mess available on
*ix machines using the X11R6 X-Window System (and SVGAlib/ggi/XF86-DGA/OpenGL/SDL too).
Mame was orginally ported by Allard Van Der Bas, Dick the Ridder, Juan Antonio Martinez, and Hans
de Goede.
Xmame/xmess is currently maintained by Lawrence Gold.
Xmame/xmess is based on the mame/mess source code. Due to technical reasons beyond the scope of
this document, the mame/mess source may not compile under Unix. That's why the xmame/xmess project
exists. Each time mame/mess is updated, the code is tested (and patched if needed) under Unix. This
way xmame/xmess releases are always the same as their mame counterparts.
There are no plans for the independent development of xmame/xmess.
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/games-emulation/xmame/xmame-0.106.ebuild,v 1.8 2008/02/28 19:05:57 mr_bones_ 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 xinerama xv"
RDEPEND="sys-libs/zlib
alsa? ( media-libs/alsa-lib )
arts? ( kde-base/arts )
dga? (
x11-libs/libXxf86dga
x11-libs/libXxf86vm )
esd? ( >=media-sound/esound-0.2.29 )
expat? ( dev-libs/expat )
ggi? ( media-libs/libggi )
lirc? ( app-misc/lirc )
opengl? (
virtual/opengl
virtual/glu )
sdl? ( >=media-libs/libsdl-1.2.0 )
svga? ( media-libs/svgalib )
xinerama? ( x11-libs/libXinerama )
xv? ( x11-libs/libXv )
X? ( x11-libs/libXext )"
DEPEND="${RDEPEND}
dga? (
x11-proto/xf86dgaproto
x11-proto/xf86vidmodeproto )
xinerama? ( x11-proto/xineramaproto )
xv? ( x11-proto/videoproto )
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}"
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 "/^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" \
-e 's/,-s//' \
-e "/\bCFLAGS +=/d" \
Makefile \
|| die "sed Makefile failed"
if use ppc ; then
sed -i \
-e '/LD.*--relax/s:^# ::' Makefile \
|| die "sed Makefile (ppc/LD) failed"
fi
if use mmx ; then
cat >> src/unix/effect_asm.asm <
section .note.GNU-stack noalloc noexec nowrite progbits
%endif
EOF
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
# if we don't have expat on the system, use the internal one
toggle_feature !expat BUILD_EXPAT
toggle_feature opengl X11_OPENGL
toggle_feature lirc LIRC
toggle_feature xinerama X11_XINERAMA
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) -ge 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 f utils="chdman imgtool dat2html romcmp xml2info"
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_get_libdir)/${PN}"
for f in $utils
do
if [[ -f "${D}${GAMES_BINDIR}"/$f ]] ; then
doexe $f || die "doexe failed"
rm -f "${D}${GAMES_BINDIR}"/$f 2> /dev/null
fi
done
insinto "${GAMES_DATADIR}/${PN}"
doins -r ctrlr || die "doins 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
elog "Your available MAME binaries are: ${TARGET}"
if useq opengl || useq X || useq dga || useq xv ; then
elog " ${TARGET}.x11"
fi
useq sdl && elog " ${TARGET}.SDL"
#useq ggi && elog " ${TARGET}.ggi"
useq svga && elog " ${TARGET}.svgalib"
elog "Helper utilities are located in $(games_get_libdir)/${PN}."
}