summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulian Ospald <hasufell@gentoo.org>2014-02-23 03:27:16 +0000
committerJulian Ospald <hasufell@gentoo.org>2014-02-23 03:27:16 +0000
commit4cf1864862b7584da182f19f7a83f8c1acdf6a83 (patch)
treee1e07b30dcd8067b933d97d34d94f52b4609e542 /games-emulation/higan
parentVersion bump (diff)
downloadgentoo-2-4cf1864862b7584da182f19f7a83f8c1acdf6a83.tar.gz
gentoo-2-4cf1864862b7584da182f19f7a83f8c1acdf6a83.tar.bz2
gentoo-2-4cf1864862b7584da182f19f7a83f8c1acdf6a83.zip
version bump wrt #501520
(Portage version: 2.2.8-r1/cvs/Linux x86_64, signed Manifest commit with key E73C35B3)
Diffstat (limited to 'games-emulation/higan')
-rw-r--r--games-emulation/higan/ChangeLog10
-rw-r--r--games-emulation/higan/files/higan-094-QA.patch90
-rw-r--r--games-emulation/higan/higan-094.ebuild155
-rw-r--r--games-emulation/higan/metadata.xml1
4 files changed, 254 insertions, 2 deletions
diff --git a/games-emulation/higan/ChangeLog b/games-emulation/higan/ChangeLog
index ab13f5b1e5fb..70907969654f 100644
--- a/games-emulation/higan/ChangeLog
+++ b/games-emulation/higan/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for games-emulation/higan
-# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-emulation/higan/ChangeLog,v 1.3 2013/08/28 11:14:00 ago Exp $
+# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/higan/ChangeLog,v 1.4 2014/02/23 03:27:16 hasufell Exp $
+
+*higan-094 (23 Feb 2014)
+
+ 23 Feb 2014; Julian Ospald <hasufell@gentoo.org> +higan-094.ebuild,
+ +files/higan-094-QA.patch, metadata.xml:
+ version bump wrt #501520
28 Aug 2013; Agostino Sarubbo <ago@gentoo.org> higan-092.ebuild:
Stable for x86, wrt bug #480788
diff --git a/games-emulation/higan/files/higan-094-QA.patch b/games-emulation/higan/files/higan-094-QA.patch
new file mode 100644
index 000000000000..69aaedf3d3de
--- /dev/null
+++ b/games-emulation/higan/files/higan-094-QA.patch
@@ -0,0 +1,90 @@
+From: Julian Ospald <hasufell@gentoo.org>
+Date: Sun Jun 9 10:23:38 UTC 2013
+Subject:
+
+--- a/Makefile
++++ b/Makefile
+@@ -13,8 +13,8 @@
+ # console := true
+
+ # compiler
+-flags += -I. -O3 -fomit-frame-pointer
+-link +=
++flags += -I.
++link += $(LDFLAGS)
+ objects := libco
+
+ # profile-guided optimization mode
+@@ -41,14 +41,12 @@
+ endif
+ link += -s -mthreads -luuid -lkernel32 -luser32 -lgdi32 -lcomctl32 -lcomdlg32 -lshell32 -lole32 -lws2_32
+ link += -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc
+-else ifeq ($(platform),macosx)
+- flags += -march=native
+ else ifeq ($(platform),linux)
+- flags += -march=native
+- link += -s -Wl,-export-dynamic -lX11 -lXext -ldl
++ flags +=
++ link += -Wl,-export-dynamic -lX11 -lXext -ldl
+ else ifeq ($(platform),bsd)
+- flags += -march=native
+- link += -s -Wl,-export-dynamic -lX11 -lXext
++ flags +=
++ link += -Wl,-export-dynamic -lX11 -lXext
+ else
+ $(error unsupported platform.)
+ endif
+@@ -59,9 +57,9 @@
+ compile = \
+ $(strip \
+ $(if $(filter %.c,$<), \
+- $(compiler) $(cflags) $(flags) $1 -c $< -o $@, \
++ $(compiler) $(cflags) $(flags) $(CFLAGS) $1 -c $< -o $@, \
+ $(if $(filter %.cpp,$<), \
+- $(compiler) $(cppflags) $(flags) $1 -c $< -o $@ \
++ $(compiler) $(cppflags) $(flags) $(CXXFLAGS) $1 -c $< -o $@ \
+ ) \
+ ) \
+ )
+--- a/target-ethos/Makefile
++++ b/target-ethos/Makefile
+@@ -55,10 +55,10 @@
+ obj/ui-tools.o: $(ui)/tools/tools.cpp $(call rwildcard,$(ui)/)
+
+ obj/ruby.o: ruby/ruby.cpp $(call rwildcard,ruby/*)
+- $(compiler) $(rubyflags) -c $< -o $@
++ $(compiler) $(rubyflags) $(CXXFLAGS) -c $< -o $@
+
+ obj/phoenix.o: phoenix/phoenix.cpp $(call rwildcard,phoenix/*)
+- $(compiler) $(phoenixflags) -c $< -o $@
++ $(compiler) $(phoenixflags) $(CXXFLAGS) -c $< -o $@
+
+ obj/resource.o: $(ui)/resource.rc
+ ifeq ($(arch),win32)
+@@ -82,7 +82,7 @@
+ sips -s format icns data/higan.png --out out/$(name).app/Contents/Resources/higan.icns
+ $(strip $(compiler) -o out/$(name).app/Contents/MacOS/$(name) $(objects) $(link))
+ else
+- $(strip $(compiler) -o out/$(name) $(objects) $(link))
++ $(strip $(CXX) $(CXXFLAGS) -o out/$(name) $(objects) $(link))
+ endif
+
+ resource:
+--- a/nall/Makefile
++++ b/nall/Makefile
+@@ -53,11 +53,11 @@
+ link :=
+ endif
+
+- cflags := -x c -std=c99
+- objcflags := -x objective-c -std=c99
+- cppflags := -x c++ -std=c++11
+- objcppflags := -x objective-c++ -std=c++11
+ endif
++cflags := -x c -std=c99
++objcflags := -x objective-c -std=c99
++cppflags := -x c++ -std=c++11
++objcppflags := -x objective-c++ -std=c++11
+
+ # cross-compilation support
+ ifeq ($(arch),x86)
diff --git a/games-emulation/higan/higan-094.ebuild b/games-emulation/higan/higan-094.ebuild
new file mode 100644
index 000000000000..27d63906560b
--- /dev/null
+++ b/games-emulation/higan/higan-094.ebuild
@@ -0,0 +1,155 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/higan/higan-094.ebuild,v 1.1 2014/02/23 03:27:16 hasufell Exp $
+
+EAPI=5
+
+inherit eutils gnome2-utils toolchain-funcs games
+
+MY_P=${PN}_v${PV}-source
+
+DESCRIPTION="A Nintendo multi-system emulator formerly known as bsnes"
+HOMEPAGE="http://byuu.org/higan/ https://code.google.com/p/higan/"
+SRC_URI="http://byuu.org/files/${MY_P}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="ao +alsa openal opengl oss profile_accuracy +profile_balanced profile_performance pulseaudio qt4 +sdl udev xv"
+REQUIRED_USE="|| ( ao openal alsa pulseaudio oss )
+ || ( xv opengl sdl )
+ || ( profile_accuracy profile_balanced profile_performance )"
+
+RDEPEND="
+ x11-libs/libX11
+ x11-libs/libXext
+ ao? ( media-libs/libao )
+ openal? ( media-libs/openal )
+ alsa? ( media-libs/alsa-lib )
+ pulseaudio? ( media-sound/pulseaudio )
+ xv? ( x11-libs/libXv )
+ opengl? ( virtual/opengl )
+ sdl? ( media-libs/libsdl[X,joystick,video] )
+ udev? ( virtual/udev )
+ !qt4? ( x11-libs/gtk+:2 )
+ qt4? ( >=dev-qt/qtgui-4.5:4 )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S=${WORKDIR}/${MY_P}
+
+disable_module() {
+ sed -i \
+ -e "s|$1\b||" \
+ "${S}"/target-ethos/Makefile || die
+}
+
+src_prepare() {
+ local i
+
+ epatch "${FILESDIR}"/${P}-QA.patch
+
+ sed -i \
+ -e "/handle/s#/usr/local/lib#/usr/$(get_libdir)#" \
+ nall/dl.hpp || die "fixing libdir failed!"
+
+ # audio modules
+ use ao || disable_module audio.ao
+ use openal || disable_module audio.openal
+ use pulseaudio || { disable_module audio.pulseaudio
+ disable_module audio.pulseaudiosimple ;}
+ use oss || disable_module audio.oss
+ use alsa || disable_module audio.alsa
+
+ # video modules
+ use opengl || disable_module video.glx
+ use xv || disable_module video.xv
+ use sdl || disable_module video.sdl
+
+ # input modules
+ use sdl || disable_module input.sdl
+ use udev || disable_module input.udev
+
+ # regenerate .moc if needed
+ if use qt4; then
+ cd phoenix/qt || die
+ moc -i -I. -o platform.moc platform.moc.hpp || die
+ fi
+
+ for i in profile_accuracy profile_balanced profile_performance ; do
+ if use ${i} ; then
+ cp -dRP "${S}" "${S}_${i}" || die
+ fi
+ done
+}
+
+src_compile() {
+ local mytoolkit i
+
+ if use qt4; then
+ mytoolkit="qt"
+ else
+ mytoolkit="gtk"
+ fi
+
+ for i in profile_accuracy profile_balanced profile_performance ; do
+ if use ${i} ; then
+ cd "${S}_${i}" || die
+ emake \
+ platform="linux" \
+ compiler="$(tc-getCXX)" \
+ profile="${i#profile_}" \
+ phoenix="${mytoolkit}"
+
+ sed \
+ -e "s:%GAMES_DATADIR%:${GAMES_DATADIR}:" \
+ < "${FILESDIR}"/${PN}-wrapper \
+ > out/${PN}-wrapper || die "generating wrapper failed!"
+ fi
+ done
+}
+
+src_install() {
+ local i
+
+ for i in profile_accuracy profile_balanced profile_performance ; do
+ if use ${i} ; then
+ # install higan
+ newgamesbin "${S}_${i}"/out/${PN} ${PN}-${i#profile_}.bin
+ newgamesbin "${S}_${i}"/out/${PN}-wrapper ${PN}-${i#profile_}
+ make_desktop_entry "${PN}-${i#profile_}" "${PN} (${i#profile_})"
+ fi
+ done
+
+ # copy home directory stuff to a global location
+ insinto "${GAMES_DATADIR}"/${PN}
+ doins -r data/cheats.bml profile/*
+
+ # install shaders
+ if use opengl; then
+ insinto "${GAMES_DATADIR}/${PN}/Video Shaders"
+ doins -r shaders/*.shader
+ fi
+
+ doicon -s 48 data/${PN}.png
+
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ elog "optional dependencies:"
+ elog " dev-games/higan-ananke (extra rom load options)"
+ elog " games-util/higan-purify (Rom purifier)"
+
+ games_pkg_postinst
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/games-emulation/higan/metadata.xml b/games-emulation/higan/metadata.xml
index c9925055ecc2..11d9cd73cae0 100644
--- a/games-emulation/higan/metadata.xml
+++ b/games-emulation/higan/metadata.xml
@@ -13,6 +13,7 @@
Compile a binary with balanced optimization</flag>
<flag name='profile_performance'>
Compile a binary optimized for performance</flag>
+ <flag name='udev'>Enable udev based input</flag>
</use>
</pkgmetadata>