summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Volkov <pva@gentoo.org>2006-07-17 11:07:09 +0000
committerPeter Volkov <pva@gentoo.org>2006-07-17 11:07:09 +0000
commit5c152024b1b50efccf0060726a7550ee00b616f9 (patch)
tree6dd55afde2a12d97e81a655eae3a5ec04b78cf5e /app-emulation
parentInitial import, Tor controller for KDE. (diff)
downloadgentoo-2-5c152024b1b50efccf0060726a7550ee00b616f9.tar.gz
gentoo-2-5c152024b1b50efccf0060726a7550ee00b616f9.tar.bz2
gentoo-2-5c152024b1b50efccf0060726a7550ee00b616f9.zip
Fix for crash that was reproducable on amd64 with newer versions of gcc. Thank Ben Hodgetts for report (bug 140460) and Richard Drummond for the fix.
(Portage version: 2.1-r1)
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/e-uae/ChangeLog9
-rw-r--r--app-emulation/e-uae/e-uae-0.8.28-r2.ebuild128
-rw-r--r--app-emulation/e-uae/files/digest-e-uae-0.8.28-r23
-rw-r--r--app-emulation/e-uae/files/e-uae-0.8.28-gtkui_64bit_fix.diff12
4 files changed, 151 insertions, 1 deletions
diff --git a/app-emulation/e-uae/ChangeLog b/app-emulation/e-uae/ChangeLog
index db40c4c99437..417a79cbc7bc 100644
--- a/app-emulation/e-uae/ChangeLog
+++ b/app-emulation/e-uae/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for app-emulation/e-uae
# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/e-uae/ChangeLog,v 1.12 2006/07/11 17:52:12 pva Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/e-uae/ChangeLog,v 1.13 2006/07/17 11:07:09 pva Exp $
+
+*e-uae-0.8.28-r2 (17 Jul 2006)
+
+ 17 Jul 2006; Peter Volkov <pva@gentoo.org>
+ +files/e-uae-0.8.28-gtkui_64bit_fix.diff, +e-uae-0.8.28-r2.ebuild:
+ Fix for crash that was reproducable on amd64 with newer versions of gcc. Thank
+ Ben Hodgetts for report (bug 140460) and Richard Drummond for the fix.
11 Jul 2006; Peter Volkov <pva@gentoo.org> e-uae-0.8.28-r1.ebuild:
einfo replaced with elog. Additional elogs added to clearly state video output.
diff --git a/app-emulation/e-uae/e-uae-0.8.28-r2.ebuild b/app-emulation/e-uae/e-uae-0.8.28-r2.ebuild
new file mode 100644
index 000000000000..02574b85f138
--- /dev/null
+++ b/app-emulation/e-uae/e-uae-0.8.28-r2.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/e-uae/e-uae-0.8.28-r2.ebuild,v 1.1 2006/07/17 11:07:09 pva Exp $
+
+inherit eutils flag-o-matic
+
+DESCRIPTION="The Ubiquitous Amiga Emulator with an emulation core largely based on WinUAE"
+HOMEPAGE="http://www.rcdrummond.net/uae/"
+SRC_URI="http://www.rcdrummond.net/uae/${P}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="X dga ncurses sdl gtk alsa oss sdl-sound capslib"
+
+# Note: opposed to ./configure --help zlib support required! Check
+# src/Makefile.am that includes zfile.c unconditionaly.
+RDEPEND="X? ( || ( ( x11-libs/libXt
+ x11-libs/libxkbfile
+ x11-libs/libXext
+ dga? ( x11-libs/libXxf86dga
+ x11-libs/libXxf86vm )
+ )
+ virtual/x11
+ )
+ )
+ !X? ( sdl? ( media-libs/libsdl )
+ !sdl? ( sys-libs/ncurses ) )
+ alsa? ( media-libs/alsa-lib )
+ !alsa? ( sdl-sound? ( media-libs/sdl-sound ) )
+ gtk? ( >=x11-libs/gtk+-2.0 )
+ capslib? ( games-emulation/caps )
+ sys-libs/zlib
+ app-cdr/cdrtools"
+
+DEPEND="$RDEPEND
+ X? ( dga? ( x11-proto/xf86vidmodeproto
+ x11-proto/xf86dgaproto ) )"
+
+pkg_setup() {
+ # Sound setup.
+ if use alsa; then
+ elog "Choosing alsa as sound target to use."
+ myconf="--with-alsa --without-sdl-sound"
+ elif use sdl-sound ; then
+ if ! use sdl ; then
+ ewarn "sdl-sound is not enabled because sdl is switched off. Leaving"
+ ewarn "sound on oss autodetection."
+ myconf="--without-alsa --without-sdl-sound"
+ ebeep
+ else
+ elog "Choosing sdl-sound as sound target to use."
+ myconf="--without-alsa --with-sdl-sound"
+ fi
+ elif use oss ; then
+ elog "Choosing oss as sound target to use."
+ ewarn "oss will be autodetected. See output of configure."
+ myconf="--without-alsa --without-sdl-sound"
+ else
+ ewarn "There is no alsa, sdl-sound or oss in USE. Sound target disabled!"
+ myconf="--disable-audio"
+ fi
+
+ # VIDEO setup. X is autodetected (there is no --with-X option).
+ if use X ; then
+ elog "Using X11 for video output."
+ myconf="$myconf --without-curses --without-sdl-gfx"
+ use dga && myconf="$myconf --enable-dga --enable-vidmode"
+ elif use sdl ; then
+ elog "Using sdl for video output."
+ myconf="$myconf --with-sdl --with-sdl-gfx --without-curses"
+ elif use ncurses; then
+ elog "Using ncurses for video output."
+ myconf="$myconf --with-curses --without-sdl-gfx"
+ else
+ ewarn "There is no X or sdl or ncurses in USE!"
+ ewarn "Following upstream falling back on ncurses."
+ myconf="$myconf --with-curses --without-sdl-gfx"
+ ebeep
+ fi
+
+ use gtk && myconf="$myconf --enable-ui --enable-threads"
+ use gtk || myconf="$myconf --disable-ui"
+
+ use capslib && myconf="$myconf --with-caps"
+
+ myconf="$myconf --with-zlib"
+
+ # And explicitly state defaults:
+ myconf="$myconf --enable-aga"
+ myconf="$myconf --enable-autoconfig --enable-scsi-device --enable-cdtv --enable-cd32"
+ myconf="$myconf --enable-bsdsock"
+}
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+
+ epatch ${FILESDIR}/${P}-shm-crash.patch
+ epatch ${FILESDIR}/${P}-fix-joystick-conflicts.patch
+ epatch ${FILESDIR}/${P}-fix-atoscroll-screen-support.patch
+ epatch ${FILESDIR}/${P}-fix-JIT-cache-on-NX-cpu.patch
+ epatch ${FILESDIR}/${P}-gtkui_64bit_fix.diff
+}
+
+src_compile() {
+ strip-flags
+
+ econf ${myconf} \
+ --with-libscg-includedir=/usr/include/scsilib \
+ || die "./configure failed"
+
+ emake -j1 || die "emake failed"
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die "make install failed"
+
+ insinto /usr/share/uae/amiga-tools
+ doins amiga/{*hack,trans*,uae*,*.library}
+
+ # Rename it to e-uae
+ mv ${D}/usr/bin/uae ${D}/usr/bin/e-uae
+ mv ${D}/usr/bin/readdisk ${D}/usr/bin/e-readdisk
+ mv ${D}/usr/share/uae ${D}/usr/share/${PN}
+
+ dodoc docs/* README ChangeLog CHANGES
+}
diff --git a/app-emulation/e-uae/files/digest-e-uae-0.8.28-r2 b/app-emulation/e-uae/files/digest-e-uae-0.8.28-r2
new file mode 100644
index 000000000000..f73743e1c92c
--- /dev/null
+++ b/app-emulation/e-uae/files/digest-e-uae-0.8.28-r2
@@ -0,0 +1,3 @@
+MD5 9fc186f9256d04f940304044e29175ef e-uae-0.8.28.tar.bz2 1148790
+RMD160 7e9fa21fa14b0ca3a32a28ccb236b9d7628a7f69 e-uae-0.8.28.tar.bz2 1148790
+SHA256 afc8b30fb9aa0819a4e53b3eb0db8e658e5a2b23d7dbf436f6b5a49b2269da86 e-uae-0.8.28.tar.bz2 1148790
diff --git a/app-emulation/e-uae/files/e-uae-0.8.28-gtkui_64bit_fix.diff b/app-emulation/e-uae/files/e-uae-0.8.28-gtkui_64bit_fix.diff
new file mode 100644
index 000000000000..1a7f53ad5bda
--- /dev/null
+++ b/app-emulation/e-uae/files/e-uae-0.8.28-gtkui_64bit_fix.diff
@@ -0,0 +1,12 @@
+diff -Naru e-uae-0.8.28.orig/src/gui-gtk/util.h e-uae-0.8.28/src/gui-gtk/util.h
+--- e-uae-0.8.28.orig/src/gui-gtk/util.h 2005-08-30 18:00:57.000000000 +0400
++++ e-uae-0.8.28/src/gui-gtk/util.h 2006-07-17 14:31:59.000000000 +0400
+@@ -34,7 +34,7 @@
+ extern void add_table_padding (GtkWidget *table, int x, int y);
+ extern void add_to_table(GtkWidget *table, GtkWidget *widget, int x, int y, int width, int xflags);
+
+-#define GTKUTIL_TABLE_END 0
++#define GTKUTIL_TABLE_END ((GtkWidget *)0)
+ #define GTKUTIL_ROW_END ((GtkWidget *)1)
+
+ extern GtkWidget *gtkutil_add_table (GtkWidget *container, ...);