summaryrefslogtreecommitdiff
path: root/games-emulation/gens
diff options
context:
space:
mode:
Diffstat (limited to 'games-emulation/gens')
-rw-r--r--games-emulation/gens/Manifest7
-rw-r--r--games-emulation/gens/files/gens-2.15.5-as-needed.patch11
-rw-r--r--games-emulation/gens/files/gens-2.15.5-gcc34.patch46
-rw-r--r--games-emulation/gens/files/gens-2.15.5-ovflfix.patch13
-rw-r--r--games-emulation/gens/files/gens-2.15.5-romsdir.patch13
-rw-r--r--games-emulation/gens/gens-2.15.5-r1.ebuild48
-rw-r--r--games-emulation/gens/metadata.xml11
7 files changed, 149 insertions, 0 deletions
diff --git a/games-emulation/gens/Manifest b/games-emulation/gens/Manifest
new file mode 100644
index 000000000000..9d767dd2b427
--- /dev/null
+++ b/games-emulation/gens/Manifest
@@ -0,0 +1,7 @@
+AUX gens-2.15.5-as-needed.patch 367 BLAKE2B 145f1d54665e2a0a50a11c18bca22c9ec17b420d3439812f4d82ca259486ee4e3ffcf8b47a5cff7bd61a838ad6723ce9fa9d1d4448d3d51b5638861d5109f970 SHA512 be44bd13b869a9181d740f850dcb7a6f6cfc8660bf31cdf515beffa989fc64e120e7dc3b683f702ec6059805bc37f18a104f420fd3f84a438f26b09da82dd4a8
+AUX gens-2.15.5-gcc34.patch 1545 BLAKE2B c0a4b73fb0ead7ccd98660c8684e88dc8b04179cee114c3d984b9ab699a8f3f5c680b55068847d225645ea32f03eed21841e0e01aeb2c80d15f40d7ad52a5f13 SHA512 8af2946ac09a18adc2d35ea7797acfdb107b86b29b6bf412a87080e4cc66e45bb5a61823095766bde2ca3e95768a1ac243e39b1d06f9bd99f20b7fdec71d1ef0
+AUX gens-2.15.5-ovflfix.patch 581 BLAKE2B a4b44f6b59e03021f9b68603b0011d88fc14284e3e817c970d97a2e8ebbc1454eef339869da680e0b5073b96a7786fb39a1fa997c0d0a6911837c0220a59b0b1 SHA512 cc21dfabeba4cf413853c8d7d0779448c9aab318c2bd83894622ea132eae645000b77d9ef803bb1643f5f6b1b11263f4dfaf66e50a905730e592a628654c33f7
+AUX gens-2.15.5-romsdir.patch 575 BLAKE2B 2af287d30b5ff6c28a306fb35733cd8a715ffe1ae20da117b5f9dd3520f54c39a906d9bcd6b6003ce2cb4bd09d55d10bf25164d71f9400548360b9736cb5aa06 SHA512 73b75f4b8087931b20b1b8c220ce64e957ca0cdeb91a59a90b29b4376420e567093f0ae6d6525cdf3930f555720b27c9f152ec5bbf0365743a0bac236da115e6
+DIST gens-2.15.5.tar.gz 741852 BLAKE2B 17501077737ea7320f9675c130c89cc0e078ad413e7af32c55c5db8d0fa2ba099db26d1272c32e09e86bb11fd49f364b0597540261414d366198afb24a10bc7a SHA512 7163f6a1e09bac420e0e4aa0f8f3ed255406d9aff3cc7366c40226e7fece78baca5428d0fe87daf0f12f6e10b428477a795b54d008db5e3dcbf7692ed9d9fe7d
+EBUILD gens-2.15.5-r1.ebuild 1039 BLAKE2B 3f45d90fe1ed3b9210a03fe33fec6d86d75854dde240aa45d6c9ccb3acdd013108280a40c81518eb5cb9e1ad26f9e88cd796a79f8d085dbc30adda55b4426679 SHA512 9a2486425226271ab06d8c5977590f86885748c63b51c35246e55ea5ffd69f22ee909214b8d2d084c6444e881857306f1729e1819b349d59ae2f0d1a079265ed
+MISC metadata.xml 327 BLAKE2B 2eb11640da9741a65ebe22b58a03e88d5432c69cef02a4db90801bc65d06987e3a8056401efca51ed70846666922d312bb1f38189cea7a53e9e0c1afbde55fa9 SHA512 651fefa76d513b3f2a0ecf865547bf7046605ef21fa689e620820464a28b3b2e5b288623e7ca71bcae93cc016871240025caf1fdb04a45a0695ec457098434b4
diff --git a/games-emulation/gens/files/gens-2.15.5-as-needed.patch b/games-emulation/gens/files/gens-2.15.5-as-needed.patch
new file mode 100644
index 000000000000..2b58e7f94b33
--- /dev/null
+++ b/games-emulation/gens/files/gens-2.15.5-as-needed.patch
@@ -0,0 +1,11 @@
+--- a/configure.old 2009-02-04 14:41:40.000000000 +0100
++++ b/configure 2009-02-04 14:48:52.000000000 +0100
+@@ -4929,7 +4929,7 @@
+ { echo "$as_me:$LINENO: result: $with_opengl" >&5
+ echo "${ECHO_T}$with_opengl" >&6; }
+ if test x$with_opengl = xyes; then
+- LDFLAGS="$LDFLAGS -lGL"
++ LIBS="$LIBS -lGL"
+
+ fi
+ fi
diff --git a/games-emulation/gens/files/gens-2.15.5-gcc34.patch b/games-emulation/gens/files/gens-2.15.5-gcc34.patch
new file mode 100644
index 000000000000..77acd5c4e970
--- /dev/null
+++ b/games-emulation/gens/files/gens-2.15.5-gcc34.patch
@@ -0,0 +1,46 @@
+from https://sourceforge.net/p/gens/patches/25/
+
+--- gens.orig/src/gens/gens_core/cpu/68k/cpu_68k.c 2004-05-22 09:02:12.000000000 -0700
++++ gens/src/gens/gens_core/cpu/68k/cpu_68k.c 2005-03-21 10:52:24.000000000 -0800
+@@ -24,9 +24,9 @@
+
+ struct STARSCREAM_PROGRAMREGION M68K_Fetch[] = {
+ {0x000000, 0x3FFFFF, (unsigned) 0x000000},
+- {0xFF0000, 0xFFFFFF, (unsigned) &Ram_68k[0] - 0xFF0000},
+- {0xF00000, 0xF0FFFF, (unsigned) &Ram_68k[0] - 0xF00000},
+- {0xEF0000, 0xEFFFFF, (unsigned) &Ram_68k[0] - 0xEF0000},
++ {0xFF0000, 0xFFFFFF, (unsigned) NULL},
++ {0xF00000, 0xF0FFFF, (unsigned) NULL},
++ {0xEF0000, 0xEFFFFF, (unsigned) NULL},
+ {-1, -1, (unsigned) NULL},
+ {-1, -1, (unsigned) NULL},
+ {-1, -1, (unsigned) NULL}
+@@ -60,7 +60,7 @@
+
+
+ struct STARSCREAM_PROGRAMREGION S68K_Fetch[] = {
+- {0x000000, 0x07FFFF, (unsigned) &Ram_Prg[0]},
++ {0x000000, 0x07FFFF, (unsigned) NULL},
+ {-1, -1, (unsigned) NULL},
+ {-1, -1, (unsigned) NULL}
+ };
+@@ -109,6 +109,10 @@
+ int
+ M68K_Init (void)
+ {
++ M68K_Fetch[1].offset=(unsigned) &Ram_68k[0] - 0xFF0000;
++ M68K_Fetch[2].offset=(unsigned) &Ram_68k[0] - 0xF00000;
++ M68K_Fetch[3].offset=(unsigned) &Ram_68k[0] - 0xEF0000;
++
+ memset (&Context_68K, 0, sizeof (Context_68K));
+
+ Context_68K.s_fetch = Context_68K.u_fetch = Context_68K.fetch = M68K_Fetch;
+@@ -134,6 +138,8 @@
+ int
+ S68K_Init (void)
+ {
++ S68K_Fetch[0].offset=(unsigned) &Ram_Prg[0];
++
+ memset (&Context_68K, 0, sizeof (Context_68K));
+
+ Context_68K.s_fetch = Context_68K.u_fetch = Context_68K.fetch = S68K_Fetch;
diff --git a/games-emulation/gens/files/gens-2.15.5-ovflfix.patch b/games-emulation/gens/files/gens-2.15.5-ovflfix.patch
new file mode 100644
index 000000000000..fdbef69dba0a
--- /dev/null
+++ b/games-emulation/gens/files/gens-2.15.5-ovflfix.patch
@@ -0,0 +1,13 @@
+--- a/src/gens/gens_core/cpu/68k/cpu_68k.c.old 2010-10-28 09:34:52.000000000 +0200
++++ b/src/gens/gens_core/cpu/68k/cpu_68k.c 2010-10-28 09:35:53.000000000 +0200
+@@ -239,8 +239,8 @@
+ memset (Ram_Word_2M, 0, 256 * 1024);
+ memset (Ram_Word_1M, 0, 256 * 1024);
+
+- memset (COMM.Command, 0, 8 * 5);
+- memset (COMM.Status, 0, 8 * 5);
++ memset (COMM.Command, 0, sizeof (COMM.Command));
++ memset (COMM.Status, 0, sizeof (COMM.Status));
+
+ LED_Status = S68K_State = S68K_Mem_WP = S68K_Mem_PM = Ram_Word_State = 0;
+ COMM.Flag = Init_Timer_INT3 = Timer_INT3 = Int_Mask_S68K = 0;
diff --git a/games-emulation/gens/files/gens-2.15.5-romsdir.patch b/games-emulation/gens/files/gens-2.15.5-romsdir.patch
new file mode 100644
index 000000000000..c885552f12d5
--- /dev/null
+++ b/games-emulation/gens/files/gens-2.15.5-romsdir.patch
@@ -0,0 +1,13 @@
+diff -ruN gens-rc3.5-opengl/src/gens/util/rom.c gens-rc3.5-opengl-patched/src/gens/util/rom.c
+--- a/src/gens/util/file/rom.c 2005-01-10 22:24:01.000000000 +0100
++++ b/src/gens/util/file/rom.c 2006-10-29 14:58:14.000000000 +0100
+@@ -411,6 +411,9 @@
+ create_file_chooser_dialog ("Open Rom", GTK_FILE_CHOOSER_ACTION_OPEN);
+ // fileselection_set_dir (fd.filesel, Rom_Dir);
+ addRomsFilter (widget);
++
++ gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (widget), Rom_Dir);
++
+ res = gtk_dialog_run (GTK_DIALOG (widget));
+ if (res == GTK_RESPONSE_OK)
+ {
diff --git a/games-emulation/gens/gens-2.15.5-r1.ebuild b/games-emulation/gens/gens-2.15.5-r1.ebuild
new file mode 100644
index 000000000000..de49e5ffa082
--- /dev/null
+++ b/games-emulation/gens/gens-2.15.5-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit desktop flag-o-matic
+
+DESCRIPTION="A Sega Genesis/CD/32X emulator"
+HOMEPAGE="https://sourceforge.net/projects/gens/"
+SRC_URI="mirror://sourceforge/gens/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+ virtual/opengl
+ >=media-libs/libsdl-1.2[joystick,video]
+ x11-libs/gtk+:2
+"
+DEPEND="${RDEPEND}
+ >=dev-lang/nasm-0.98
+"
+
+src_prepare() {
+ default
+ eapply \
+ "${FILESDIR}"/${P}-romsdir.patch \
+ "${FILESDIR}"/${P}-as-needed.patch \
+ "${FILESDIR}"/${P}-ovflfix.patch \
+ "${FILESDIR}"/${P}-gcc34.patch
+ sed -i -e '1i#define OF(x) x' src/gens/util/file/unzip.h || die
+ append-ldflags -Wl,-z,noexecstack
+}
+
+src_configure() {
+ use amd64 && multilib_toolchain_setup x86 #441876
+ econf \
+ --disable-gtktest \
+ --disable-sdltest
+}
+
+src_install() {
+ DOCS="AUTHORS BUGS README gens.txt history.txt" \
+ default
+ newicon pixmaps/gens_small.png ${PN}.png
+ make_desktop_entry "${PN}" "Gens"
+}
diff --git a/games-emulation/gens/metadata.xml b/games-emulation/gens/metadata.xml
new file mode 100644
index 000000000000..da30fe35d4bc
--- /dev/null
+++ b/games-emulation/gens/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">gens</remote-id>
+ </upstream>
+</pkgmetadata>