summaryrefslogtreecommitdiff
path: root/games-emulation/daphne
diff options
context:
space:
mode:
Diffstat (limited to 'games-emulation/daphne')
-rw-r--r--games-emulation/daphne/Manifest12
-rw-r--r--games-emulation/daphne/daphne-1.0.ebuild89
-rw-r--r--games-emulation/daphne/files/daphne-1.0-gcc43.patch12
-rw-r--r--games-emulation/daphne/files/daphne-1.0-ldflags.patch22
-rw-r--r--games-emulation/daphne/files/daphne-1.0-system-lmpeg2.patch41
-rw-r--r--games-emulation/daphne/files/daphne-1.0-typefix.patch47
-rw-r--r--games-emulation/daphne/files/daphne-1.0-underlink.patch8
-rw-r--r--games-emulation/daphne/files/daphne-1.0-vorbisfilefix.patch14
-rw-r--r--games-emulation/daphne/files/daphne-1.0-zlib.patch13
-rw-r--r--games-emulation/daphne/metadata.xml8
10 files changed, 266 insertions, 0 deletions
diff --git a/games-emulation/daphne/Manifest b/games-emulation/daphne/Manifest
new file mode 100644
index 000000000000..25bb02303992
--- /dev/null
+++ b/games-emulation/daphne/Manifest
@@ -0,0 +1,12 @@
+AUX daphne-1.0-gcc43.patch 482 SHA256 a13e0f8490bd099dd70874ff7a8c3906fe7673f7921042f928acb0e258cac929 SHA512 1346714f3fce3e7d73a4bfb00ff379d798c241d61f008116f283ee206bcd9952913eac98565b6acf1d8ba79b9c2f1095a7368c28c78e496615e37567a6352e77 WHIRLPOOL f50fbcf94494fd7da0e64b76114d24c10febc78074f185269a40bc4a8b086162ba9352541de7dd7bf53283a3e15196d9ae68a42bb3ae83a9de49d89216c839c4
+AUX daphne-1.0-ldflags.patch 612 SHA256 f5d6cdb9d2f357a721806ede353d0a7fba3c3dce28f270a430d856e5b6fad9c1 SHA512 05176cff73a06e83df644854551e688f64f1d9fb82387847fc61735d9dea1eeda0d2cf1930350dfcc2dd98aebc9352f9e61b3d3aaca736fd62de6282154c98b4 WHIRLPOOL 79185165ead4522e4766560699465e9b0a538121c203106dba52d3f8118733c73414c8f38b74aff43fa913174a03c96ee5992629cd830b5ba144d05a00631bae
+AUX daphne-1.0-system-lmpeg2.patch 1607 SHA256 e0ee0e82cd03d5b3d1b8e70f926fc01c808b0143c7f6961fe43a0db444537c79 SHA512 92a4d60db095deb8ddcdca23e89f82196f912d9c14202070b039443d328e436dd20714fac90db5ae20f88e955c2cef6f4d339b45d4fdf44115c619e7d5e8bb64 WHIRLPOOL a00c2402e60085367bda07790899225c7afad78efe0802bc3a9bd66bb5be74f0f3216bf27a5085c53b84f973b1565f52a05733e80536997d6f40a255b3dd3b70
+AUX daphne-1.0-typefix.patch 1993 SHA256 7a1b62c4ae890d65cba232272148046e0da5c9215a7163de09c4020db8c3c3fa SHA512 d8d084d1ef19526a49ed1a0a6e1c03a79bf4f90a6b1fcf99a4ec9b3137401b4a4aacdcaa9d166857dda649ece865e26c8538681822f19845b6c15a91618adb63 WHIRLPOOL 1e5c5dd17603c4b8aa3979a122c3fd009c67bc4fe823d7836ff669bb8c4d71530d98d9df0e20652236c901fbd631bf434602e0f8b44bdee09e75d739823583fd
+AUX daphne-1.0-underlink.patch 403 SHA256 42651692b7243af89851eafc32f57e5146a686ea59fc2eee143c79068e6201b3 SHA512 752bc994977e7b8a179c1763cda6c89ffe0bad8bf35414de99d9d412ff82e6f6f8ce05856feca728654cb12d770b59bb5ac204ce86371f2515073c89a5c75962 WHIRLPOOL faff322fd2fb428cd21936afc59f5a6af4bd1f0728a9a05dcc3f748b628377f1fa0f96ff3a6649e145f2702872fbd852a35ab06052b747de450dd2fe37934f63
+AUX daphne-1.0-vorbisfilefix.patch 521 SHA256 3f59e8ca9859f6069c1956751ba7963649f9e75a015bc747eccad2c2b251a6fa SHA512 fb0bd9d56536b5e2688b3398738ccb267ff76ebbe2baec52d80ae2246a1de63e95a85b7bfeb918a827c7fbc0ffa0c735b02d5f523337fc1f0107f1799de436f1 WHIRLPOOL 5d7893173d9842260ad11c3f579fb1a8a7c82acd469e9ee2df0404a097cecc2372795a29b2cad1f5218ce858402e92ad6e5998a1c83558d0351169c6159e05c2
+AUX daphne-1.0-zlib.patch 356 SHA256 3a0b13be874de8c3441ee88047fdc3c1dfd05ada596b54f697b752671cb7f2d6 SHA512 56c64a616791734fdb77b3e3e22aa53285a9a2a241e6b1237edb486674182d16992b3d6fb36b7b5705c9b7acdd5da398638ca384f72f52862dedd85c4449ef6f WHIRLPOOL 545b4ac1dcca23eede51a9c1e79b05dfbb048046f4919c55054fd7dd28975272e0781156ad65089612e8e8b3e5666c835b27cbd79ff51ae74747a1a1c529ab67
+DIST daphne-1.0-src.tar.gz 4316387 SHA256 b3df3cbb49b3b0d1c2d9f8ab9ae22ef39b1627db09b67a4d10122d754443a588 SHA512 e15e3e86cd03b8eea410eedb667c878f9e2fb044a9bf2cc54e54db641f1c2c6fd99e889cfab308bf972336b577059e13d6cf2a353016ded8e28dae9ddedc0ad4 WHIRLPOOL 6e6be7bcd6beb472881870044d7df36c1493585fd2decdaa70b083fa93338a23b07c93be0fa9634df5c84709d5736579684e5fd663f4122b87f9c0317306948c
+EBUILD daphne-1.0.ebuild 1962 SHA256 8ec90121c3f0f1005fae8ec312de5637696879fe58fc261fe59d62a6b85057a2 SHA512 a337ba37e25cb4792202cec770a76db6475c3a4626a51963d5ceda1bb539c20606f7f35c64cbe0030373c93b0bb9586c3446cba33a8660bd32c91be988ac235c WHIRLPOOL c5916bb87213f8be2f8af8673403051bcf83171fe4edf64cd5bb5bac27f5ea28af221526713f3cc437bdefe86e62769cb2a64372c3134c62a7295e042c707ac5
+MISC ChangeLog 2673 SHA256 a8a7eef1b72c98313c49925971f2c9a458436f0e943956427c6ff8240aec6023 SHA512 c8ef8493b3101b9772558b341252a1297920fb4522b15d0edd7537eae119185701fa657e6aeabe84f64111d3bc45f82cc2f9c7ccc2bb0401d10d0ba7c5a17f4f WHIRLPOOL c9307eb4129fe602d30237d2d5e0c1daac44ef450866ac80ad9ba5a15134f5c9c304bed6d83c878994d0b19c64340ba73ce3302a7d8c8cf96beea3f7731ccca2
+MISC ChangeLog-2015 3099 SHA256 8d1053bd899fc090b9c683b95501d042336d1b5562c3a4bd89d41292ea914478 SHA512 d5ab1fdad48c4c00776a416999ce6cdf3a4f5650d57ef116ae3caad15287f41aaf74424ae7451dcee1c9835efea9be2d04cd294b0e05a5e4fb249b4752128b44 WHIRLPOOL b7464a051cb86372645cdd313b1c5fe5efeb3446477ab5054fc288be31e92c1c32a067e345b68f80572494e21d19ac60683a2752de2e2f3b1749bc8830c2022b
+MISC metadata.xml 249 SHA256 943b9ce0cd072229b43569ab668dd7ec741d9dfefd942c8921dabd4490b27b0c SHA512 895577c3a805c40581da03057b94e3f28f05f23012bf350c1e3575847d1a0fe40bb044a46f909012a200d991a400f6389358a60e9c2b5bef0da01fb26f846118 WHIRLPOOL b10e21575c78e201a652c8582cd16e3f7c86b13dd20a30f4cea44066fb139440b3c186147dbaae83478f11a20b6f457a99c8b29ee1239a4caaa21eee01250088
diff --git a/games-emulation/daphne/daphne-1.0.ebuild b/games-emulation/daphne/daphne-1.0.ebuild
new file mode 100644
index 000000000000..871b5b4ac8a1
--- /dev/null
+++ b/games-emulation/daphne/daphne-1.0.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils toolchain-funcs games
+
+DESCRIPTION="Laserdisc Arcade Game Emulator"
+HOMEPAGE="http://www.daphne-emu.com/"
+SRC_URI="http://www.daphne-emu.com/download/${P}-src.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND="media-libs/libogg
+ media-libs/libvorbis
+ sys-libs/zlib
+ media-libs/libsdl[joystick,video]
+ media-libs/sdl-mixer
+ media-libs/libmpeg2
+ virtual/opengl
+ media-libs/glew"
+RDEPEND=${DEPEND}
+
+S=${WORKDIR}/v_1_0/src
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-vorbisfilefix.patch \
+ "${FILESDIR}"/${P}-typefix.patch \
+ "${FILESDIR}"/${P}-gcc43.patch \
+ "${FILESDIR}"/${P}-ldflags.patch \
+ "${FILESDIR}"/${P}-zlib.patch \
+ "${FILESDIR}"/${P}-underlink.patch \
+ "${FILESDIR}"/${P}-system-lmpeg2.patch
+
+ sed -i "/m_appdir =/s:\.:${GAMES_DATADIR}/${PN}:" \
+ io/homedir.cpp || die
+ sed -i "s:pics/:${GAMES_DATADIR}/${PN}/&:" \
+ video/video.cpp || die
+ sed -i "s:sound/:${GAMES_DATADIR}/${PN}/&:" \
+ sound/sound.cpp || die
+ sed -i "s:./lib:$(games_get_libdir)/${PN}/lib:" \
+ io/dll.h || die
+
+ sed \
+ -e "s:-DNATIVE_CPU_X86::" \
+ -e "s:-DUSE_MMX::" \
+ -e '/export USE_MMX = 1/s:^:# :' \
+ Makefile.vars.linux_x86 >Makefile.vars || die
+}
+
+src_configure() {
+ cd vldp2
+ egamesconf --disable-accel-detect
+}
+
+src_compile() {
+ local archflags
+
+ if use x86; then
+ archflags="-DNATIVE_CPU_X86 -DMMX_RGB2YUV -DUSE_MMX"
+ export USE_MMX=1
+ else
+ # -fPIC is needed on amd64 but fails on x86.
+ archflags="-fPIC"
+ fi
+
+ emake \
+ CXX=$(tc-getCXX) \
+ DFLAGS="${CXXFLAGS} ${archflags}"
+ emake -C vldp2 \
+ -f Makefile.linux \
+ CC=$(tc-getCC) \
+ DFLAGS="${CFLAGS} ${archflags}"
+}
+
+src_install() {
+ cd ..
+ newgamesbin daphne.bin daphne
+ exeinto "$(games_get_libdir)"/${PN}
+ doexe libvldp2.so
+ insinto "${GAMES_DATADIR}"/${PN}
+ doins -r pics roms sound
+ dodoc doc/*.{ini,txt}
+ dohtml -r doc/*
+ prepgamesdirs
+}
diff --git a/games-emulation/daphne/files/daphne-1.0-gcc43.patch b/games-emulation/daphne/files/daphne-1.0-gcc43.patch
new file mode 100644
index 000000000000..289757d4a50c
--- /dev/null
+++ b/games-emulation/daphne/files/daphne-1.0-gcc43.patch
@@ -0,0 +1,12 @@
+--- Makefile.old 2009-01-19 16:22:07.000000000 +0100
++++ Makefile 2009-01-19 16:22:17.000000000 +0100
+@@ -33,7 +33,7 @@
+ endif
+
+ # Platform specific cflags defined in the Makefile.vars file
+-export CFLAGS = ${PFLAGS} ${DEFINE_STATIC_VLDP} -Wall -Winline -Werror
++export CFLAGS = ${PFLAGS} ${DEFINE_STATIC_VLDP} -Wall -Winline
+
+ OBJS = ldp-out/*.o cpu/*.o game/*.o io/*.o timer/*.o ldp-in/*.o video/*.o \
+ sound/*.o daphne.o cpu/x86/*.o scoreboard/*.o ${VLDP_OBJS}
+
diff --git a/games-emulation/daphne/files/daphne-1.0-ldflags.patch b/games-emulation/daphne/files/daphne-1.0-ldflags.patch
new file mode 100644
index 000000000000..a5096a5b3927
--- /dev/null
+++ b/games-emulation/daphne/files/daphne-1.0-ldflags.patch
@@ -0,0 +1,22 @@
+--- Makefile.old 2010-10-05 08:48:46.000000000 +0200
++++ Makefile 2010-10-05 08:49:10.000000000 +0200
+@@ -43,7 +43,7 @@
+ .SUFFIXES: .cpp
+
+ all: ${LOCAL_OBJS} sub
+- ${CXX} ${DFLAGS} ${OBJS} -o ${EXE} ${LIBS}
++ ${CXX} $(LDFLAGS) ${DFLAGS} ${OBJS} -o ${EXE} ${LIBS}
+
+ sub:
+ cd ldp-out && $(MAKE)
+--- vldp2/Makefile.linux.old 2010-10-05 09:29:52.000000000 +0200
++++ vldp2/Makefile.linux 2010-10-05 09:30:13.000000000 +0200
+@@ -33,7 +33,7 @@
+ all: vldp2
+
+ vldp2: ${OBJS}
+- ${CC} -shared -o ${LIBNAME} ${OBJS} ${LIBS}
++ ${CC} $(LDFLAGS) -shared -o ${LIBNAME} ${OBJS} ${LIBS}
+ cp ${LIBNAME} ../../.
+
+ clean:
diff --git a/games-emulation/daphne/files/daphne-1.0-system-lmpeg2.patch b/games-emulation/daphne/files/daphne-1.0-system-lmpeg2.patch
new file mode 100644
index 000000000000..7eed630d13f7
--- /dev/null
+++ b/games-emulation/daphne/files/daphne-1.0-system-lmpeg2.patch
@@ -0,0 +1,41 @@
+diff -ur v_1_0.old/src/vldp2/Makefile.am v_1_0/src/vldp2/Makefile.am
+--- v_1_0.old/src/vldp2/Makefile.am 2009-12-29 18:04:15.000000000 +0200
++++ v_1_0/src/vldp2/Makefile.am 2009-12-29 18:10:42.000000000 +0200
+@@ -1,3 +1,3 @@
+-SUBDIRS = autotools include libmpeg2 libvo doc src vc++ test
++SUBDIRS = autotools
+
+ EXTRA_DIST = bootstrap
+diff -ur v_1_0.old/src/vldp2/Makefile.in v_1_0/src/vldp2/Makefile.in
+--- v_1_0.old/src/vldp2/Makefile.in 2009-12-29 18:04:15.000000000 +0200
++++ v_1_0/src/vldp2/Makefile.in 2009-12-29 18:10:51.000000000 +0200
+@@ -128,7 +128,7 @@
+ sharedstatedir = @sharedstatedir@
+ sysconfdir = @sysconfdir@
+ target_alias = @target_alias@
+-SUBDIRS = autotools include libmpeg2 libvo doc src vc++ test
++SUBDIRS = autotools
+
+ EXTRA_DIST = bootstrap
+ subdir = .
+diff -ur v_1_0.old/src/vldp2/Makefile.linux v_1_0/src/vldp2/Makefile.linux
+--- v_1_0.old/src/vldp2/Makefile.linux 2009-12-29 18:04:15.000000000 +0200
++++ v_1_0/src/vldp2/Makefile.linux 2009-12-29 18:13:12.000000000 +0200
+@@ -14,14 +14,9 @@
+ DFLAGS = -O3 -march=i686 -fomit-frame-pointer -funroll-loops
+
+ CFLAGS = ${DFLAGS} `sdl-config --cflags` -I./include
+-LIBS = `sdl-config --libs`
++LIBS = `sdl-config --libs` -lmpeg2
+
+-OBJS = vldp/vldp.o vldp/vldp_internal.o vldp/mpegscan.o \
+- libmpeg2/cpu_accel.o libmpeg2/alloc.o libmpeg2/cpu_state.o \
+- libmpeg2/decode.o libmpeg2/header.o libmpeg2/motion_comp.o \
+- libmpeg2/idct.o libmpeg2/idct_mmx.o libmpeg2/motion_comp_mmx.o \
+- libmpeg2/slice.o \
+- libvo/video_out.o libvo/video_out_null.o
++OBJS = vldp/vldp.o vldp/vldp_internal.o vldp/mpegscan.o
+
+ LIBNAME = libvldp2.so
+
+
diff --git a/games-emulation/daphne/files/daphne-1.0-typefix.patch b/games-emulation/daphne/files/daphne-1.0-typefix.patch
new file mode 100644
index 000000000000..f47511a0cd03
--- /dev/null
+++ b/games-emulation/daphne/files/daphne-1.0-typefix.patch
@@ -0,0 +1,47 @@
+amd64 does not like int pointers
+
+diff -ruN v_1_0.orig/src/ldp-in/ldv1000.cpp v_1_0/src/ldp-in/ldv1000.cpp
+--- v_1_0.orig/src/ldp-in/ldv1000.cpp 2008-01-29 18:04:34.000000000 +0100
++++ v_1_0/src/ldp-in/ldv1000.cpp 2008-09-19 14:29:40.000000000 +0200
+@@ -607,9 +607,9 @@
+
+ void ldv1000_event_callback(void *eventType)
+ {
+- g_ldv1000_last_event = (unsigned int) eventType;
++ g_ldv1000_last_event = (unsigned long) eventType;
+
+- switch ((unsigned int) eventType)
++ switch ((unsigned long) eventType)
+ {
+ case LDV1000_EVENT_VSYNC_END:
+ #ifdef DEBUG
+diff -ruN v_1_0.orig/src/vldp2/libvo/video_out_null.c v_1_0/src/vldp2/libvo/video_out_null.c
+--- v_1_0.orig/src/vldp2/libvo/video_out_null.c 2008-01-29 18:04:43.000000000 +0100
++++ v_1_0/src/vldp2/libvo/video_out_null.c 2008-09-19 14:30:03.000000000 +0200
+@@ -82,7 +82,7 @@
+ // this is the potentially expensive callback that gets the hardware overlay
+ // ready to be displayed, so we do this before we sleep
+ // NOTE : if this callback fails, we don't want to display the frame due to double buffering considerations
+- if (g_in_info->prepare_frame(&g_yuv_buf[(int) id]))
++ if (g_in_info->prepare_frame(&g_yuv_buf[(long) id]))
+ {
+ #ifndef VLDP_BENCHMARK
+
+@@ -133,7 +133,7 @@
+ #endif
+ // draw the frame
+ // we are using the pointer 'id' as an index, kind of risky, but convenient :)
+- g_in_info->display_frame(&g_yuv_buf[(int) id]);
++ g_in_info->display_frame(&g_yuv_buf[(long) id]);
+ #ifndef VLDP_BENCHMARK
+ } // end if we didn't get a new command to interrupt the frame being displayed
+ #endif
+@@ -272,7 +272,7 @@
+ uint8_t ** buf, void ** id)
+ {
+ static buffer_index = 0;
+- *id = (int *) buffer_index; // THIS IS A LITTLE TRICKY
++ *id = (long *) buffer_index; // THIS IS A LITTLE TRICKY
+ // We are setting an integer value to a pointer ...
+ // Because it is convenient to let the pointer hold the value of this integer for us
+ // Hopefully it doesn't cause any trouble later ;)
diff --git a/games-emulation/daphne/files/daphne-1.0-underlink.patch b/games-emulation/daphne/files/daphne-1.0-underlink.patch
new file mode 100644
index 000000000000..f04f3f6c5fd1
--- /dev/null
+++ b/games-emulation/daphne/files/daphne-1.0-underlink.patch
@@ -0,0 +1,8 @@
+--- Makefile.vars.linux_x86.old 2011-09-21 12:27:42.480566742 +0200
++++ Makefile.vars.linux_x86 2011-09-21 12:27:57.490564959 +0200
+@@ -24,4 +24,4 @@
+ -DUSE_MMX -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DUSE_OPENGL
+
+ # platform-specific lib flags
+-LIBS = `sdl-config --libs` -ldl -lz -logg -lvorbis -lvorbisfile -lGLEW
++LIBS = `sdl-config --libs` -ldl -lz -logg -lvorbis -lvorbisfile -lGLEW -lGL -lm
diff --git a/games-emulation/daphne/files/daphne-1.0-vorbisfilefix.patch b/games-emulation/daphne/files/daphne-1.0-vorbisfilefix.patch
new file mode 100644
index 000000000000..49eb1aaab62d
--- /dev/null
+++ b/games-emulation/daphne/files/daphne-1.0-vorbisfilefix.patch
@@ -0,0 +1,14 @@
+Fix no sound issue with >=media-libs/libvorbis-1.2.0
+
+diff -ruN v_1_0.orig/src/ldp-out/ldp-vldp-audio.cpp v_1_0/src/ldp-out/ldp-vldp-audio.cpp
+--- v_1_0.orig/src/ldp-out/ldp-vldp-audio.cpp 2008-01-29 18:04:07.000000000 +0100
++++ v_1_0/src/ldp-out/ldp-vldp-audio.cpp 2008-09-19 13:43:10.000000000 +0200
+@@ -146,7 +146,7 @@
+ switch (whence)
+ {
+ case SEEK_SET:
+- if (offset < g_audio_filesize)
++ if (offset <= g_audio_filesize)
+ {
+ // make sure offset is positive so we don't get into trouble
+ if (offset >= 0)
diff --git a/games-emulation/daphne/files/daphne-1.0-zlib.patch b/games-emulation/daphne/files/daphne-1.0-zlib.patch
new file mode 100644
index 000000000000..dbae7b31fe9c
--- /dev/null
+++ b/games-emulation/daphne/files/daphne-1.0-zlib.patch
@@ -0,0 +1,13 @@
+--- io/unzip.h.old 2011-09-21 12:13:28.911668053 +0200
++++ io/unzip.h 2011-09-21 12:14:53.074658064 +0200
+@@ -57,6 +57,10 @@
+ #include "zlib.h"
+ #endif
+
++#ifndef OF
++#define OF _Z_OF
++#endif
++
+ #if defined(STRICTUNZIP) || defined(STRICTZIPUNZIP)
+ /* like the STRICT of WIN32, we define a pointer that cannot be converted
+ from (void*) without cast */
diff --git a/games-emulation/daphne/metadata.xml b/games-emulation/daphne/metadata.xml
new file mode 100644
index 000000000000..78274e0fa550
--- /dev/null
+++ b/games-emulation/daphne/metadata.xml
@@ -0,0 +1,8 @@
+<?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>
+</pkgmetadata>