diff options
author | Michał Górny <mgorny@gentoo.org> | 2013-12-15 12:07:24 +0000 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2013-12-15 12:07:24 +0000 |
commit | abdd3451d53eb893f86e7408e43e787eba42227c (patch) | |
tree | 40c207ee4b40530b3213acbfdcccc83407f3a10d /games-emulation/mupen64plus-core | |
parent | Mask mupen64plus new dynamic recompiler since it does not work on amd64. (diff) | |
download | gentoo-2-abdd3451d53eb893f86e7408e43e787eba42227c.tar.gz gentoo-2-abdd3451d53eb893f86e7408e43e787eba42227c.tar.bz2 gentoo-2-abdd3451d53eb893f86e7408e43e787eba42227c.zip |
Introduce the core library for mupen64plus-2.0.
(Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key EFB4464E!)
Diffstat (limited to 'games-emulation/mupen64plus-core')
-rw-r--r-- | games-emulation/mupen64plus-core/ChangeLog | 9 | ||||
-rw-r--r-- | games-emulation/mupen64plus-core/metadata.xml | 22 | ||||
-rw-r--r-- | games-emulation/mupen64plus-core/mupen64plus-core-2.0.ebuild | 97 |
3 files changed, 128 insertions, 0 deletions
diff --git a/games-emulation/mupen64plus-core/ChangeLog b/games-emulation/mupen64plus-core/ChangeLog new file mode 100644 index 000000000000..29e2ba0e0b21 --- /dev/null +++ b/games-emulation/mupen64plus-core/ChangeLog @@ -0,0 +1,9 @@ +# ChangeLog for games-emulation/mupen64plus-core +# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/games-emulation/mupen64plus-core/ChangeLog,v 1.1 2013/12/15 12:07:24 mgorny Exp $ + +*mupen64plus-core-2.0 (15 Dec 2013) + + 15 Dec 2013; Michał Górny <mgorny@gentoo.org> +metadata.xml, + +mupen64plus-core-2.0.ebuild: + Introduce the core library for mupen64plus-2.0. diff --git a/games-emulation/mupen64plus-core/metadata.xml b/games-emulation/mupen64plus-core/metadata.xml new file mode 100644 index 000000000000..03105a006bdd --- /dev/null +++ b/games-emulation/mupen64plus-core/metadata.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>games</herd> + <maintainer> + <email>mgorny@gentoo.org</email> + <name>Michał Górny</name> + </maintainer> + <maintainer> + <email>joker@gentoo.org</email> + <name>Christian Birchinger</name> + </maintainer> + <use> + <flag name='new-dynarec'>Enable new experimental dynamic recompiler implementation (only for x86 and arm)</flag> + <flag name='osd'>Overlay emulator messages using on-screen-display</flag> + </use> + <longdescription>Mupen64Plus is a plugin-based N64 emulator for Linux which is capable of accurately playing many games. +Included are four MIPS R4300 CPU emulators, with dynamic recompilers for 32-bit x86 and 64-bit amd64 systems.</longdescription> + <upstream> + <remote-id type="google-code">mupen64plus</remote-id> + </upstream> +</pkgmetadata> diff --git a/games-emulation/mupen64plus-core/mupen64plus-core-2.0.ebuild b/games-emulation/mupen64plus-core/mupen64plus-core-2.0.ebuild new file mode 100644 index 000000000000..1f650845adfe --- /dev/null +++ b/games-emulation/mupen64plus-core/mupen64plus-core-2.0.ebuild @@ -0,0 +1,97 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/games-emulation/mupen64plus-core/mupen64plus-core-2.0.ebuild,v 1.1 2013/12/15 12:07:24 mgorny Exp $ + +EAPI=5 + +MY_P=${PN}-src-${PV} +inherit eutils toolchain-funcs games + +DESCRIPTION="A fork of Mupen64 Nintendo 64 emulator, core library" +HOMEPAGE="http://code.google.com/p/mupen64plus/" +SRC_URI="mirror://bitbucket/richard42/${PN}/downloads/${MY_P}.tar.gz" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0/2" +KEYWORDS="~amd64 ~x86" +IUSE="lirc new-dynarec +osd sse" + +RDEPEND="media-libs/libpng:0= + media-libs/libsdl:0=[joystick,video] + sys-libs/zlib:0=[minizip] + lirc? ( app-misc/lirc:0 ) + osd? ( + media-fonts/ttf-bitstream-vera + media-libs/freetype:2= + virtual/opengl:0= + virtual/glu:0= + ) + !<games-emulation/mupen64plus-2.0" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +S=${WORKDIR}/${MY_P} + +src_compile() { + MAKEARGS=( + # Note: please keep this in sync in all of mupen64plus-* packages + + -C projects/unix + + # this basically means: GNU userspace + UNAME=Linux + + # verbose output + V=1 + + CROSS_COMPILE="${CHOST}-" + CC="$(tc-getCC)" + CXX="$(tc-getCXX)" + PKG_CONFIG="$(tc-getPKG_CONFIG)" + # usual CFLAGS, CXXFLAGS and LDFLAGS are respected + # so we can leave OPTFLAGS empty + OPTFLAGS= + + # paths, some of them are used at compile time + PREFIX=/usr + LIBDIR="$(games_get_libdir)" + SHAREDIR="${GAMES_DATADIR}"/mupen64plus + + # disable unwanted magic + LDCONFIG=: + INSTALL_STRIP_FLAG= + + # Package-specific stuff + + # CROSS_COMPILE causes it to look for ${CHOST}-sdl-config... + SDL_CFLAGS="$($(tc-getPKG_CONFIG) --cflags sdl)" + SDL_LDLIBS="$($(tc-getPKG_CONFIG) --libs sdl)" + + OSD=$(usex osd 1 0) + NO_ASM=$(usex sse 0 1) + LIRC=$(usex lirc 1 0) + # (it does not build) + # DEBUGGER=$(usex debug 1 0) + NEW_DYNAREC=$(usex new-dynarec 1 0) + ) + + use amd64 && MAKEARGS+=( HOST_CPU=x86_64 ) + use x86 && MAKEARGS+=( HOST_CPU=i386 ) + + emake "${MAKEARGS[@]}" all +} + +src_install() { + emake "${MAKEARGS[@]}" DESTDIR="${D}" install + einstalldocs + dodoc -r doc/{emuwiki-api-doc,new_dynarec.txt} + + # replace bundled font with a symlink + # TODO: fix the code to not rely on it + local font_path=${GAMES_DATADIR}/mupen64plus/font.ttf + rm "${D%/}/${font_path}" || die + if use osd; then + dosym /usr/share/fonts/ttf-bitstream-vera/Vera.ttf "${font_path}" + fi + prepgamesdirs +} |