summaryrefslogtreecommitdiff
path: root/games-emulation/snes9x/snes9x-1.56.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'games-emulation/snes9x/snes9x-1.56.ebuild')
-rw-r--r--games-emulation/snes9x/snes9x-1.56.ebuild137
1 files changed, 137 insertions, 0 deletions
diff --git a/games-emulation/snes9x/snes9x-1.56.ebuild b/games-emulation/snes9x/snes9x-1.56.ebuild
new file mode 100644
index 000000000000..652a1c859215
--- /dev/null
+++ b/games-emulation/snes9x/snes9x-1.56.ebuild
@@ -0,0 +1,137 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools flag-o-matic gnome2-utils xdg-utils
+
+DESCRIPTION="Super Nintendo Entertainment System (SNES) emulator"
+HOMEPAGE="https://github.com/snes9xgit/snes9x"
+SRC_URI="https://github.com/snes9xgit/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Snes9x GPL-2 GPL-2+ LGPL-2.1 LGPL-2.1+ ISC MIT ZLIB Info-ZIP"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~x86 ~x86-fbsd"
+IUSE="alsa debug gtk joystick multilib netplay nls opengl oss png pulseaudio portaudio xinerama +xv"
+RESTRICT="bindist"
+
+RDEPEND="
+ sys-libs/zlib:=[minizip]
+ x11-libs/libX11
+ x11-libs/libXext
+ png? ( media-libs/libpng:0= )
+ gtk? (
+ dev-libs/glib:2
+ dev-libs/libxml2
+ >=x11-libs/gtk+-3.0:3
+ x11-libs/libXrandr
+ x11-misc/xdg-utils
+ alsa? ( media-libs/alsa-lib )
+ joystick? ( media-libs/libsdl2[joystick] )
+ opengl? (
+ media-libs/libepoxy
+ virtual/opengl
+ )
+ portaudio? ( >=media-libs/portaudio-19_pre )
+ pulseaudio? ( media-sound/pulseaudio )
+ xv? ( x11-libs/libXv )
+ )
+ xinerama? ( x11-libs/libXinerama )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ x11-base/xorg-proto
+ nls? ( dev-util/intltool )"
+
+S="${WORKDIR}/${P}/unix"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.53-cross-compile.patch
+ "${FILESDIR}"/${PN}-1.56-build-system.patch
+)
+
+src_prepare() {
+ cd "${WORKDIR}"/${P} || die
+ rm -r unzip || die
+ default
+ cd unix || die
+ eautoreconf
+ if use gtk; then
+ cd ../gtk || die
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ append-ldflags -Wl,-z,noexecstack
+
+ # build breaks when zlib/zip support is disabled
+ local myeconfargs=(
+ --enable-gzip
+ --enable-zip
+ --with-system-zip
+ $(use_enable joystick gamepad)
+ $(use_enable debug debugger)
+ $(use_enable netplay)
+ $(use_enable png screenshot)
+ $(use_enable xinerama)
+ )
+ econf "${myeconfargs[@]}"
+
+ if use gtk; then
+ cd ../gtk || die
+ myeconfargs=(
+ --with-gtk3
+ --with-zlib
+ --with-system-zip
+ --without-gtk2
+ $(use_enable nls)
+ $(use_with opengl)
+ $(use_with joystick)
+ $(use_with xv)
+ $(use_with netplay)
+ $(use_with alsa)
+ $(use_with oss)
+ $(use_with pulseaudio)
+ $(use_with portaudio)
+ $(use_with png screenshot)
+ )
+ econf "${myeconfargs[@]}"
+ fi
+}
+
+src_compile() {
+ emake
+ use gtk && emake -C ../gtk
+}
+
+src_install() {
+ dobin ${PN}
+
+ dodoc ../docs/{snes9x.conf.default,{changes,control-inputs,controls,snapshots}.txt}
+
+ if use gtk; then
+ emake -C ../gtk DESTDIR="${D}" install
+ dodoc ../gtk/{AUTHORS,doc/README}
+ fi
+
+ docinto html
+ dodoc {.,..}/docs/*.html
+}
+
+pkg_preinst() {
+ use gtk && gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ if use gtk ; then
+ gnome2_icon_cache_update
+ xdg_desktop_database_update
+ fi
+}
+
+pkg_postrm() {
+ if use gtk ; then
+ gnome2_icon_cache_update
+ xdg_desktop_database_update
+ fi
+}