summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVicente Olivert Riera <vincent@gentoo.org>2013-03-10 22:07:50 +0100
committerVicente Olivert Riera <vincent@gentoo.org>2013-03-10 22:07:50 +0100
commitcb10c2357b024e05afff8deab4791c168c604f45 (patch)
tree5c2f5597ed27a200fe88adf201b887c40af435ce
parentfix digest (diff)
downloadvincent-cb10c2357b024e05afff8deab4791c168c604f45.tar.gz
vincent-cb10c2357b024e05afff8deab4791c168c604f45.tar.bz2
vincent-cb10c2357b024e05afff8deab4791c168c604f45.zip
new package: games-emulation/dolphin-emu
Package-Manager: portage-2.1.11.52 Manifest-Sign-Key: 5AE9E7B2E9BBCBA8
-rw-r--r--games-emulation/dolphin-emu/Manifest13
-rw-r--r--games-emulation/dolphin-emu/dolphin-emu-3.5.ebuild154
-rw-r--r--games-emulation/dolphin-emu/metadata.xml12
3 files changed, 179 insertions, 0 deletions
diff --git a/games-emulation/dolphin-emu/Manifest b/games-emulation/dolphin-emu/Manifest
new file mode 100644
index 0000000..0dd1481
--- /dev/null
+++ b/games-emulation/dolphin-emu/Manifest
@@ -0,0 +1,13 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+DIST dolphin-3.5-src.zip 28805192 SHA256 b95cb6f487c1f77471c08cfb52bc9844bb2385f0ffd8fb45416b4c5095eb8d9a SHA512 4e607f9ed15c19967382a178c725a015fa8e2db4f624e9b54c50af31bdbae333989be8397cd32d0aa3b5283caf85a67e5529583be4423ada5c6f098ca7c309ef WHIRLPOOL a840f15153eff2edb5f2c75410e6fed3cca7fbffe2eb05bbf6441b914f7b27c6d9ee90de27fb9a773b601c44311828b95e3c597000cf607ff12d1141266e50bc
+EBUILD dolphin-emu-3.5.ebuild 4025 SHA256 8279079d12e24499f382f5f8d4e509e3c54146a7c07bbed339ee77f1ebde7d40 SHA512 03d780d86b003c8f5b55d8904ffcf0af552fa918bc28f6a894bccfa055571478779097df60a44624e5398e1e15cfd266ab3e66321c8fbf4ca530c7522d3abbd5 WHIRLPOOL bcf4140465ffb152b62cca5535c85b70b0bd8db967e48aa08c5a3236bd95d4577ee942566da9be0b6a3a681b53b68aa737c903d095383dfaaabc414736a56895
+MISC metadata.xml 368 SHA256 a808b601f29b8f41b9236bd093f8f61e7e0e4dc8bb9df2583a265707f901e8ac SHA512 b3fa5b729f6d116de20f9fda986c0038a6e9467abded6bf0c8cd044257e3548afc37a548dcacec0799fce013665eda4bbe14b1524e4853a9d998a0ab3331eb8c WHIRLPOOL 2d70629a955d30bcf22e7352dc42e48c70b7717884b0f9bb6bafbf5bfe3c84983448153928b2c38fc5d43d4db306f438b27b3538e2e4f7c5ef64ba5ec7ce94fe
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.19 (GNU/Linux)
+
+iEYEAREIAAYFAlE89iYACgkQWunnsum7y6ibGACfRc7uTMK3MtSfqlPwej65RW88
+MYoAn0/OvuOlPFOsAKwauvn7qfdcH+Gb
+=Oz7v
+-----END PGP SIGNATURE-----
diff --git a/games-emulation/dolphin-emu/dolphin-emu-3.5.ebuild b/games-emulation/dolphin-emu/dolphin-emu-3.5.ebuild
new file mode 100644
index 0000000..761579f
--- /dev/null
+++ b/games-emulation/dolphin-emu/dolphin-emu-3.5.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="5"
+
+WX_GTK_VER="2.9"
+
+#EGIT_REPO_URI="https://code.google.com/p/dolphin-emu/"
+#EGIT_COMMIT="${PV}"
+
+inherit cmake-utils eutils flag-o-matic git-2 pax-utils toolchain-funcs wxwidgets games
+
+DESCRIPTION="Free, open source emulator for Nintendo GameCube and Wii"
+HOMEPAGE="http://www.dolphin-emu.com/"
+SRC_URI="http://dolphin-emu.googlecode.com/files/dolphin-${PV}-src.zip"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# NOTES:
+# - wxWidgets support relies on 2.9 branch, which is currently masked in main tree
+IUSE="alsa ao bluetooth doc encode +lzo openal opengl openmp portaudio pulseaudio wxwidgets"
+
+RDEPEND=">=media-libs/glew-1.5
+ >=media-libs/libsdl-1.2[joystick]
+ <media-libs/libsfml-2.0
+ sys-libs/readline
+ x11-libs/libXext
+ x11-libs/libXrandr
+ ao? ( media-libs/libao )
+ alsa? ( media-libs/alsa-lib )
+ bluetooth? ( net-wireless/bluez )
+ encode? ( media-video/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.9 )"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ virtual/pkgconfig
+ media-gfx/nvidia-cg-toolkit"
+
+S="${WORKDIR}/dolphin-${PV}"
+
+src_unpack() {
+ unpack "dolphin-${PV}-src.zip"
+ cd "${S}"
+}
+
+src_prepare() {
+ # Remove automagic dependencies
+ if use !alsa; then
+ sed -i -e '/^include(FindALSA/d' CMakeLists.txt || die
+ fi
+ if use !ao; then
+ sed -i -e '/^check_lib(AO/d' CMakeLists.txt || die
+ fi
+ if use !bluetooth; then
+ sed -i -e '/^check_lib(BLUEZ/d' CMakeLists.txt || die
+ fi
+ if use !openal; then
+ sed -i -e '/^include(FindOpenAL/d' CMakeLists.txt || die
+ fi
+ if use !portaudio; then
+ sed -i -e '/CMAKE_REQUIRED_LIBRARIES portaudio/d' CMakeLists.txt || die
+ fi
+ if use !pulseaudio; then
+ sed -i -e '/^check_lib(PULSEAUDIO/d' CMakeLists.txt || die
+ fi
+
+ # remove bundled libs, except
+ # - SOIL, which has not public sources now
+ # - Bochs_disasm (do not know what is it)
+ # - CLRun ( some part of OpenCL )
+ mv Externals/SOIL . || die
+ mv Externals/Bochs_disasm . || die
+ mv Externals/CLRun . || die
+ rm -r Externals/* || die 'failed to remove bundled libs'
+ mv Bochs_disasm Externals || die
+ mv CLRun Externals || die
+ mv SOIL Externals || die
+}
+
+src_configure() {
+ # filter problematic compiler flags
+ filter-flags -flto -fwhole-program
+ append-flags -fno-pie
+
+ if $($(tc-getPKG_CONFIG) --exists nvidia-cg-toolkit); then
+ append-flags "$($(tc-getPKG_CONFIG) --cflags nvidia-cg-toolkit)"
+ else
+ append-flags "-I/opt/nvidia-cg-toolkit/include"
+ fi
+
+ if $($(tc-getPKG_CONFIG) --exists nvidia-cg-toolkit); then
+ append-ldflags "$($(tc-getPKG_CONFIG) --libs-only-L nvidia-cg-toolkit)"
+ else
+ append-ldflags "-L/opt/nvidia-cg-toolkit/lib"
+ fi
+
+ local mycmakeargs=(
+ "-DDOLPHIN_WC_REVISION=${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_use openmp OPENMP)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ # set binary name
+ local binary="${PN}"
+ use wxwidgets || binary+="-nogui"
+
+ # install documentation as appropriate
+ 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
+ make_desktop_entry "${PN}" "Dolphin" "Dolphin" "Game;Emulator"
+ fi
+
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ # hardened fix
+ pax-mark -m "${EPREFIX}/usr/games/bin/${PN}"
+
+ if ! use portaudio; then
+ ewarn "If you need to use your microphone for a game, rebuild with USE=portaudio"
+ 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."
+ fi
+
+ games_pkg_postinst
+}
diff --git a/games-emulation/dolphin-emu/metadata.xml b/games-emulation/dolphin-emu/metadata.xml
new file mode 100644
index 0000000..a25a165
--- /dev/null
+++ b/games-emulation/dolphin-emu/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>vincent@gentoo.org</email>
+ <name>Vicente Olivert Riera</name>
+ </maintainer>
+ <longdescription lang="en">
+ Free, open source emulator for Nintendo GameCube and Wii
+ </longdescription>
+</pkgmetadata>
+