summaryrefslogtreecommitdiff
blob: ce1a8f457df6ff82cf42eec0bd72712d85a4f82f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
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
}