summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Goller <morfic@gentoo.org>2005-01-01 06:59:18 +0000
committerDaniel Goller <morfic@gentoo.org>2005-01-01 06:59:18 +0000
commitbec8adfff2abf85b15d8e7061302fde5fbcc4fcd (patch)
treea4225163c264dffa2c19725648a26664d2b3f130 /games-emulation/mupen64
parentVersion bump removes old version. New _p1 version contains new patches and fi... (diff)
downloadhistorical-bec8adfff2abf85b15d8e7061302fde5fbcc4fcd.tar.gz
historical-bec8adfff2abf85b15d8e7061302fde5fbcc4fcd.tar.bz2
historical-bec8adfff2abf85b15d8e7061302fde5fbcc4fcd.zip
version 0.4
Diffstat (limited to 'games-emulation/mupen64')
-rw-r--r--games-emulation/mupen64/ChangeLog15
-rw-r--r--games-emulation/mupen64/Manifest26
-rw-r--r--games-emulation/mupen64/files/digest-mupen64-0.47
-rw-r--r--games-emulation/mupen64/files/mupen64-SDL_ttf.patch12
-rw-r--r--games-emulation/mupen64/files/mupen64-confdir.patch48
-rw-r--r--games-emulation/mupen64/files/mupen64-gcc3.patch118
-rw-r--r--games-emulation/mupen64/files/mupen64-gentoo-avi.patch11
-rw-r--r--games-emulation/mupen64/files/mupen64-gentoo-sdl.patch34
-rw-r--r--games-emulation/mupen64/files/mupen64-gtk2-makefile.patch80
-rw-r--r--games-emulation/mupen64/files/mupen64-makefiles.patch70
-rw-r--r--games-emulation/mupen64/files/mupen64-rice-confdir.patch38
-rw-r--r--games-emulation/mupen64/mupen64-0.3.ebuild4
-rw-r--r--games-emulation/mupen64/mupen64-0.4.ebuild133
13 files changed, 589 insertions, 7 deletions
diff --git a/games-emulation/mupen64/ChangeLog b/games-emulation/mupen64/ChangeLog
index 24e296205145..109174b1c44a 100644
--- a/games-emulation/mupen64/ChangeLog
+++ b/games-emulation/mupen64/ChangeLog
@@ -1,6 +1,17 @@
# ChangeLog for games-emulation/mupen64
-# Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-emulation/mupen64/ChangeLog,v 1.5 2004/06/24 22:31:04 agriffis Exp $
+# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/mupen64/ChangeLog,v 1.6 2005/01/01 06:59:18 morfic Exp $
+
+*mupen64-0.4 (01 Jan 2005)
+
+ 01 Jan 2005; Daniel Goller <morfic@gentoo.org>
+ +files/mupen64-SDL_ttf.patch, +files/mupen64-confdir.patch,
+ +files/mupen64-gcc3.patch, +files/mupen64-gentoo-avi.patch,
+ +files/mupen64-gentoo-sdl.patch, +files/mupen64-gtk2-makefile.patch,
+ +files/mupen64-makefiles.patch, +files/mupen64-rice-confdir.patch,
+ +mupen64-0.4.ebuild:
+ Initial commit of version 0.4 thanks to al contributors on bug#56195
+ Adding patch to allow it compile with ~arch freetype
27 Sep 2003; Michael Sterrett <msterret@gentoo.org> mupen64-0.3.ebuild,
files/mupen64:
diff --git a/games-emulation/mupen64/Manifest b/games-emulation/mupen64/Manifest
index 59bbb74ab3a7..0e401ac07297 100644
--- a/games-emulation/mupen64/Manifest
+++ b/games-emulation/mupen64/Manifest
@@ -1,6 +1,26 @@
-MD5 604609705b2c951c2296e109a8f03888 mupen64-0.3.ebuild 2450
-MD5 17118e149249b363ec602cdd6b4a8c7d ChangeLog 1201
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+MD5 a782913e7973cc008cda557599b5d204 ChangeLog 1690
MD5 f17b9b8fa07a38914fe1c03268f51678 metadata.xml 158
+MD5 6575b824fd5cbfb4833874d8261e8dfb mupen64-0.3.ebuild 2448
+MD5 a0f5822196b0b4c8742be71f8b3a97cd mupen64-0.4.ebuild 3674
MD5 e2b006764c1bac03ac2667ad60a66101 files/0.3-gcc3.patch 3662
-MD5 184d6cdb2587cc6607c49a42f39335b1 files/mupen64 511
MD5 a0d71f9477dc18606c7cf5dd61fa63da files/digest-mupen64-0.3 396
+MD5 184d6cdb2587cc6607c49a42f39335b1 files/mupen64 511
+MD5 8cb72fa87f95c2a79540ea5e4a15c0b9 files/mupen64-gtk2-makefile.patch 3144
+MD5 87053b50f759d8d4b65a2369fe42338a files/mupen64-rice-confdir.patch 1208
+MD5 691d458af594d569060b8722ace617a3 files/mupen64-confdir.patch 1710
+MD5 4705caa6824153f1297173bdf43854b0 files/mupen64-makefiles.patch 2888
+MD5 04a919e368e803ceda85d809cc767b0a files/mupen64-gentoo-avi.patch 255
+MD5 623f09fd7f622d43901a028d7069ac04 files/mupen64-gentoo-sdl.patch 1558
+MD5 e2b006764c1bac03ac2667ad60a66101 files/mupen64-gcc3.patch 3662
+MD5 f63e1260b9d35674f21fdcfff3be5c16 files/mupen64-SDL_ttf.patch 353
+MD5 73956aa6279bf5b57a7d27619f4191d4 files/digest-mupen64-0.4 466
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.2.6 (GNU/Linux)
+
+iD8DBQFB1kqEUpKYMelfdYERAtQ4AJ9/hpKf2zeSncrkTYqvYrhY9XbeFwCfYmhe
+TjsPO7UY+teprAnW2ttNal4=
+=nbvC
+-----END PGP SIGNATURE-----
diff --git a/games-emulation/mupen64/files/digest-mupen64-0.4 b/games-emulation/mupen64/files/digest-mupen64-0.4
new file mode 100644
index 000000000000..c5cdcf8bf1f9
--- /dev/null
+++ b/games-emulation/mupen64/files/digest-mupen64-0.4
@@ -0,0 +1,7 @@
+MD5 322f2226f4f67e24868592c6b441e76a mupen64_src-0.4.tar.bz2 1871148
+MD5 14fc6075a19bb567afebedd5ab2ea6c1 mupen64_input.tar.bz2 4438
+MD5 88dfa0045794db7f1fc100b4c7b23125 mupen64_sound.tar.bz2 5932
+MD5 9eb823e0f4a62c8ef0428dabf3f01370 hack_azi_rsp_hle.tar.bz2 38268
+MD5 f6f42d31cee3fce0ea92176f42ef73ba riceplugin.tar.bz2 287672
+MD5 31661c6fca2dc455d7cbe7e87d316021 blight_input-0.0.8-b.tar.gz 733624
+MD5 7bb104cf6ca94c0e761027eb9895fcbe jttl_sound-1.2.tar.bz2 10015
diff --git a/games-emulation/mupen64/files/mupen64-SDL_ttf.patch b/games-emulation/mupen64/files/mupen64-SDL_ttf.patch
new file mode 100644
index 000000000000..24c246d049bc
--- /dev/null
+++ b/games-emulation/mupen64/files/mupen64-SDL_ttf.patch
@@ -0,0 +1,12 @@
+--- blight_input-0.0.8-b/src/SDL_ttf.c.orig 2005-01-01 00:34:42.153211968 -0600
++++ blight_input-0.0.8-b/src/SDL_ttf.c 2005-01-01 00:31:41.263711352 -0600
+@@ -39,6 +39,9 @@
+ #define FREEA(p) free(p)
+ #endif
+
++#include <ft2build.h>
++#include FT_FREETYPE_H
++
+ #include <freetype/freetype.h>
+ #include <freetype/ftoutln.h>
+ #include <freetype/ttnameid.h>
diff --git a/games-emulation/mupen64/files/mupen64-confdir.patch b/games-emulation/mupen64/files/mupen64-confdir.patch
new file mode 100644
index 000000000000..b71bf05e8516
--- /dev/null
+++ b/games-emulation/mupen64/files/mupen64-confdir.patch
@@ -0,0 +1,48 @@
+--- blight_input-0.0.8-b/src/plugin.c.orig 2003-10-15 00:44:17.000000000 +0000
++++ blight_input-0.0.8-b/src/plugin.c 2004-07-16 12:15:22.757428472 +0000
+@@ -33,6 +33,7 @@
+ #include "SDL.h"
+ #include <errno.h>
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <string.h>
+
+ static unsigned short button_bits[] = {
+@@ -158,7 +159,8 @@
+ FILE *f;
+ int cont, plugged, mempak, mouse, i, b, dev;
+ char line[200], device[200], key_a[200], key_b[200], button_a[200], button_b[200],
+- axis[200], button[200], hat[200], hat_pos_a[200], hat_pos_b[200], mbutton[200];
++ axis[200], button[200], hat[200], hat_pos_a[200], hat_pos_b[200], mbutton[200],
++ conffilename[200];
+ const char *p;
+ // const char *p1, *p2;
+
+@@ -188,8 +190,8 @@
+ controller[i].axis[b].hat_pos_b = -1;
+ }
+ }
+-
+- f = fopen( "blight_input.conf", "r" );
++ snprintf (conffilename, 200, "%s/.mupen64/plugins/blight_input.conf", getenv("HOME"));
++ f = fopen(conffilename, "r" );
+ if( f == NULL )
+ {
+ fprintf( stderr, "["PLUGIN_NAME"]: Couldn't open blight_input.conf for reading: %s\n", strerror( errno ) );
+@@ -339,8 +341,10 @@
+ char cButton_a[100], cButton_b[100], cAxis[100];
+ char cHat[100];
+ char cMouse[100];
++ char conffilename[200];
+
+- f = fopen( "blight_input.conf", "w" );
++ snprintf (conffilename, 200, "%s/.mupen64/plugins/blight_input.conf", getenv("HOME"));
++ f = fopen(conffilename, "w" );
+ if( f == NULL )
+ {
+ fprintf( stderr, "["PLUGIN_NAME"]: Couldn't open blight_input.conf for writing: %s\n", strerror( errno ) );
+--- emu64/path.cfg.orig 2004-07-05 20:37:13.000000000 +0000
++++ emu64/path.cfg 2004-07-16 22:40:43.000000000 +0000
+@@ -1 +1 @@
+-/bidon/roms/
++/usr/games/lib/mupen64/roms/
diff --git a/games-emulation/mupen64/files/mupen64-gcc3.patch b/games-emulation/mupen64/files/mupen64-gcc3.patch
new file mode 100644
index 000000000000..28a018e22e48
--- /dev/null
+++ b/games-emulation/mupen64/files/mupen64-gcc3.patch
@@ -0,0 +1,118 @@
+diff -ur riceplugin.orig/DaedalusGraphics.cpp riceplugin/DaedalusGraphics.cpp
+--- riceplugin.orig/DaedalusGraphics.cpp 2003-09-19 01:22:36.335328472 -0400
++++ riceplugin/DaedalusGraphics.cpp 2003-09-19 01:22:36.470307952 -0400
+@@ -18,6 +18,7 @@
+ */
+ #include "stdafx.h"
+ #include "_BldNum.h"
++#include <assert.h>
+
+ #ifndef _WIN32
+ #include <unistd.h>
+diff -ur riceplugin.orig/DecodedMux.cpp riceplugin/DecodedMux.cpp
+--- riceplugin.orig/DecodedMux.cpp 2003-09-19 01:22:36.366323760 -0400
++++ riceplugin/DecodedMux.cpp 2003-09-19 01:22:48.379497480 -0400
+@@ -760,7 +760,7 @@
+ ShadeConstMergeMapType MergeShadeWithConstantsMaps[] =
+ {
+ 0, SHADE_DO_NOTHING,
+- 0x0007000600070006, SHADE_MOD_ENV, // SHADE * ENV
++ SHADE_DO_NOTHING, SHADE_MOD_ENV, // SHADE * ENV
+ };
+
+ // 0x05070501, 0x00070006 //(1 - PRIM) * ENV + PRIM
+diff -ur riceplugin.orig/OGLCombinerTNT2.cpp riceplugin/OGLCombinerTNT2.cpp
+--- riceplugin.orig/OGLCombinerTNT2.cpp 2003-09-19 01:22:36.340327712 -0400
++++ riceplugin/OGLCombinerTNT2.cpp 2003-09-19 01:25:36.859884568 -0400
+@@ -120,22 +120,22 @@
+
+ GLenum COGLColorCombinerTNT2::RGBArgsMap[] =
+ {
+- {GL_ZERO, }, //MUX_0
+- {GL_ZERO, }, //MUX_1
+- {GL_PREVIOUS_EXT, }, //MUX_COMBINED,
+- {GL_TEXTURE0_ARB, }, //MUX_TEXEL0,
+- {GL_TEXTURE1_ARB, }, //MUX_TEXEL1,
+- {GL_CONSTANT_EXT, }, //MUX_PRIM,
+- {GL_PRIMARY_COLOR_EXT, }, //MUX_SHADE,
+- {GL_CONSTANT_EXT, }, //MUX_ENV,
+- {GL_PREVIOUS_EXT, }, //MUX_COMBALPHA,
+- {GL_TEXTURE0_ARB, }, //MUX_T0_ALPHA,
+- {GL_TEXTURE1_ARB, }, //MUX_T1_ALPHA,
+- {GL_CONSTANT_EXT, }, //MUX_PRIM_ALPHA,
+- {GL_PRIMARY_COLOR_EXT, }, //MUX_SHADE_ALPHA,
+- {GL_CONSTANT_EXT, }, //MUX_ENV_ALPHA,
+- {GL_CONSTANT_EXT, }, //MUX_LODFRAC,
+- {GL_CONSTANT_EXT, }, //MUX_PRIMLODFRAC,
++ GL_ZERO,
++ GL_ZERO,
++ GL_PREVIOUS_EXT,
++ GL_TEXTURE0_ARB,
++ GL_TEXTURE1_ARB,
++ GL_CONSTANT_EXT,
++ GL_PRIMARY_COLOR_EXT,
++ GL_CONSTANT_EXT,
++ GL_PREVIOUS_EXT,
++ GL_TEXTURE0_ARB,
++ GL_TEXTURE1_ARB,
++ GL_CONSTANT_EXT,
++ GL_PRIMARY_COLOR_EXT,
++ GL_CONSTANT_EXT,
++ GL_CONSTANT_EXT,
++ GL_CONSTANT_EXT,
+ };
+
+
+diff -ur riceplugin.orig/OGLExtCombiner.cpp riceplugin/OGLExtCombiner.cpp
+--- riceplugin.orig/OGLExtCombiner.cpp 2003-09-19 01:22:36.371323000 -0400
++++ riceplugin/OGLExtCombiner.cpp 2003-09-19 01:24:56.994944960 -0400
+@@ -474,22 +474,22 @@
+
+ GLenum COGLExtColorCombiner::RGBArgsMap[] =
+ {
+- {GL_PRIMARY_COLOR_ARB, }, //MUX_0
+- {GL_PRIMARY_COLOR_ARB, }, //MUX_1
+- {GL_PREVIOUS_ARB, }, //MUX_COMBINED,
+- {GL_TEXTURE0_ARB, }, //MUX_TEXEL0,
+- {GL_TEXTURE1_ARB, }, //MUX_TEXEL1,
+- {GL_CONSTANT_ARB, }, //MUX_PRIM,
+- {GL_PRIMARY_COLOR_ARB, }, //MUX_SHADE,
+- {GL_CONSTANT_ARB, }, //MUX_ENV,
+- {GL_PREVIOUS_ARB, }, //MUX_COMBALPHA,
+- {GL_TEXTURE0_ARB, }, //MUX_T0_ALPHA,
+- {GL_TEXTURE1_ARB, }, //MUX_T1_ALPHA,
+- {GL_CONSTANT_ARB, }, //MUX_PRIM_ALPHA,
+- {GL_PRIMARY_COLOR_ARB, }, //MUX_SHADE_ALPHA,
+- {GL_CONSTANT_ARB, }, //MUX_ENV_ALPHA,
+- {GL_CONSTANT_ARB, }, //MUX_LODFRAC,
+- {GL_CONSTANT_ARB, }, //MUX_PRIMLODFRAC,
++ GL_PRIMARY_COLOR_ARB,
++ GL_PRIMARY_COLOR_ARB,
++ GL_PREVIOUS_ARB,
++ GL_TEXTURE0_ARB,
++ GL_TEXTURE1_ARB,
++ GL_CONSTANT_ARB,
++ GL_PRIMARY_COLOR_ARB,
++ GL_CONSTANT_ARB,
++ GL_PREVIOUS_ARB,
++ GL_TEXTURE0_ARB,
++ GL_TEXTURE1_ARB,
++ GL_CONSTANT_ARB,
++ GL_PRIMARY_COLOR_ARB,
++ GL_CONSTANT_ARB,
++ GL_CONSTANT_ARB,
++ GL_CONSTANT_ARB,
+ };
+
+
+diff -ur riceplugin.orig/unique.h riceplugin/unique.h
+--- riceplugin.orig/unique.h 2003-09-19 01:22:36.336328320 -0400
++++ riceplugin/unique.h 2003-09-19 01:22:36.473307496 -0400
+@@ -39,6 +39,7 @@
+ //
+ //
+
++#include <assert.h>
+ #ifdef _MSC_VER
+ #include <crtdbg.h>
+ #endif
diff --git a/games-emulation/mupen64/files/mupen64-gentoo-avi.patch b/games-emulation/mupen64/files/mupen64-gentoo-avi.patch
new file mode 100644
index 000000000000..bda3d7f2e4e3
--- /dev/null
+++ b/games-emulation/mupen64/files/mupen64-gentoo-avi.patch
@@ -0,0 +1,11 @@
+--- emu64/config.h.orig 2004-07-15 23:09:00.000000000 +0000
++++ emu64/config.h 2004-07-15 23:05:24.000000000 +0000
+@@ -1,7 +1,7 @@
+ #ifndef CONFIG_H
+ #define CONFIG_H
+
+ #undef WITH_HOME
+-#undef VCR_SUPPORT
++#define VCR_SUPPORT 1
+
+ #endif /* CONFIG_H */
diff --git a/games-emulation/mupen64/files/mupen64-gentoo-sdl.patch b/games-emulation/mupen64/files/mupen64-gentoo-sdl.patch
new file mode 100644
index 000000000000..0cec2c48eafe
--- /dev/null
+++ b/games-emulation/mupen64/files/mupen64-gentoo-sdl.patch
@@ -0,0 +1,34 @@
+--- jttl_sound-1.2/Makefile.orig 2004-07-15 23:02:26.402954048 +0000
++++ jttl_sound-1.2/Makefile 2004-07-15 23:03:09.946334448 +0000
+@@ -1,8 +1,5 @@
+ CC = gcc
+-#CFLAGS = -g -O3 -fomit-frame-pointer -funroll-loops -ffast-math -mcpu=athlon `gtk-config --cflags` -DUSE_GTK -Wall `sdl-config --cflags` -lm `sdl-config --libs`
+-CFLAGS = -O3 -fomit-frame-pointer -funroll-loops -ffast-math -mcpu=athlon `gtk-config --cflags` -DUSE_GTK -Wall `sdl-config --cflags`
+-
+-#CFLAGS = -g -O3 -fomit-frame-pointer -funroll-loops -ffast-math -mcpu=athlon `gtk-config --cflags` -DUSE_GTK -Wall
++CFLAGS = `gtk-config --cflags` -DUSE_GTK `sdl-config --cflags` $(GCFLAGS)
+
+ LD = gcc
+ LDFLAGS = -shared -Wl,-Bsymbolic `gtk-config --libs` -lpthread -lm `sdl-config --libs`
+--- jttl_sound-1.2/main.c.orig 2004-07-04 09:36:37.000000000 +0000
++++ jttl_sound-1.2/main.c 2004-07-16 11:54:28.000000000 +0000
+@@ -114,7 +114,7 @@
+ Popably only game that needs this is Zelda: Ocarina Of Time Master Quest */
+ #define DEFAULT_FREQUENCY 33600
+ /* Name of config file */
+-#define CONFIG_FILE "jttl_audio.conf"
++#define CONFIG_FILE "/.mupen64/plugins/jttl_audio.conf"
+
+
+ /*--------------- VARIABLE DEFINITIONS ----------------*/
+@@ -605,7 +605,9 @@
+ char line[256];
+ char param[128];
+ char *value;
+- if ((config_file = fopen(CONFIG_FILE, "r")) == NULL) {
++ char conffilename[200];
++ snprintf (conffilename, 200, "%s%s", getenv("HOME"), CONFIG_FILE);
++ if ((config_file = fopen(conffilename, "r")) == NULL) {
+ fprintf(stderr, "(EE) Cannot open config file.\n");
+ return;
+ }
diff --git a/games-emulation/mupen64/files/mupen64-gtk2-makefile.patch b/games-emulation/mupen64/files/mupen64-gtk2-makefile.patch
new file mode 100644
index 000000000000..3f6c4adbf4eb
--- /dev/null
+++ b/games-emulation/mupen64/files/mupen64-gtk2-makefile.patch
@@ -0,0 +1,80 @@
+--- emu64/Makefile.orig 2004-11-26 17:04:12.407300864 +0000
++++ emu64/Makefile 2004-11-26 17:10:14.568244032 +0000
+@@ -92,46 +92,49 @@
+ PREFIX =$(shell grep WITH_HOME config.h | cut -d '"' -f 2)
+ SHARE ="$(PREFIX)share/mupen64/"
+
++GTK_CFLAGS = `pkg-config --cflags gtk+-2.0` -D_GTK2
++GTK_LIBS = `pkg-config --libs gtk+-2.0`
++
+ all: mupen64
+
+ main/main.o: main/main.c
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+ main/main_gtk.o: main/main_gtk.c
+- $(CC) $(CFLAGS) -c -o $@ $< `gtk-config --cflags`
++ $(CC) $(CFLAGS) -c -o $@ $< $(GTK_CFLAGS)
+
+ main/gui_gtk/main_gtk.o: main/gui_gtk/main_gtk.c
+- $(CC) $(CFLAGS) -c -o $@ $< `gtk-config --cflags`
++ $(CC) $(CFLAGS) -c -o $@ $< $(GTK_CFLAGS)
+
+ main/gui_gtk/translate.o: main/gui_gtk/translate.c
+- $(CC) $(CFLAGS) -c -o $@ $< `gtk-config --cflags`
++ $(CC) $(CFLAGS) -c -o $@ $< $(GTK_CFLAGS)
+
+ main/gui_gtk/messagebox.o: main/gui_gtk/messagebox.c
+- $(CC) $(CFLAGS) -c -o $@ $< `gtk-config --cflags`
++ $(CC) $(CFLAGS) -c -o $@ $< $(GTK_CFLAGS)
+
+ main/gui_gtk/aboutdialog.o: main/gui_gtk/aboutdialog.c
+- $(CC) $(CFLAGS) -c -o $@ $< `gtk-config --cflags`
++ $(CC) $(CFLAGS) -c -o $@ $< $(GTK_CFLAGS)
+
+ main/gui_gtk/configdialog.o: main/gui_gtk/configdialog.c
+- $(CC) $(CFLAGS) -c -o $@ $< `gtk-config --cflags`
++ $(CC) $(CFLAGS) -c -o $@ $< $(GTK_CFLAGS)
+
+ main/gui_gtk/support.o: main/gui_gtk/support.c
+- $(CC) $(CFLAGS) -c -o $@ $< `gtk-config --cflags`
++ $(CC) $(CFLAGS) -c -o $@ $< $(GTK_CFLAGS)
+
+ main/gui_gtk/rombrowser.o: main/gui_gtk/rombrowser.c
+- $(CC) $(CFLAGS) -c -o $@ $< `gtk-config --cflags`
++ $(CC) $(CFLAGS) -c -o $@ $< $(GTK_CFLAGS)
+
+ main/gui_gtk/romproperties.o: main/gui_gtk/romproperties.c
+- $(CC) $(CFLAGS) -c -o $@ $< `gtk-config --cflags`
++ $(CC) $(CFLAGS) -c -o $@ $< $(GTK_CFLAGS)
+
+ main/gui_gtk/config.o: main/gui_gtk/config.c
+- $(CC) $(CFLAGS) -c -o $@ $< `gtk-config --cflags`
++ $(CC) $(CFLAGS) -c -o $@ $< $(GTK_CFLAGS)
+
+ main/gui_gtk/dirbrowser.o: main/gui_gtk/dirbrowser.c
+- $(CC) $(CFLAGS) -c -o $@ $< `gtk-config --cflags`
++ $(CC) $(CFLAGS) -c -o $@ $< $(GTK_CFLAGS)
+
+ main/gui_gtk/vcrcomp_dialog.o: main/gui_gtk/vcrcomp_dialog.c
+- $(CC) $(CFLAGS) -c -o $@ $< `gtk-config --cflags`
++ $(CC) $(CFLAGS) -c -o $@ $< $(GTK_CFLAGS)
+
+ main/vcr_compress.o: main/vcr_compress.cpp
+ $(CXX) $(CXXFLAGS) -c -o $@ $< `avifile-config --cflags`
+@@ -143,13 +146,13 @@
+ ifneq ("$(shell grep VCR config.h)","\#define VCR_SUPPORT 1")
+
+ mupen64: $(OBJ) $(OBJ_X86) $(OBJ_GTK_GUI)
+- $(CC) $^ $(CFLAGS) $(LIB) -Wl,-export-dynamic `gtk-config --libs` -L/usr/X11R6/lib -lSDL -lGL -lpthread -ldl -o $@
++ $(CC) $^ $(CFLAGS) $(LIB) -Wl,-export-dynamic $(GTK_LIBS) -L/usr/X11R6/lib -lSDL -lGL -lpthread -ldl -o $@
+ strip --strip-all $@
+
+ else
+
+ mupen64: $(OBJ) $(OBJ_X86) $(OBJ_GTK_GUI) $(OBJ_VCR)
+- $(CXX) $^ $(CFLAGS) $(LIB) -Wl,-export-dynamic `gtk-config --libs` `avifile-config --libs` -L/usr/X11R6/lib -lSDL -lGL -lpthread -ldl -o $@
++ $(CXX) $^ $(CFLAGS) $(LIB) -Wl,-export-dynamic $(GTK_LIBS) `avifile-config --libs` -L/usr/X11R6/lib -lSDL -lGL -lpthread -ldl -o $@
+ strip --strip-all $@
+ endif
+
diff --git a/games-emulation/mupen64/files/mupen64-makefiles.patch b/games-emulation/mupen64/files/mupen64-makefiles.patch
new file mode 100644
index 000000000000..86a7791507f9
--- /dev/null
+++ b/games-emulation/mupen64/files/mupen64-makefiles.patch
@@ -0,0 +1,70 @@
+--- riceplugin/Makefile.orig 2004-07-15 21:38:45.195293640 +0000
++++ riceplugin/Makefile 2004-07-15 21:40:31.719099560 +0000
+@@ -1,8 +1,8 @@
+ CC = gcc
+-#CFLAGS = -DUSE_GTK `sdl-config --cflags` `gtk-config --cflags` -g -mmmx -msse
+-CFLAGS = -DUSE_GTK `sdl-config --cflags` `gtk-config --cflags` -O3 -mcpu=athlon -ffast-math -funroll-loops -fomit-frame-pointer -msse -mmmx
++CFLAGS = -DUSE_GTK `sdl-config --cflags` `gtk-config --cflags` -g $(GCFLAGS)
++#CFLAGS = -DUSE_GTK `sdl-config --cflags` `gtk-config --cflags` -O3 -mcpu=athlon -ffast-math -funroll-loops -fomit-frame-pointer -msse -mmmx
+ CXX = g++
+-CPPFLAGS = $(CFLAGS)
++CPPFLAGS = -DUSE_GTK `sdl-config --cflags` `gtk-config --cflags` -g $(GCXXFLAGS)
+ LD = g++
+ LDFLAGS = -lGL -lGLU -L/usr/X11R6/lib -lSDL
+
+--- emu64/Makefile.orig 2004-07-15 21:50:36.577147160 +0000
++++ emu64/Makefile 2004-07-15 21:53:11.189642488 +0000
+@@ -3,14 +3,9 @@
+ CC =gcc
+ CXX =g++
+
+-#CFLAGS =-DX86 -O3 -mpentium -Wall -DEMU64_DEBUG
+-CFLAGS =-DX86 -O3 -fomit-frame-pointer -funroll-loops -ffast-math -mcpu=athlon -Wall -pipe
+-#CFLAGS =-DX86 -O3 -mcpu=pentium -Wall -g -pg
+-#CFLAGS =-DX86 -Wall -pipe -g3 -DEMU64_DEBUG
+-#CFLAGS =-DX86 -Wall -pipe -g -DEMU64_DEBUG -DCOMPARE_CORE
+-#CFLAGS =-DX86 -Wall -pipe -g
+-
+-CXXFLAGS =$(CFLAGS)
++COMFLAGS =-DX86 -g
++CFLAGS =$(COMFLAGS) $(GCFLAGS)
++CXXFLAGS =$(COMFLAGS) $(GCXXFLAGS)
+
+ GL_PATH =-I/usr/X11R6/include
+
+ #endif /* CONFIG_H */
+--- mupen64_input/Makefile.orig 2004-07-15 21:53:51.944446816 +0000
++++ mupen64_input/Makefile 2004-07-15 21:54:34.593963104 +0000
+@@ -1,8 +1,5 @@
+ #Makefile GRAPHIC
+-#CXX =g++ -O3 -mpentium -Wall -DEMU64_DEBUG
+-#CC =gcc -O3 -I/usr/X11R6/include -fPIC -fomit-frame-pointer -funroll-loops -ffast-math -mcpu=pentium -pipe
+-#CC =gcc -O3 -mpentium -Wall -g -pg
+-CC =gcc -O3 -fomit-frame-pointer -funroll-loops -ffast-math -mcpu=athlon -Wall -DUSE_GTK `gtk-config --cflags` -I/usr/X11R6/include -pipe
++CC =gcc -g $(GCFLAGS)
+
+ OBJ =main.o
+
+--- hack_azi_rsp_hle/Makefile.orig 2004-07-15 21:56:27.429809448 +0000
++++ hack_azi_rsp_hle/Makefile 2004-07-15 21:57:15.940434712 +0000
+@@ -1,9 +1,7 @@
+ CC = gcc
+-CFLAGS = -DUSE_GTK `gtk-config --cflags` -O3 -mcpu=athlon \
+- -ffast-math -funroll-loops -fomit-frame-pointer
+-#CFLAGS = -DUSE_GTK `gtk-config --cflags` -g -fPIC
++CFLAGS = -DUSE_GTK `gtk-config --cflags` -g -fPIC $(GCFLAGS)
+ CXX = g++
+-CXXFLAGS = $(CFLAGS)
++CXXFLAGS = -DUSE_GTK `gtk-config --cflags` -g -fPIC $(GCXXFLAGS)
+ LD = g++
+ LDFLAGS =
+
+--- mupen64_sound/Makefile.orig 2004-07-04 04:43:39.000000000 -0500
++++ mupen64_sound/Makefile 2004-12-31 23:53:55.329185760 -0600
+@@ -1,5 +1,5 @@
+ CC = gcc
+-CFLAGS = -O3 -fomit-frame-pointer -funroll-loops -ffast-math -mcpu=athlon `gtk-config --cflags` -DUSE_GTK -Wall
++CFLAGS = `gtk-config --cflags` -DUSE_GTK $(GCFLAGS)
+ LD = gcc
+ LDFLAGS = -shared -Wl,-Bsymbolic `gtk-config --libs` -lpthread
+
diff --git a/games-emulation/mupen64/files/mupen64-rice-confdir.patch b/games-emulation/mupen64/files/mupen64-rice-confdir.patch
new file mode 100644
index 000000000000..d6c7e1079604
--- /dev/null
+++ b/games-emulation/mupen64/files/mupen64-rice-confdir.patch
@@ -0,0 +1,38 @@
+--- riceplugin/Config.cpp.orig 2004-11-26 02:23:52.306288064 +0000
++++ riceplugin/Config.cpp 2004-11-26 02:35:57.418054320 +0000
+@@ -737,8 +737,9 @@
+ #else // _WIN32
+ FILE *f;
+ char name[MAX_PATH];
+- GetPluginDir(name);
+- strcat(name, CONFIG_FILE);
++ //GetPluginDir(name);
++ //strcat(name, CONFIG_FILE);
++ snprintf(name, MAX_PATH, "%s/.mupen64/plugins/%s", getenv("HOME"), CONFIG_FILE);
+ f = fopen(name, "rb");
+ if (!f) return FALSE;
+ fclose(f);
+@@ -889,8 +890,9 @@
+ RegCloseKey(hKey2);
+ #else // _WIN32
+ char name[MAX_PATH];
+- GetPluginDir(name);
+- strcat(name, CONFIG_FILE);
++ //GetPluginDir(name);
++ //strcat(name, CONFIG_FILE);
++ snprintf(name, MAX_PATH, "%s/.mupen64/plugins/%s", getenv("HOME"), CONFIG_FILE);
+ FILE *f = fopen(name, "rb");
+ if (!f)
+ {
+@@ -1027,8 +1029,9 @@
+ return(0);
+ #else // _WIN32
+ char name[MAX_PATH];
+- GetPluginDir(name);
+- strcat(name, CONFIG_FILE);
++ //GetPluginDir(name);
++ //strcat(name, CONFIG_FILE);
++ snprintf(name, MAX_PATH, "%s/.mupen64/plugins/%s", getenv("HOME"), CONFIG_FILE);
+ FILE *f = fopen(name, "rb");
+ char buf[0x1000];
+ while(fscanf(f, "%s", buf) == 1)
diff --git a/games-emulation/mupen64/mupen64-0.3.ebuild b/games-emulation/mupen64/mupen64-0.3.ebuild
index d7f66a1e7fc4..8c946229a2ab 100644
--- a/games-emulation/mupen64/mupen64-0.3.ebuild
+++ b/games-emulation/mupen64/mupen64-0.3.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2004 Gentoo Foundation
+# Copyright 1999-2005 Gentoo Foundation
# 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.6 2004/06/24 22:31:04 agriffis Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/mupen64/mupen64-0.3.ebuild,v 1.7 2005/01/01 06:59:18 morfic Exp $
inherit games gcc eutils
diff --git a/games-emulation/mupen64/mupen64-0.4.ebuild b/games-emulation/mupen64/mupen64-0.4.ebuild
new file mode 100644
index 000000000000..f25d2a179ee3
--- /dev/null
+++ b/games-emulation/mupen64/mupen64-0.4.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/mupen64/mupen64-0.4.ebuild,v 1.1 2005/01/01 06:59:18 morfic Exp $
+
+inherit games gcc eutils libtool
+
+IUSE="avi gtk2 sdl"
+
+DESCRIPTION="A Nintendo 64 (N64) emulator"
+SRC_URI="http://mupen64.emulation64.com/files/${PV}/mupen64_src-${PV}.tar.bz2
+ http://mupen64.emulation64.com/files/${PV}/mupen64_input.tar.bz2
+ http://mupen64.emulation64.com/files/${PV}/mupen64_sound.tar.bz2
+ http://mupen64.emulation64.com/files/${PV}/hack_azi_rsp_hle.tar.bz2
+ http://mupen64.emulation64.com/files/${PV}/riceplugin.tar.bz2
+ http://mupen64.emulation64.com/files/${PV}/blight_input-0.0.8-b.tar.gz
+ sdl? ( http://mupen64.emulation64.com/files/${PV}/jttl_sound-1.2.tar.bz2 )"
+HOMEPAGE="http://mupen64.emulation64.com/"
+
+RESTRICT="nomirror"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86"
+
+RDEPEND="sys-libs/zlib
+ !gtk2? ( =x11-libs/gtk+-1.2* )
+ gtk2? ( =x11-libs/gtk+-2* )
+ media-libs/libsdl
+ sdl? ( media-libs/sdl-sound )
+ avi? ( media-video/avifile )
+ virtual/glu
+ virtual/opengl"
+DEPEND="${RDEPEND}
+ >=sys-apps/sed-4"
+
+S="${WORKDIR}"
+
+src_unpack() {
+ unpack ${A}
+
+ cd ${S}
+ epatch ${FILESDIR}/${PN}-makefiles.patch
+ epatch ${FILESDIR}/${PN}-confdir.patch
+ epatch ${FILESDIR}/${PN}-rice-confdir.patch
+ epatch ${FILESDIR}/${PN}-SDL_ttf.patch
+ # gtk2 breaks some configuration dialogs (bug 56195 #35)
+ use gtk2 && epatch ${FILESDIR}/${PN}-gtk2-makefile.patch
+ use avi && epatch ${FILESDIR}/${PN}-gentoo-avi.patch
+ use sdl && epatch ${FILESDIR}/${PN}-gentoo-sdl.patch
+
+ # 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}/${PN}-gcc3.patch
+ fi
+
+ # the riceplugin requires sse support
+ echo "#include <xmmintrin.h>" > ${T}/test.c
+ $(gcc-getCC) ${CFLAGS} -o ${T}/test.s -S ${T}/test.c >&/dev/null || rm -rf riceplugin
+
+ # polish locales
+ cp ${FILESDIR}/polish.lng ${S}/emu64/lang
+}
+
+src_compile() {
+ cd ${S}/blight_input-0.0.8-b
+ econf || die "configure of blight_input failed"
+
+ export GCFLAGS="${CFLAGS}"
+ export GCXXFLAGS="${CXXFLAGS}"
+
+ cd ${S}
+ for i in *; do
+ einfo ""
+ einfo "Entering $i and make"
+ cd ${S}/${i} && emake || die "emake failed on $i"
+ einfo "and done."
+ done
+
+ unset GCFLAGS
+ unset GCXXFLAGS
+}
+
+src_install() {
+ local dir=${GAMES_LIBDIR}/${PN}
+ dodir ${dir}
+
+ cd ${S}
+
+ exeinto ${dir}/plugins
+ doexe */*.so blight_input-0.0.8-b/src/.libs/*.so
+ insinto ${dir}/plugins
+ doins */*.ini
+ rm ${D}/${dir}/plugins/mupen64*.ini
+ echo -e "\n" > ${D}/usr/games/lib/mupen64/plugins/RiceDaedalus.cfg
+ echo -e "\n" > ${D}/usr/games/lib/mupen64/plugins/blight_input.conf
+
+ cd ${S}/emu64
+ cp -r mupen64* lang plugins save roms path.cfg ${D}/${dir}/
+ rm ${D}/${dir}/mupen64_test.ini
+ if use sdl; then
+ cd ${S}/jttl_sound-1.2
+ cp jttl_audio.conf ${D}/${dir}/plugins
+ fi
+
+ dogamesbin ${FILESDIR}/mupen64
+ dosed "s:GENTOO_DIR:${dir}:" ${GAMES_BINDIR}/mupen64
+ newgamesbin ${FILESDIR}/mupen64 mupen64_nogui
+ dosed "s:GENTOO_DIR:${dir}:" ${GAMES_BINDIR}/mupen64_nogui
+
+ # plugins docs are in subdirs of the doc main directory
+ cd ${S}/emu64
+ insinto /usr/share/doc/${PF}
+ dodoc *.txt
+ doins doc/readme.pdf
+ cd ${S}/blight_input-0.0.8-b
+ docinto blight_input
+ dodoc AUTHORS ChangeLog NEWS README ToDo
+ cd ${S}/jttl_sound-1.2
+ docinto jttl_sound-1.2
+ dodoc README
+
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ ewarn "If you are upgreading from previous version of mupen64"
+ ewarn "you have to do rm -rf on your .mupen64 directory."
+ ewarn "Copy your saved games and after launching new mupen"
+ ewarn "copy it to the original place."
+}
+