blob: 0ae18a2563e4f8a4f5c61fbde3da2b58a59b12fd (
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="3"
WX_GTK_VER="2.8"
inherit cmake-utils eutils flag-o-matic games git wxwidgets
MY_PV="${PV/9999_p/}"
DESCRIPTION="Free. open source emulator for Nintendo GameCube and Wii"
HOMEPAGE="http://www.dolphin-emu.com/"
SRC_URI=""
EGIT_REPO_URI="https://code.google.com/p/dolphin-emu/"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86 ~amd64 ~ppc ~ppc64"
IUSE="alsa ao bluetooth doc encode +lzo openal opengl portaudio pulseaudio +wxwidgets +xrandr"
RESTRICT=""
RDEPEND=">=media-libs/glew-1.5
>=media-libs/libsdl-1.2[joystick]
sys-libs/readline
x11-libs/libXext
ao? ( media-libs/libao )
alsa? ( media-libs/alsa-lib )
bluetooth? ( net-wireless/bluez )
encode? ( virtual/ffmpeg[encode] )
lzo? ( dev-libs/lzo )
openal? ( media-libs/openal )
opengl? ( virtual/opengl )
portaudio? ( media-libs/portaudio )
pulseaudio? ( media-sound/pulseaudio )
wxwidgets? ( x11-libs/wxGTK:2.8 )
xrandr? ( x11-libs/libXrandr )"
DEPEND="${RDEPEND}
dev-util/cmake
dev-util/pkgconfig
media-gfx/nvidia-cg-toolkit"
#dev-util/scons
# Configure using scons (deprecated)
#src_prepare() {
# sed -e "s;env\['prefix'\] + '/bin';'${GAMES_BINDIR}';" \
# -e "s;env\['prefix'\] + \"/share/dolphin-emu\";'${GAMES_DATADIR}/${PN}';" \
# -e "s;env\['prefix'\] + '/lib/dolphin-emu';'$(games_get_libdir)/${PN}';" \
# -e "s;env\['prefix'\] + '/lib/;'$(games_get_libdir)/;" \
# -i "${S}/SConstruct" \
# || die "sed path update 1 failed"
#}
#src_prepare() {
# epatch ${FILESDIR}/libav.patch
#}
src_configure() {
# Configure using cmake
mycmakeargs="
-DDOLPHIN_WC_REVISION=${MY_PV}
-DCMAKE_INSTALL_PREFIX=${GAMES_PREFIX}
-Dprefix=${GAMES_PREFIX}
-Ddatadir=${GAMES_DATADIR}/${PN}
-Dplugindir=$(games_get_libdir)/${PN}
$(cmake-utils_use !wxwidgets DISABLE_WX)
$(cmake-utils_use encode ENCODE_FRAMEDUMPS)"
cmake-utils_src_configure
}
src_compile() {
# Build using cmake
cmake-utils_src_make
# Build using scons (deprecated)
# run "scons -h" to get a complete list of options
#local sconsopts=$(echo "${MAKEOPTS}" | sed -ne "/-j/ { s/.*\(-j[[:space:]]*[0-9]\+\).*/\1/; p }")
#scons ${sconsopts} \
# nowx=$(use wxwidgets && echo "false" || echo "true") \
# install=global \
# prefix="/usr" \
# destdir="${D}" \
# shared_glew=true \
# shared_lzo=true \
# shared_sdl=true \
# shared_zlib=true \
# shared_sfml=false \
# shared_soil=false \
# verbose=false \
# || die "scons build failed"
}
src_install() {
# copy files to target installation directory
cmake-utils_src_install
#scons install || die "scons install failed"
# set binary name
local binary="${PN}"
use wxwidgets || binary+="-nogui"
# install documentation as appropriate
cd "${S}"
dodoc Readme.txt
if use doc; then
doins -r docs
fi
# create menu entry for GUI builds
if use wxwidgets; then
doicon Source/Core/DolphinWX/resources/Dolphin.xpm || die
make_desktop_entry "${binary}" "Dolphin" "Dolphin" "Game;Emulator"
fi
prepgamesdirs
}
pkg_postinst() {
echo
if ! use portaudio; then
ewarn "If you need to use your microphone for a game, rebuild with USE=portaudio"
echo
fi
if ! use wxwidgets; then
ewarn "Note: It is not currently possible to configure Dolphin without the GUI."
ewarn "Rebuild with USE=wxwidgets to enable the GUI if needed."
echo
fi
games_pkg_postinst
}
|