summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Sterrett <mr_bones_@gentoo.org>2003-09-27 08:06:13 +0000
committerMichael Sterrett <mr_bones_@gentoo.org>2003-09-27 08:06:13 +0000
commit236e08bc5160fac6cec3ea83f190a436997400b1 (patch)
treeffa2122a9e53d835889d58255a5389911722ff11
parentMarked as stable (diff)
downloadgentoo-2-236e08bc5160fac6cec3ea83f190a436997400b1.tar.gz
gentoo-2-236e08bc5160fac6cec3ea83f190a436997400b1.tar.bz2
gentoo-2-236e08bc5160fac6cec3ea83f190a436997400b1.zip
disable the riceplugin for anything < gcc 3.3 (bug 29206); other fixes
-rw-r--r--games-emulation/mupen64/ChangeLog9
-rw-r--r--games-emulation/mupen64/Manifest8
-rw-r--r--games-emulation/mupen64/files/mupen649
-rw-r--r--games-emulation/mupen64/mupen64-0.3.ebuild41
4 files changed, 46 insertions, 21 deletions
diff --git a/games-emulation/mupen64/ChangeLog b/games-emulation/mupen64/ChangeLog
index e61de83d3926..51aed6379ca7 100644
--- a/games-emulation/mupen64/ChangeLog
+++ b/games-emulation/mupen64/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for games-emulation/mupen64
# Copyright 2002-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-emulation/mupen64/ChangeLog,v 1.3 2003/09/19 05:58:18 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/mupen64/ChangeLog,v 1.4 2003/09/27 08:06:11 mr_bones_ Exp $
+
+ 27 Sep 2003; Michael Sterrett <msterret@gentoo.org> mupen64-0.3.ebuild,
+ files/mupen64:
+ disable the riceplugin for anything < gcc 3.3; more error messages; make
+ wrapper script run out of ~/.mupen64 to avoid segfault on exit; wrapper is a
+ bash script; cp ini file to ~ so it can be updated on exit. Should work
+ around bug 29206 enough to close that bug.
*mupen64-0.3 (19 Sep 2003)
diff --git a/games-emulation/mupen64/Manifest b/games-emulation/mupen64/Manifest
index 1ee598564571..8bfc45ae87a5 100644
--- a/games-emulation/mupen64/Manifest
+++ b/games-emulation/mupen64/Manifest
@@ -1,9 +1,9 @@
+MD5 825f4cf33647dd1e3f1744d9f429bbb5 ChangeLog 1211
MD5 3e2181a9fcd1ebac5737a01dfe883e0d mupen64-0.1.ebuild 1023
+MD5 1238e058cc589a62eda29092549fd500 mupen64-0.2.ebuild 976
+MD5 5daab6ec7564fa6e2db1af09c14ef3a7 mupen64-0.3.ebuild 2292
MD5 e2b006764c1bac03ac2667ad60a66101 files/0.3-gcc3.patch 3662
-MD5 d068c3f39886de3921c4d3a25687788a files/mupen64 255
MD5 31f743eb9e30bd96396635010d31457f files/digest-mupen64-0.1 64
MD5 f595bb1bf10b107e02bc4dd00ee40f0a files/digest-mupen64-0.2 64
MD5 a0d71f9477dc18606c7cf5dd61fa63da files/digest-mupen64-0.3 396
-MD5 590be7388e92cbd5041862da4bb4d401 mupen64-0.3.ebuild 1907
-MD5 1238e058cc589a62eda29092549fd500 mupen64-0.2.ebuild 976
-MD5 c23c84b838854c3ec28e3526bbb6892d ChangeLog 843
+MD5 184d6cdb2587cc6607c49a42f39335b1 files/mupen64 511
diff --git a/games-emulation/mupen64/files/mupen64 b/games-emulation/mupen64/files/mupen64
index 14e7969ab83a..91f25bf47a02 100644
--- a/games-emulation/mupen64/files/mupen64
+++ b/games-emulation/mupen64/files/mupen64
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
if [ ! -d ~/.mupen64/save ] ; then
mkdir -p ~/.mupen64/save
@@ -6,7 +6,12 @@ if [ ! -d ~/.mupen64/save ] ; then
ln -s GENTOO_DIR/plugins plugins
ln -s GENTOO_DIR/mupen64 mupen64
ln -s GENTOO_DIR/mupen64_nogui mupen64_nogui
+ cp GENTOO_DIR/mupen64.ini .
fi
cd ~/.mupen64
-exec GENTOO_DIR/$(basename $0) "$@"
+# We must execute ./blah not /foo/bar/blah because mupen64 tries to
+# write to files in the directory from which the application is run.
+# It segfaults if it can't write to the directory. Upstream has been
+# notified of the problem.
+exec ./$(basename $0) "$@"
diff --git a/games-emulation/mupen64/mupen64-0.3.ebuild b/games-emulation/mupen64/mupen64-0.3.ebuild
index 579e38f9df98..338b9b572e2b 100644
--- a/games-emulation/mupen64/mupen64-0.3.ebuild
+++ b/games-emulation/mupen64/mupen64-0.3.ebuild
@@ -1,8 +1,8 @@
# Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/games-emulation/mupen64/mupen64-0.3.ebuild,v 1.1 2003/09/19 05:58:18 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/mupen64/mupen64-0.3.ebuild,v 1.2 2003/09/27 08:06:11 mr_bones_ Exp $
-inherit games eutils
+inherit games gcc eutils
DESCRIPTION="A Nintendo 64 (N64) emulator"
SRC_URI="http://mupen64.emulation64.com/files/src/mupen64_src-${PV}.tar.bz2
@@ -11,38 +11,51 @@ SRC_URI="http://mupen64.emulation64.com/files/src/mupen64_src-${PV}.tar.bz2
http://mupen64.emulation64.com/files/src/tr64_oglv078_src.tar.bz2
http://mupen64.emulation64.com/files/src/mupen64_hle_rsp.tar.bz2
http://mupen64.emulation64.com/files/src/riceplugin.tar.bz2"
-#SRC_URI="http://mupen64.emulation64.com/files/${P}.tar.bz2"
HOMEPAGE="http://mupen64.emulation64.com/"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="-* x86"
-DEPEND="=x11-libs/gtk+-1.2*
- >=sys-apps/sed-4
+RDEPEND="=x11-libs/gtk+-1.2*
media-libs/libsdl
virtual/glu
virtual/opengl"
+DEPEND="${RDEPEND}
+ sys-devel/gcc
+ >=sys-apps/sed-4"
S=${WORKDIR}
src_unpack() {
unpack ${A}
- epatch ${FILESDIR}/${PV}-gcc3.patch
- sed -i "/^CC/s:-O3.*-Wall:${CFLAGS}:" \
- emu64/Makefile \
- mupen64_input/Makefile
- sed -i "/^CFLAGS/s:-O3.*-march=athlon:${CFLAGS}:" mupen64_sound/Makefile
- sed -i "/^CFLAGS/s:-O3.*$:${CFLAGS}:" \
- riceplugin/Makefile \
+ # the riceplugin seems to want gcc 3.3 to compile.
+ if [ "`gcc-major-version`" -lt 3 -o "`gcc-version`" = "3.2" ] ; then
+ rm -rf riceplugin
+ else
+ epatch ${FILESDIR}/${PV}-gcc3.patch
+ sed -i \
+ -e "/^CFLAGS/s:-O3.*$:${CFLAGS}:" riceplugin/Makefile || \
+ die "sed riceplugin/Makefile failed"
+ fi
+ sed -i \
+ -e "/^CC/s:-O3.*-Wall:${CFLAGS}:" emu64/Makefile \
+ mupen64_input/Makefile || \
+ die "sed mupen64_input/Makefile failed"
+ sed -i \
+ -e "/^CFLAGS/s:-O3.*-march=athlon:${CFLAGS}:" \
+ mupen64_sound/Makefile || die "sed mupen64_sound/Makefile failed"
+ sed -i \
+ -e "/^CFLAGS/s:-O3.*$:${CFLAGS}:" \
rsp_hle/Makefile \
- tr64_oglv078_src/Makefile
+ tr64_oglv078_src/Makefile || \
+ sed "other sed Makefiles failed"
}
src_compile() {
for d in * ; do
cd ${S}/${d}
- emake || die "failed on $d"
+ emake || die "emake failed on $d"
done
}