# Copyright 1999-2008 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ inherit eutils flag-o-matic games MY_P="Mupen64Plus-1-4-1-src" DESCRIPTION="A fork of Mupen64 Nintendo 64 (N64) emulator" HOMEPAGE="http://code.google.com/p/mupen64plus/" SRC_URI="http://mupen64plus.googlecode.com/files/${MY_P}.zip" LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="gtk kde4 lirc samplerate vcr custom-cflags" # GTK is currently required by plugins even if no GUI support is enabled RDEPEND="virtual/opengl media-libs/libsdl media-libs/sdl-ttf media-libs/libpng media-libs/freetype sys-libs/zlib >=x11-libs/gtk+-2 kde4? ( >=kde-base/kdelibs-4 ) samplerate? ( media-libs/libsamplerate ) lirc? ( app-misc/lirc )" DEPEND="${RDEPEND} dev-lang/yasm dev-util/pkgconfig" S=${WORKDIR}/${MY_P} pkg_setup() { games_pkg_setup } src_unpack() { unpack ${A} cd ${S} sed -i \ -e "s:/share/mupen64plus/:/mupen64plus/:" \ main/main.c || die "sed failed" sed -i \ -e "s:{PREFIX}/bin:{PREFIX}${GAMES_BINDIR}:" \ -e "s:{PREFIX}/share/mupen64plus:{PREFIX}${GAMES_DATADIR}/${PN}:" \ install.sh || die "sed failed" MARCH=`get-flag "-march"` sed -i -e "s:\$\(STRIP\)\ \$\@::" Makefile sed -i -e "s:-march=athlon64\|-march=i686:${MARCH}:" pre.mk glide64/Makefile if use custom-cflags; then sed -i -e "s:CFLAGS\ =\ -pipe\ -O3\ -ffast-math\ -funroll-loops\ -fexpensive-optimizations\ -fno-strict-aliasing::" pre.mk sed -i -e "s:-ffast-math\ -funroll-loops:${CFLAGS}:" glide64/Makefile fi if use lirc; then LIRC="LIRC=1" else LIRC="LIRC=0" fi if use vcr; then VCR="VCR=1" else VCR="VCR=0" fi # Only one frontend can be built - KDE4 or GTK2; how to determine priority? # Currently, KDE4 takes priority if enabled if use gtk; then GUI="GUI=GTK2" elif use kde4; then GUI="GUI=QT4" else GUI="GUI=NONE" fi } src_compile() { make PREFIX=${GAMES_DATADIR} ${LIRC} ${VCR} ${GUI} all || die "make failed" } src_install() { ./install.sh ${D} || or die "install.sh failed" newicon icons/logo.png "${PN}.png" if use gtk || use kde4; then make_desktop_entry "${PN}" Mupen64Plus fi dodoc README RELEASE TODO prepgamesdirs } pkg_postinst() { games_pkg_postinst if use lirc; then echo elog "For lirc configuration see" elog "http://code.google.com/p/mupen64plus/wiki/LIRC" echo fi }